From 7f0a7d3b46438ed96ba77f29fd03054ce94da364 Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 20:42:13 +1000 Subject: [PATCH 01/73] Rewrite base for high availability --- .dockerignore | 2 - .eslintrc.js => .eslintrc.cjs | 0 .github/workflows/codeql-analysis.yml | 62 - .github/workflows/test.yml | 27 - .gitignore | 3 +- Dockerfile | 20 - LICENSE | 661 -- README.md | 618 -- .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 67696 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 80513 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 67426 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 63691 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 41723 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 81045 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 102363 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 102473 bytes .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 67420 bytes .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 59691 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 51540 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 71499 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 75521 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 41772 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 51755 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 30917 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 104078 bytes .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 67695 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 41748 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 59464 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 220069 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 41723 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 41772 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 55512 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 67831 bytes .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 41772 bytes .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 81048 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 47009 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 115192 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 65536 bytes .../system.nodes.db-wal | Bin 0 -> 90998 bytes .../tests.db | Bin 0 -> 65536 bytes .../tests.db-wal | Bin 0 -> 52269 bytes .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 36864 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 0 -> 45056 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 0 -> 8192 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 0 -> 36864 bytes .../system.nodes.db-wal | 0 canhazdata/two/system.nodes.db | Bin 0 -> 65536 bytes canhazdata/two/system.nodes.db-wal | Bin 0 -> 24 bytes canhazdbLogo.svg | 195 - index.js | 1 - lib/actions/http/getAll.js | 67 - lib/actions/http/getOne.js | 56 - lib/actions/http/post.js | 52 - lib/actions/ws/getAll.js | 56 - lib/actions/ws/post.js | 20 - lib/cli.js | 133 +- lib/constants.js | 63 +- lib/controllers/external/get.js | 22 + lib/controllers/external/info.js | 22 + lib/controllers/external/post.js | 34 + lib/controllers/index.js | 26 + lib/controllers/internal/get.js | 32 + lib/controllers/internal/info.js | 22 + lib/controllers/internal/post.js | 27 + lib/createCollectionMetadataUpdater.js | 67 - lib/createHandler.js | 48 + lib/driver/index.js | 198 + lib/handleInvalidRequestBody.js | 9 - lib/httpHandler.js | 402 -- lib/index.js | 328 +- lib/prepareOptions.js | 43 + lib/startRepl.js | 22 + lib/tcpHandler.js | 332 - lib/utils/selectRandomItemsFromArray.js | 10 + lib/utils/waitUntil.js | 13 + lib/wsHandler.js | 118 - package-lock.json | 6148 ++++++++++------- package.json | 65 +- redeploy.sh | 7 - stack.yml | 19 - test/batch.js | 42 - test/collectionMetadata.js | 119 - test/helpers/createTestCluster.js | 55 - test/helpers/createTestServer.js | 50 + test/helpers/httpRequest.js | 11 - test/index.js | 118 +- test/integration.js | 720 -- test/locking.js | 278 - test/notify.js | 214 - test/problems.js | 35 - test/utils/validateAlphaNumericDashDot.js | 19 - test/ws.js | 97 - utils/buildInsertStatement.js | 10 - utils/orderByFields.js | 18 - utils/selectRandomItemFromArray.js | 8 - utils/validateAlphaNumericDashDot.js | 10 - utils/validateQueryOptions.js | 9 - 785 files changed, 4381 insertions(+), 7482 deletions(-) delete mode 100644 .dockerignore rename .eslintrc.js => .eslintrc.cjs (100%) delete mode 100644 .github/workflows/codeql-analysis.yml delete mode 100644 .github/workflows/test.yml delete mode 100644 Dockerfile delete mode 100644 LICENSE delete mode 100644 README.md create mode 100644 canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db create mode 100644 canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db-wal create mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/system.nodes.db create mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/system.nodes.db-wal create mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/tests.db create mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/tests.db-wal create mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/system.nodes.db create mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/system.nodes.db-wal create mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/tests.db create mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/tests.db-wal create mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/system.nodes.db create mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/system.nodes.db-wal create mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db create mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db-wal create mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db create mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db-wal create mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db create mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db-wal create mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/system.nodes.db create mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/system.nodes.db-wal create mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/tests.db create mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/tests.db-wal create mode 100644 canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db create mode 100644 canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db-wal create mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db create mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db-wal create mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/tests.db create mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/tests.db-wal create mode 100644 canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db create mode 100644 canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db-wal create mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/system.nodes.db create mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/system.nodes.db-wal create mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/tests.db create mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/tests.db-wal create mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/system.nodes.db create mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/system.nodes.db-wal create mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db create mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db-wal create mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db create mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db-wal create mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db create mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db-wal create mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db create mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db-wal create mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db create mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db-wal create mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/system.nodes.db create mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/system.nodes.db-wal create mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/tests.db create mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/tests.db-wal create mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db create mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db-wal create mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db create mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db-wal create mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db create mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db-wal create mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/tests.db create mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/tests.db-wal create mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db create mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db-wal create mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db create mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db-wal create mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db create mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db-wal create mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db create mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db-wal create mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db create mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db-wal create mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db create mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db-wal create mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/system.nodes.db create mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/system.nodes.db-wal create mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db create mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db-wal create mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/system.nodes.db create mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/system.nodes.db-wal create mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/tests.db create mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/tests.db-wal create mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/system.nodes.db create mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/system.nodes.db-wal create mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db create mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db-wal create mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db create mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db-wal create mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db create mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db-wal create mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/system.nodes.db create mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/system.nodes.db-wal create mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/tests.db create mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/tests.db-wal create mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db create mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db-wal create mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db create mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db-wal create mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/system.nodes.db create mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/system.nodes.db-wal create mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db create mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db-wal create mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db create mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db-wal create mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db create mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db-wal create mode 100644 canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db create mode 100644 canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db-wal create mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db create mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db-wal create mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/tests.db create mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/tests.db-wal create mode 100644 canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db create mode 100644 canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db-wal create mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db create mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db-wal create mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db create mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db-wal create mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db create mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db-wal create mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db create mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db-wal create mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db create mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db-wal create mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db create mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db-wal create mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/system.nodes.db create mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/system.nodes.db-wal create mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/tests.db create mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/tests.db-wal create mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/system.nodes.db create mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/system.nodes.db-wal create mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db create mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db-wal create mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db create mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db-wal create mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db create mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db-wal create mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db create mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db-wal create mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db create mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db-wal create mode 100644 canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db create mode 100644 canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db-wal create mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db create mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db-wal create mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db create mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db-wal create mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/system.nodes.db create mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/system.nodes.db-wal create mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db create mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db-wal create mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db create mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db-wal create mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db create mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db-wal create mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db create mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db-wal create mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db create mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db-wal create mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db create mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db-wal create mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db create mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db-wal create mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db create mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db-wal create mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db create mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db-wal create mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/system.nodes.db create mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/system.nodes.db-wal create mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/tests.db create mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/tests.db-wal create mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/system.nodes.db create mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/system.nodes.db-wal create mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/tests.db create mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/tests.db-wal create mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db create mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db-wal create mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db create mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db-wal create mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db create mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db-wal create mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db create mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db-wal create mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db create mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db-wal create mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db create mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db-wal create mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db create mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db-wal create mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db create mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db-wal create mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/system.nodes.db create mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/system.nodes.db-wal create mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/tests.db create mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/tests.db-wal create mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db create mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db-wal create mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db create mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db-wal create mode 100644 canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db create mode 100644 canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db-wal create mode 100644 canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db create mode 100644 canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db-wal create mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db create mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db-wal create mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/tests.db create mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/tests.db-wal create mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db create mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db-wal create mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db create mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db-wal create mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db create mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db-wal create mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db create mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db-wal create mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db create mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db-wal create mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db create mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db-wal create mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db create mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db-wal create mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db create mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db-wal create mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db create mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db-wal create mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db create mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db-wal create mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/system.nodes.db create mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/system.nodes.db-wal create mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db create mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db-wal create mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db create mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db-wal create mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db create mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db-wal create mode 100644 canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db create mode 100644 canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db-wal create mode 100644 canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db create mode 100644 canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db-wal create mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db create mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db-wal create mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db create mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db-wal create mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db create mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db-wal create mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db create mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db-wal create mode 100644 canhazdata/51054a26-b9f2-4255-b051-7dc4530dd208/system.nodes.db create mode 100644 canhazdata/51054a26-b9f2-4255-b051-7dc4530dd208/system.nodes.db-wal create mode 100644 canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db create mode 100644 canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db-wal create mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db create mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db-wal create mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db create mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db-wal create mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db create mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db-wal create mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db create mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db-wal create mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db create mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db-wal create mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db create mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db-wal create mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db create mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db-wal create mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db create mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db-wal create mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/system.nodes.db create mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/system.nodes.db-wal create mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/tests.db create mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/tests.db-wal create mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/system.nodes.db create mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/system.nodes.db-wal create mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db create mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db-wal create mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db create mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db-wal create mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db create mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db-wal create mode 100644 canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db create mode 100644 canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db-wal create mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db create mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db-wal create mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/tests.db create mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/tests.db-wal create mode 100644 canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db create mode 100644 canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db-wal create mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db create mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db-wal create mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db create mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db-wal create mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/system.nodes.db create mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/system.nodes.db-wal create mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/tests.db create mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/tests.db-wal create mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db create mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db-wal create mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db create mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db-wal create mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/system.nodes.db create mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/system.nodes.db-wal create mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db create mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db-wal create mode 100644 canhazdata/64bb94fc-a3de-4d6b-a0cf-67b483c0b90b/system.nodes.db create mode 100644 canhazdata/64bb94fc-a3de-4d6b-a0cf-67b483c0b90b/system.nodes.db-wal create mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db create mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db-wal create mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db create mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db-wal create mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/system.nodes.db create mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/system.nodes.db-wal create mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/tests.db create mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/tests.db-wal create mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db create mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db-wal create mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db create mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db-wal create mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db create mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db-wal create mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db create mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db-wal create mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/system.nodes.db create mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/system.nodes.db-wal create mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/tests.db create mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/tests.db-wal create mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db create mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db-wal create mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db create mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db-wal create mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db create mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db-wal create mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db create mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db-wal create mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/system.nodes.db create mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/system.nodes.db-wal create mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db create mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db-wal create mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db create mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db-wal create mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db create mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db-wal create mode 100644 canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db create mode 100644 canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db-wal create mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db create mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db-wal create mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db create mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db-wal create mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/system.nodes.db create mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/system.nodes.db-wal create mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/tests.db create mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/tests.db-wal create mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db create mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db-wal create mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db create mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db-wal create mode 100644 canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db create mode 100644 canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db-wal create mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db create mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db-wal create mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db create mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db-wal create mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db create mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db-wal create mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/tests.db create mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/tests.db-wal create mode 100644 canhazdata/7ec02e33-24ad-4964-a89c-6687de5adb6b/system.nodes.db create mode 100644 canhazdata/7ec02e33-24ad-4964-a89c-6687de5adb6b/system.nodes.db-wal create mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db create mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db-wal create mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db create mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db-wal create mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db create mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db-wal create mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/tests.db create mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/tests.db-wal create mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/system.nodes.db create mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/system.nodes.db-wal create mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db create mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db-wal create mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db create mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db-wal create mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db create mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db-wal create mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db create mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db-wal create mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db create mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db-wal create mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/system.nodes.db create mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/system.nodes.db-wal create mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/tests.db create mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/tests.db-wal create mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/system.nodes.db create mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/system.nodes.db-wal create mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/tests.db create mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/tests.db-wal create mode 100644 canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db create mode 100644 canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db-wal create mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db create mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db-wal create mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db create mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db-wal create mode 100644 canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db create mode 100644 canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db-wal create mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db create mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db-wal create mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db create mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db-wal create mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/system.nodes.db create mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/system.nodes.db-wal create mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/tests.db create mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/tests.db-wal create mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db create mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db-wal create mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db create mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db-wal create mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/system.nodes.db create mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/system.nodes.db-wal create mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/tests.db create mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/tests.db-wal create mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db create mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db-wal create mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db create mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db-wal create mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db create mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db-wal create mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db create mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db-wal create mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db create mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db-wal create mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db create mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db-wal create mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db create mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db-wal create mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db create mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db-wal create mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db create mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db-wal create mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db create mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db-wal create mode 100644 canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db create mode 100644 canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db-wal create mode 100644 canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db create mode 100644 canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db-wal create mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db create mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db-wal create mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db create mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db-wal create mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db create mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db-wal create mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db create mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db-wal create mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db create mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db-wal create mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db create mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db-wal create mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/system.nodes.db create mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/system.nodes.db-wal create mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db create mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db-wal create mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db create mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db-wal create mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db create mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db-wal create mode 100644 canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db create mode 100644 canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db-wal create mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db create mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db-wal create mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/tests.db create mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/tests.db-wal create mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db create mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db-wal create mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db create mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db-wal create mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/system.nodes.db create mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/system.nodes.db-wal create mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/tests.db create mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/tests.db-wal create mode 100644 canhazdata/a7474c52-56d8-42cd-a48b-62c4b35d3002/system.nodes.db create mode 100644 canhazdata/a7474c52-56d8-42cd-a48b-62c4b35d3002/system.nodes.db-wal create mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/system.nodes.db create mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/system.nodes.db-wal create mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/tests.db create mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/tests.db-wal create mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db create mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db-wal create mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db create mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db-wal create mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db create mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db-wal create mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db create mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db-wal create mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/system.nodes.db create mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/system.nodes.db-wal create mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/tests.db create mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/tests.db-wal create mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/system.nodes.db create mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/system.nodes.db-wal create mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db create mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db-wal create mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db create mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db-wal create mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db create mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db-wal create mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db create mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db-wal create mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/tests.db create mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/tests.db-wal create mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db create mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db-wal create mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db create mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db-wal create mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db create mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db-wal create mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db create mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db-wal create mode 100644 canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db create mode 100644 canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db-wal create mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db create mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db-wal create mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db create mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db-wal create mode 100644 canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db create mode 100644 canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db-wal create mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db create mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db-wal create mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db create mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db-wal create mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db create mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db-wal create mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db create mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db-wal create mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db create mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db-wal create mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db create mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db-wal create mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/system.nodes.db create mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/system.nodes.db-wal create mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/tests.db create mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/tests.db-wal create mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/system.nodes.db create mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/system.nodes.db-wal create mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db create mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db-wal create mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db create mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db-wal create mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db create mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db-wal create mode 100644 canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db create mode 100644 canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db-wal create mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db create mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db-wal create mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db create mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db-wal create mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db create mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db-wal create mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/tests.db create mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/tests.db-wal create mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/system.nodes.db create mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/system.nodes.db-wal create mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/tests.db create mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/tests.db-wal create mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/system.nodes.db create mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/system.nodes.db-wal create mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/tests.db create mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/tests.db-wal create mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db create mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db-wal create mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db create mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db-wal create mode 100644 canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db create mode 100644 canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db-wal create mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/system.nodes.db create mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/system.nodes.db-wal create mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/tests.db create mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/tests.db-wal create mode 100644 canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db create mode 100644 canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db-wal create mode 100644 canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db create mode 100644 canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db-wal create mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db create mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db-wal create mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db create mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db-wal create mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db create mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db-wal create mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db create mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db-wal create mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db create mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db-wal create mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db create mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db-wal create mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db create mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db-wal create mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db create mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db-wal create mode 100644 canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db create mode 100644 canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db-wal create mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db create mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db-wal create mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db create mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db-wal create mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db create mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db-wal create mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db create mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db-wal create mode 100644 canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db create mode 100644 canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db-wal create mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db create mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db-wal create mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db create mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db-wal create mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db create mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db-wal create mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db create mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db-wal create mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db create mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db-wal create mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/tests.db create mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/tests.db-wal create mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db create mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db-wal create mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db create mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db-wal create mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/system.nodes.db create mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/system.nodes.db-wal create mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/tests.db create mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/tests.db-wal create mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db create mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db-wal create mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db create mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db-wal create mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db create mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db-wal create mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db create mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db-wal create mode 100644 canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db create mode 100644 canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db-wal create mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db create mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db-wal create mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db create mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db-wal create mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db create mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db-wal create mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db create mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db-wal create mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/system.nodes.db create mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/system.nodes.db-wal create mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/tests.db create mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/tests.db-wal create mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/system.nodes.db create mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/system.nodes.db-wal create mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/tests.db create mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/tests.db-wal create mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/system.nodes.db create mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/system.nodes.db-wal create mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/tests.db create mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/tests.db-wal create mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/system.nodes.db create mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/system.nodes.db-wal create mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/tests.db create mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/tests.db-wal create mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/system.nodes.db create mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/system.nodes.db-wal create mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/tests.db create mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/tests.db-wal create mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/system.nodes.db create mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/system.nodes.db-wal create mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db create mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db-wal create mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db create mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db-wal create mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db create mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db-wal create mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/system.nodes.db create mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/system.nodes.db-wal create mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/tests.db create mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/tests.db-wal create mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/system.nodes.db create mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/system.nodes.db-wal create mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db create mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db-wal create mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db create mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db-wal create mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db create mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db-wal create mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db create mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db-wal create mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db create mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db-wal create mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db create mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db-wal create mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db create mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db-wal create mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db create mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db-wal create mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db create mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db-wal create mode 100644 canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db create mode 100644 canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db-wal create mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db create mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db-wal create mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db create mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db-wal create mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db create mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db-wal create mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db create mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db-wal create mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/system.nodes.db create mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/system.nodes.db-wal create mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/tests.db create mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/tests.db-wal create mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db create mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db-wal create mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db create mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db-wal create mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db create mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db-wal create mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db create mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db-wal create mode 100644 canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db create mode 100644 canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db-wal create mode 100644 canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db create mode 100644 canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db-wal create mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db create mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db-wal create mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db create mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db-wal create mode 100644 canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db create mode 100644 canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db-wal create mode 100644 canhazdata/two/system.nodes.db create mode 100644 canhazdata/two/system.nodes.db-wal delete mode 100644 canhazdbLogo.svg delete mode 100644 index.js delete mode 100644 lib/actions/http/getAll.js delete mode 100644 lib/actions/http/getOne.js delete mode 100644 lib/actions/http/post.js delete mode 100644 lib/actions/ws/getAll.js delete mode 100644 lib/actions/ws/post.js mode change 100755 => 100644 lib/cli.js create mode 100644 lib/controllers/external/get.js create mode 100644 lib/controllers/external/info.js create mode 100644 lib/controllers/external/post.js create mode 100644 lib/controllers/index.js create mode 100644 lib/controllers/internal/get.js create mode 100644 lib/controllers/internal/info.js create mode 100644 lib/controllers/internal/post.js delete mode 100644 lib/createCollectionMetadataUpdater.js create mode 100644 lib/createHandler.js create mode 100644 lib/driver/index.js delete mode 100644 lib/handleInvalidRequestBody.js delete mode 100644 lib/httpHandler.js create mode 100644 lib/prepareOptions.js create mode 100644 lib/startRepl.js delete mode 100644 lib/tcpHandler.js create mode 100644 lib/utils/selectRandomItemsFromArray.js create mode 100644 lib/utils/waitUntil.js delete mode 100644 lib/wsHandler.js delete mode 100755 redeploy.sh delete mode 100644 stack.yml delete mode 100644 test/batch.js delete mode 100644 test/collectionMetadata.js delete mode 100644 test/helpers/createTestCluster.js create mode 100644 test/helpers/createTestServer.js delete mode 100644 test/helpers/httpRequest.js delete mode 100644 test/integration.js delete mode 100644 test/locking.js delete mode 100644 test/notify.js delete mode 100644 test/problems.js delete mode 100644 test/utils/validateAlphaNumericDashDot.js delete mode 100644 test/ws.js delete mode 100644 utils/buildInsertStatement.js delete mode 100644 utils/orderByFields.js delete mode 100644 utils/selectRandomItemFromArray.js delete mode 100644 utils/validateAlphaNumericDashDot.js delete mode 100644 utils/validateQueryOptions.js diff --git a/.dockerignore b/.dockerignore deleted file mode 100644 index f96d0c9..0000000 --- a/.dockerignore +++ /dev/null @@ -1,2 +0,0 @@ -node_modules -.github diff --git a/.eslintrc.js b/.eslintrc.cjs similarity index 100% rename from .eslintrc.js rename to .eslintrc.cjs diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index c23cb3a..0000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,62 +0,0 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -name: "CodeQL" - -on: - push: - branches: [master] - pull_request: - # The branches below must be a subset of the branches above - branches: [master] - schedule: - - cron: '0 3 * * 0' - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - - strategy: - fail-fast: false - matrix: - # Override automatic language detection by changing the below list - # Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python'] - language: ['javascript'] - # Learn more... - # https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v1 - with: - languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v1 - - # ℹ️ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - - #- run: | - # make bootstrap - # make release - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index be113be..0000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Node.js Test Runner - -on: [push] - -jobs: - build: - - runs-on: ubuntu-latest - timeout-minutes: 5 - - strategy: - matrix: - node-version: [12.x, 14.x] - - steps: - - uses: actions/checkout@v2 - - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - - run: npm install - - run: npm run build --if-present - - run: npm test - env: - CI: true diff --git a/.gitignore b/.gitignore index b730740..75cc15d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,2 @@ -canhazdata -certs node_modules +certs diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index cb07f68..0000000 --- a/Dockerfile +++ /dev/null @@ -1,20 +0,0 @@ -FROM node:14-alpine - -WORKDIR /app - -RUN apk upgrade --update-cache --available && \ - apk add openssl && \ - rm -rf /var/cache/apk/* - -COPY package.json package.json -COPY package-lock.json package-lock.json - -RUN npm ci -RUN npm install canhazdb-driver-ejdb - -COPY . . - -RUN ln -s /app/lib/cli.js /bin/canhazdb - -ENTRYPOINT ["canhazdb"] - diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 29ebfa5..0000000 --- a/LICENSE +++ /dev/null @@ -1,661 +0,0 @@ - GNU AFFERO GENERAL PUBLIC LICENSE - Version 3, 19 November 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU Affero General Public License is a free, copyleft license for -software and other kinds of works, specifically designed to ensure -cooperation with the community in the case of network server software. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -our General Public Licenses are intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - Developers that use our General Public Licenses protect your rights -with two steps: (1) assert copyright on the software, and (2) offer -you this License which gives you legal permission to copy, distribute -and/or modify the software. - - A secondary benefit of defending all users' freedom is that -improvements made in alternate versions of the program, if they -receive widespread use, become available for other developers to -incorporate. Many developers of free software are heartened and -encouraged by the resulting cooperation. However, in the case of -software used on network servers, this result may fail to come about. -The GNU General Public License permits making a modified version and -letting the public access it on a server without ever releasing its -source code to the public. - - The GNU Affero General Public License is designed specifically to -ensure that, in such cases, the modified source code becomes available -to the community. It requires the operator of a network server to -provide the source code of the modified version running there to the -users of that server. Therefore, public use of a modified version, on -a publicly accessible server, gives the public access to the source -code of the modified version. - - An older license, called the Affero General Public License and -published by Affero, was designed to accomplish similar goals. This is -a different license, not a version of the Affero GPL, but Affero has -released a new version of the Affero GPL which permits relicensing under -this license. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU Affero General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Remote Network Interaction; Use with the GNU General Public License. - - Notwithstanding any other provision of this License, if you modify the -Program, your modified version must prominently offer all users -interacting with it remotely through a computer network (if your version -supports such interaction) an opportunity to receive the Corresponding -Source of your version by providing access to the Corresponding Source -from a network server at no charge, through some standard or customary -means of facilitating copying of software. This Corresponding Source -shall include the Corresponding Source for any work covered by version 3 -of the GNU General Public License that is incorporated pursuant to the -following paragraph. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the work with which it is combined will remain governed by version -3 of the GNU General Public License. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU Affero General Public License from time to time. Such new versions -will be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU Affero General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU Affero General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU Affero General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published - by the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If your software can interact with users remotely through a computer -network, you should also make sure that it provides a way for users to -get its source. For example, if your program is a web application, its -interface could display a "Source" link that leads users to an archive -of the code. There are many ways you could offer source, and different -solutions will be better for different programs; see section 13 for the -specific requirements. - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU AGPL, see -. \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 1421dad..0000000 --- a/README.md +++ /dev/null @@ -1,618 +0,0 @@ - - -# canhazdb-server -![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/canhazdb/server) -[![GitHub package.json version](https://img.shields.io/github/package-json/v/canhazdb/server)](https://github.com/canhazdb/server/blob/master/package.json) -[![GitHub](https://img.shields.io/github/license/canhazdb/server)](https://github.com/canhazdb/server/blob/master/LICENSE) -[![js-semistandard-style](https://img.shields.io/badge/code%20style-semistandard-brightgreen.svg)](https://github.com/standard/semistandard) - -A sharded and clustered database communicated over http rest with notifications included. - -## Getting Started -You must have a minimum version of Node 12 installed. - -Create the tls files you need to secure your cluster. - -A bash script `./makeCerts.sh` provided will create a folder with test certs you can use. - -You can opt out of tls by omitting the tls option from canhazdb. - -### Client -You can talk to the database via http/https using your favourite http client, or -you can use the [official client](https://github.com/canhazdb/client). - -### Drivers -As of version 5.0.0, drivers have been abstracted out and installed separately. - -The current official drivers are: -- [canhazdb-driver-ejdb](https://github.com/canhazdb/driver-ejdb) -- [canhazdb-driver-nedb](https://github.com/canhazdb/driver-nedb) -- [canhazdb-driver-sqlite](https://github.com/canhazdb/driver-sqlite) - -It should be fairly trivial to implement a driver for other databases. If -you would like to create a custom driver, take a look at the -[nedb driver index file](https://github.com/canhazdb/driver-nedb/blob/master/lib/index.js) -for an example. - -### Server Via Docker -The quickest way to setup a test server is via: -```bash -docker run -itp 8060:8060 canhazdb/server --single -``` - -Then visit http://localhost:8060 - -But you can create a production ready and scalable stack by -using the [stack.yml](stack.yml) file as an example. - -This will give you TLS authenication and encryption along with -persistent storage. - -### Server Via the CLI -```bash -npm install --global canhazdb-server -``` - -#### Create a single node server -```bash -canhazdb-server \ - --driver canhazdb-driver-ejdb \ - --host localhost \ - --port 7061 \ - --query-port 8061 \ - --data-dir ./canhazdb/one \ - --tls-ca ./certs/ca.cert.pem \ - --tls-cert ./certs/localhost.cert.pem \ - --tls-key ./certs/localhost.privkey.pem -``` - -#### Add some more to the cluster -```bash -canhazdb-server \ - --driver canhazdb-driver-ejdb \ - --host localhost \ - --port 7062 \ - --query-port 8062 \ - --data-dir ./canhazdb/two \ - --tls-ca ./certs/ca.cert.pem \ - --tls-cert ./certs/localhost.cert.pem \ - --tls-key ./certs/localhost.privkey.pem \ - --join localhost:7061 - -canhazdb-server \ - --driver canhazdb-driver-ejdb \ - --host localhost \ - --port 7063 \ - --query-port 8063 \ - --data-dir ./canhazdb/three \ - --tls-ca ./certs/ca.cert.pem \ - --tls-cert ./certs/localhost.cert.pem \ - --tls-key ./certs/localhost.privkey.pem \ - --join localhost:7061 -``` - -### Server Via NodeJS -```bash -npm install --save canhazdb-server canhazdb-driver-ejdb -``` - -```javascript -const fs = require('fs'); -const https = require('https'); -const axios = require('axios'); -const canhazdb = require('canhazdb-server'); - -async function main () { - const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [ fs.readFileSync('./certs/ca.cert.pem') ], - requestCert: true /* this denys any cert not signed with our ca above */ - }; - - const node1 = await canhazdb({ - driver: 'canhazdb-driver-ejdb', - host: 'localhost', - port: 7061, queryPort: 8061, - dataDirectory: './canhazdata/one', - tls, single: true - }); - const node2 = await canhazdb({ - driver: 'canhazdb-driver-ejdb', - host: 'localhost', - port: 7062, queryPort: 8062, - dataDirectory: './canhazdata/two', - tls, join: ['localhost:7061'] - }); - - // You can join to other nodes after starting: - // await node2.join({ host: 'otherhost', port: 7063 }) - - const postRequest = await axios(`${node1.url}/tests`, { - httpsAgent: new https.Agent(tls), - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - // node2.url === 'https://localhost:8061' - const result = await axios(`${node2.url}/tests/${postRequest.data.id}`, { - httpsAgent: new https.Agent(tls) - }); - - console.log(result.data); - - /* - { - a: 1, - b: 2, - c: 3 - } - */ -} -``` - -## System Tables -The `system` namespace is used for storing the following metadata related to the database. - -You can query them like any normal collection. - -### collections -The `system.collections` collection contains a document for each collection, along with the -amount of documents that stores. - -```javascript -axios('/system.collections', { - httpsAgent: new https.Agent(tls) -}) === [{ - id: 'uuid-uuid-uuid-uuid', - collectionId: 'tests', - documentCount: 1 -}] -``` - -## Endpoints - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MethodPathDescription
1GET/:collectionId?fieldsList all documents for a collection
2GET/:collectionId/:documentId?query&count&fields&limit&orderGet a document by id
3POST/:collectionIdCreate a new document
4PUT/:collectionId/:documentIdReplace a document by id
5PUT/:collectionId/:documentId?queryReplace multiple document matching query
6PATCH/:collectionId/:documentIdPartially update a document by id
7PATCH/:collectionId/:documentId?queryPartially update multiple document matching query
8DELETE/:collectionId/:documentIdDelete a document by id
9DELETE/:collectionId/:documentId?queryDelete multiple document matching query
10POST/_/locksLock a collection/document/field combination
11DELETE/_/locks/:lockIdRelease a lock
- -### Examples -
-1. Get item by id - - - - - -
MethodGET
URL/collectionId
FieldsJSON Array
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests/example-uuid-paramater?fields=["firstName"]', -}) -``` - -**Client:** -```javascript -client.get('tests', { - query: { - id: 'example-uuid-paramater' - } -}); -``` -
- -
-2. Get document count in a collection - - - - - -
MethodGET
URL/collectionId?count=true
QueryMongo Query Syntax
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests?count=true&query={"firstName":"Joe"}', -}) -``` - -**Client:** -```javascript -client.count('tests', { - query: { - firstName: 'Joe' - } -}); -``` -
- -
-3. Get items in a collection - - - - - - - - -
MethodGET
URL/collectionId
QueryMongo Query Syntax
FieldsJSON Array
LimitNumber
OrderDirection(fieldName)
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests?query={"firstName":"Joe"}&fields=["firstName"]&limit=10&order=desc(firstName)', -}) -``` - -**Client:** -```javascript -client.get('tests', { - query: { - firstName: 'Joe' - }, - limit: 10, - order: 'desc(firstName)' -}); -``` -
- -
-4. Create a new document in a collection - - - - - -
MethodPOST
URL/collectionId
DataJSON
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests', - method: 'POST', - data: { - firstName: 'Joe' - } -}) -``` - -**Client:** -```javascript -client.post('tests', { - firstName: 'Joe' -}); -``` -
- -
-5. Replace a document by id - - - - - -
MethodPUT
URL/collectionId/documentId
DataJSON
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests/example-uuid-paramater', - method: 'PUT', - data: { - firstName: 'Zoe' - } -}) -``` - -**Client:** -```javascript -client.put('tests', { - firstName: 'Joe' -}); -``` -
- -
-6. Replace multiple documents by query - - - - - -
MethodPUT
URL/collectionId/documentId
DataJSON
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests?query={"location":"GB"}', - method: 'PUT', - data: { - firstName: 'Zoe', - location: 'GB', - timezone: 'GMT' - } -}) -``` - -**Client:** -```javascript -client.put('tests', { - firstName: 'Zoe', - location: 'GB', - timezone: 'GMT' -}, { - query: { - location: 'GB' - } -}); -``` -
- -
-7. Partially update multiple documents by id - - - - - -
MethodPATCH
URL/collectionId/documentId
DataJSON
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests/example-uuid-paramater', - method: 'PATCH', - data: { - timezone: 'GMT' - } -}) -``` - -**Client:** -```javascript -client.patch('tests', { - timezone: 'GMT' -}, { - query: { - location: 'GB' - } -}); -``` -
- -
-8. Partially update multiple documents by query - - - - - -
MethodPATCH
URL/collectionId/documentId
DataJSON
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests?query={"location":"GB"}', - method: 'PATCH', - data: { - timezone: 'GMT' - } -}) -``` - -**Client:** -```javascript -client.patch('tests', { - timezone: 'GMT' -}, { - query: { - location: 'GB' - } -}); -``` -
- -
-9. Delete a document by id - - - - -
MethodDELETE
URL/collectionId/documentId
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests/example-uuid-paramater', - method: 'DELETE' -}) -``` - -**Client:** -```javascript -client.delete('tests', { - query: { - id: 'example-uuid-paramater' - } -}); -``` - -
- -
-10. Delete multiple documents by query - - - - -
MethodDELETE
URL/collectionId/documentId
- -**HTTP Request:** -```javascript -axios({ - url: 'https://localhost:8061/tests?query={"location":"GB"}', - method: 'DELETE' -}) -``` - -**Client:** -```javascript -client.delete('tests', { - query: { - location: 'GB' - } -}); -``` -
- -
-11. Lock a collection/document/field combination - - - - - -
MethodPOST
URL/_/locks
DataJSON Array
- -**HTTP Request:** -```javascript -const lock = await axios({ - url: 'https://localhost:8061/_/locks', - method: 'POST', - data: ['users'] -}); -const lockId = lock.data.id; -``` - -**Client:** -```javascript -const lockId = await client.lock('users'); -``` -
- -
-12. Release a lock - - - - -
MethodDELETE
URL/_/locks/:lockId
- -**HTTP Request:** -```javascript -const lock = await axios({ - url: 'https://localhost:8061/_/locks', - method: 'POST', - data: ['users'] -}); -const lockId = lock.data.id; - -const lock = await axios({ - url: 'https://localhost:8061/users', - method: 'POST', - headers: { - 'x-lock-id': lockId, - 'x-lock-strategy': 'wait' // optional: can be 'fail' or 'wait'. default is 'wait'. - } -}); - -await axios({ - url: `https://localhost:8061/_/locks/${lockId}`, - method: 'DELETE' -}); -``` - -**Client:** -```javascript -const lockId = await client.lock(['users']); -const newDocument = await client.post('users', { - name: 'mark' -}, { - lockId, - lockStrategy: 'wait' // optional: can be 'fail' or 'wait'. default is 'wait'. -}); -await client.unlock(lockId); -``` -
- -## License -This project is licensed under the terms of the AGPL-3.0 license. diff --git a/canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db b/canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..c87c50cd86bd4c0763a9c3ffe16571d0f83bb09f GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db-wal b/canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db b/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..df58248862962098da055bb7edbacb2faf828d7a GIT binary patch literal 36864 zcmeI5Id3FI6vw;zoay0|I09B^5IdvQEM>a-?g)brM+BoSZ$D#> z_Lz25j{WTLEbb=Lv=83DF;!j_{m9|-bOL34W2z}+7TNmD$aPj`)6<#$8HH8+L$y{M zvb~v+>#VF|{02q)Fxk5^BiC73vH1HhYr|na*`55vCY{CnzZSNpYr$H)f7vvy?{4o| zFTS_6v#XgKTeTdT=Cm%G;ksFu(|Twhwv5`A*SEIs-O@U28MZAqiw${CP1C5>g8fUn zsaotkwDaN4uH0DLq|SFVo%%G?`M++`1U*Xj^US)OuN7PWhw-ax|Kns|&5T@UWfkMM zXVKmyudK_mV)6H1)$;r|mVeIjAN2fFJ?}F1`)V_5{|)2lT)iwJ-1(H`0 zeO9&CBxyZY=?`Yyp(LY1G#QOVrXCNAu;N8n);wwIv=)t5NEyykx~en1RjSiOmQfS) zAoNKosXbnZEahI{S6S4Qev|q0lqUZ$)+#kwEu>e_AR?udHWAO7Fy%tTNflIa<%P*y zrN8^@+Fj_y9x-pOCZ3ELzo}k7^o(l5boD5}(h56%575#^fQ~@`1V8`;KmY_l00ck)1V8`;K;Xe7z%<)c zuU`IPqca)E6rCu~zW-#*%2 zv2}G6+f2ELX(Lyqo-@^}A9aJ-eam!u%ZZ$^g>vaEXK?5h1V8`;KmY_l00ck)1V8`; zKmY_TFoFK-+IaldczgUS8-LBlx7hf1ef+&X{z4yrtdGwpu#p=?QZ|X7QRZBgAvjhU zf~6FcO*bu*TE-%)l2PCDh0N+ga#1&uhkoes)Qf!{q($hJlxH`R^{D5?qKtfMAQDPB z97bu%={Vp`(a=6g*!YE4jhrHtB8`)T%e0~F#$HC*i7Bfw_nRhY5*m+JMk8C$cZm!$ zUP>A8P-GcTv#g+25%o!f_JVq3Es`mDWG<2gd1S~1G8~WeMY0!<7TQg5-~3Ph>2Hku zwwZrv=D%3^Eh|5t6|kDUFt^R}yvPcjm*x2?WBpcXkySibNn^b`lonX&^OPnB%xRSt qIUD9G{l)B7X^}H#uF{{#KYrf%$5->r!>B+21V8`;KmY`~B=9fQ>36^Y literal 0 HcmV?d00001 diff --git a/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db-wal b/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db b/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db-wal b/canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db b/canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a880ad8a5faefafe1c48acba7974c3c23c2a11d GIT binary patch literal 65536 zcmeI*&rTCT7y$5{c3VQxsL{lO9(v$J0z#lvZuMq(3i}6QBmV+K;z=LG1CQd(iw~i^ z2+p)6Tu{=4O`Gg*lCRSyUuXOMrkyss?e^Et?_nW(nvL5{Ke;(g_bp`E=T8^I)TdS% zcP{@g&>LI~vqV;l(V0Z-3Tu<;DQx^H2Tt`j({p7Z#^oepS6G|J`m3?p$1y%kB6fwf zIjev1UDj;wuAHy@2`h!wTq!?n$|?W^UydUAexS$lJGe0rYchsT4xW}XiRz5Qk< zAM}QUW_^^|y3PD}e0FzcZIronn|ahd+`DtkyxL#eyn0>9Q^w_^voB}odxvXBapPxM zC2q5tUjLmuPSBHbPSU9UwDv!X@naIPE3D1g>wi>#eNyeW*rzD6%~}16oosiv$a;-k zfItXW@2lfAZTan>*KcpPHdp)Ic58KOeb8U+w!5v>e!tz@+S(uN>~HU6d0I;^7Y~m6 z-GlM6nwH_t%5|Loh4j%!E15t&Y;3Hrx8wXb8ZR0pE54lNhT6@WPpIEqo3+IC_4U^n z|7<1wST^fvv3&vr2oNAZfB*pk1PBly@Sp-AtL5qN<6?|zWwv`I!stlVgO+D70t5&U zAV7cs0RjXF5FkJx3WO}g@Be4n^EuE6v)%nL2Lc`f0RjXF5FkK+009C72oNYnAY}EB zetP(_nBk`yHH?1}Gu3@06Cgl<009C72oNAZfB*pk_Y1`1|CMz5p;sw&#>d~o&3SaI6`$lblOGqdy9ncW?heek$dT~z@^ z7*-MP3Rp*@g{(gPV=ltr_sb8KFpP%a}Q%d*y)C1iwYvS)r_rIL}l%pdxV&yr%2ZQXrc7p& zI*1%)Y?V@1G1{6zlP%8n4I=Nw&8Zt%-93De?JVW-@VvfgoMyl^xy6XB`q_soe4lHwO_Qfy%#aF(2@ue^CcrWFz zQ?plJ{=h3YpQ#}C*pQmgocfUI8hu@-e=xX6nfzA94;q@BqRV~#qPXV8o2Sm5`>w)9 z82W>JS=$G?zts8ZR!h@*d(%x(f-*Hfy^p>grhoFy5LZ)FY(iVewMFHNst^%wk?vCsroc4`*r#!-*c0y zipou33r)7TtgE6x^4vz_P}hxzs{^uS&wW|txdTOnUX0%#eo!3VoG#N};>_54)4|Pj zGPsfK)jw8)n+vS(&>u+6P90QEJy6H2UiVdcmDY>N?LENfnG~NxL+`Y$kRlwKNwE$y z^i zXk^Ud{yg}3hQPF?At|=QrnnU1=Na&`d^^O|6cwA$7Mg5Pc{zSQxCeqpwpo70KKzZ% zkj7`KumG8W(eG>E=a~dbdnDVYW9UQtJOh4~@3~1;Mdc>2g(h2ERxdw4bq@rMY_t4~ zefV2>Zfaj>!hHA0gJOSkrc8&4Gh;PVex3n8Psa&qNt6Djl)8%1)(Vm)P2>kEnoFq z!&Rf86ZoMKSS`;g3_s8GD4z23Eckgwa`&h3J+}#epvh?}H{s{4gr6UqW>XCHLC&mh z0DzulGHoF#cKuC}I|1}809w8w;%W|c*~6X$O|~e5>i~LVXoN<#S%8L{A+2hGQlmi= zCcnP}K+h&risV?bZE+d_^eg~czUL-YO|NOp-=N7Bmy-wRXAO6M{aKCFqBTg=l2W^1c8FJ;!X?MpA5vO>xPD&~rd& z`Id;QDJnLhEi~Dp^7}9DVY2|3xu9axU@&IZAez1 z147I9+@z|aaue7>lPxamdW5!zglJ@&Md-?Ni|q-$nC@ea;b>7&kiNEHs}CFpwNewk=Mh+X?d+3(5D~q^jvP zjrkii+2V5gjfHL*YBYpwvtyykbBk>Wy>6sKHXanmHRsFpnK(0c>hyNPd@>fAo0^ev zs~guUb1Zb4D}nhqTRmf;cMLZig4)@^Q03RK_4R+VdSNhB>2vkbUFCzE2t%(xv$F}jw)=y{nOEfb^9 zu;9SxQ+bU3&uLbBmmkQT<><<>i$%=p1&*%t8mt#H+aH6Y7gCP)Je^QkZ>x^3JG2az zrm21yxvC$TzV8RF8MVSfj;_NRabuBk^a5LiqtP|VU7*50s|kOgNleM$=rese`j2*x z(#V|^J`0duU_y0}6dPkxTs4980zg{6G2&`Y)Ev-ci%Km7X$K8R>8c^yEJ(xEkXC_o zDkn5y^7})8^g=?XNRB1j7N=1>dI2CU-*c0yrq?v)Z_s3m%P9isdv=Y|$d#J0r zTWm|{#c20Mfb>F{UK3}=PMw1ELJHC~dU#)6L|P_DpJl-T(zo^j=`ZY_rJ*-_GZtB? zJe!5?|H5i#~uCE8G9~e3jnC@tR_aWzLT`3^Zkt}Qxd2b6x!E@2wka?^vQ3gK%=t57<%3p8Q!dlyhTUGx;m zIh0-mO3U}$A6t~}>=LFSHG3{ly7JuAQ}f@T7o+t1fzpd*x=oy!L+Qm7r77Yhk)>s# zbbPxOD1Ev=O22QnG!4PowZYPrYv&z0{eM<3uymzYs!#qK^kQP$087_Xme$)wXt{x> zT9NHhRGJoCarJhjhOXJ__!Ok>ct#;hFCq6FOV`2Di;_D*rJmPg{Qrk07q}>}^ldw^ z^gDKk)5xDSel}pbPL$d%TDPzcn3ivjxSHd)L8b)AwMF}Ogz3|}!f9lig=sh&(khrv z?Ep=f{C*2CT~7!V$vK#=1E%GBZc^3sn#TMMnrv}7#c}CQ<7KB@79Z3(>? zrr!vdu9xXIab^yt>p7TSlogql3De9YNnH9&AxuBGJD!H(S(>hVd$4b_UZCkpufck; z_x^2{?UY7J(}Ca8ZHhpvddCk`!=d-+xSkfM8qu{8ICiTY6)(Or2k*_%bOSV9m)r{~ zyXt3(RoqPqG`Ywpfu_&xOw(VQk6V{=#h?HdSqDxxIOwY*DYnO^$d0CYGm1Qh&}5798-UXncLCJMHjC5nHl)R7xC}E?^QBn{*61PNbR%KZ9?7=(z<3$( z25?$_OOjMoRBi%WXtKp+?Tpi}f$Np17P8IaG)_la<+-Vl(1daNg}~`XnT``@#%iY1 zJQ^uZ*W=){ES{E$)8|=W#HP>ggwy{x!^)TZK=Le4SI%85URE#gbfwo|y_naofv1;J zp4NkQ5Na)-*8irr1{?IqAl)Qxz6Baf&RQO$8_-#1^#wMD4| zf%-~mq(-(`poY64t-_MjBG80e>(>FOml8@vaxB@lIF05_F9E3KHzi3`(`y>@H)wK- z%K=c|9KVdJMCjS0PYZLFuQiQ|$5v*N^S zV&~%7WNPJm=-?OrhS=RKMc>U*A@63XStiX=)4Iz&MOkjil5&eYmRn7|+)Infy&ANs zlvx)oYvHGKExd}IjPnjmxm1RjaAs~GwZxtE8ac-FoES(oB#oqG4y59{_TAr0{k8!E zsgIT)OF?sP)G*JdYScsn)Nh;B3nQsYuYO92eb8%~{(A#Df!GavSHWgZipx&o2aCW?C}9*WRLWYZjl{jWQ$%_E1SB$7HRF!w*#yAO})x^RyM_2 zw8;;Y<03zcALw!#7cq59b4<%q&4?Z&H#+n{xogqNre@fRI$mhmQM*$(Yi|v0MJ_I~ z%!A7#)c-F@9?dA-sDWshCbNYmm$)WnS>4; z7Ihi9lCUb0W68F~X>`AF1z0V= zF-fYLUelPrL6g&54zPM_N38x^o-B*iw_idL^FACkw5ALdg0h zCDxQp}QPg(bwxxC2#jh1uhxf*fM#|P}VCz-M-J!BptjxGlpvj$F0NDD{uGso(ivvT~ zD20_?16;2$To=8kYYlL{y3~+L*NUj-xb*LvFXY;y)KarS{Mt)uR|n!XvgOtYvq9i; zNUPvFwFop}xV{XyUQ37-$+2YH;xr0duWf!8wW`Z5cCO{iYK zxC^@e{lS0@-PyzO+(hN!LhF9ptX{zDO0RxOiG9$EdF>GJdS8myttg6o$9GiXvX*Li zTAS8KjRJldZj0VcV*6H5JWYHax##eDAMkoja)+oeQcm~-P441yf!CLJi`Q=(MA#^X zrH+@croZ$1cv?u&Z0mj3^YxmPnIS(xeEq5cgbgcj^9{a+&mpbiYZ9mXfhNq?w}P+t zCD4lG9AEDPU(0V#lB(j0#{L(Y+{Ptc6~!%{F2~n@JqWRpc^0rM|1GvD^kTq%EdYC8 znNAdE<^X$NCVZU%?6rvpuw?@F9V|Ei`}W-d_7CR@QYkTq)4x3KsyvzGDc&{#<>>FgD6zt)~&f-p?WIqSt!u=O4;p`nNBQVM}3bMO2e& zGPw`r+M*(N5yE~|?U#0hY-G#r5fB?rhqMZ@Q!_&oM(k(5LhP^aPq-DyImF%%#FpQn zBvnnXY0TfCN!%I$vCou7>_6X`vXMJGFoM{X0~ebVdNJ2s0b}nk(~aWH9AoeAVQdOc z&CkS9?1@9ROvaAy_FfaJ*DvjwvA?`CW~%o)e#xDpvRn&ip!4wuPkFE}J5WmJL}?DSLl1RYV46%cN{xl`^61 zo2P2EmD<7DM(u{$O|@3dsXeE5x^}U4rFMT!OcY_t{*kf+XhUmmk$~B7JEX;SxC}c~ z)38|y#_XQ~X0Ipg+9TOE9~e)=UI%8&Z&H$~ipou33r)^*S-|YGyTR-a?nK(io;?_x zU3qY^U7;6q_D_Se*UR*zI5WrD>v_)JFA20|a&~;%_nJ_>et8(q{=iPC4e8m*0os+5 z4|a0a3!q);HCQhOZ3m!zAO-D6Yqgz@%QLY}0&RMWlqKG84t7|X?-0B< z2igY!+Ut_LMdd)TGUG~tCUS zQCkt!9G4CH<_o!anX`nnZz)UK-!F!3WXx?6P#cbiv4*2O|NOp-=N6_E(fT6+b&W2(PG+0{_MhF?aGCVjS9V(wHLtJ2g-D& zI5WrE2f*6vw3_|u0tK}t!M0NBDvFgECIy z57x-R_Cdh*0m&Vsa@*UYydB>Q?y6b8b9mnV#ys1l&j;eOn*+EjH}4}i2D!|w}YhEG@D$Pcs;*EDRCcM-7gWjWfJ!p(jp=5Q@bPX zZ}o?6$j$9IBHVC3q{XJFCX=uyCM)+da<2fn4<#JiBiS~e5KksK1mu?Auq0I#m7Bm8 zn%vH10lCi)h1?JKr*4$MPK+3L<;2CNg?fG znamyE7VfH9ziUs-{jvVo4fWa20o|3K5B77`3(#HZHCQi(?)w1Uhg0Zod4?HkHu1LE zrg{{G!Uxbqu|D?)G7LZw|T-1G*1M?i>|<9B{%PXmT%?3+TRk@6i1Z z%Y9IdG)n_DJe zH{1_t6?UiQh9->NGr;b{3CkimmTX&`MiWa81H0unElE|=YZ~)6XmW|m0d`*)7Q5fj zkGxR?doj4X^5SB zn)NGtjt=my9DT5(vt9u2O0U6sF|@4#ypN>dZMeGYIfkKzra|;=GkE(n zy`*i0x*q5>$Ha0Ar9Qmo9lQlQCwTmZoPc_RVuH($@*D2)~W z3ds8ilXuY)fJZ>yhb5!8BC0tqJM_&La@|I$33;C$hP)rU9=?$|w@pBAI3Ut0^iJ&p zO&GoZr^}J`BMHwUIfvdyfZp;Om!zucHI4ZjG>Pw-0KG5n0loiwn$_?5pbU0nuy^Ig zJrec&2YNAkU%e)hnn%iXtT;2r-beb!ybm`PIp{q>_?F4u@y+6{n)T<7fW7~{cHM*% z=+B-G_^v#?$GLm{lhq6GUFp>$QO|#%7sK~wx+tg|P2pR!yjIK5JXP0pQ#CretNKyf zP&;9#F(&dKXmUT72Kc^bRPg=jm0au_#j)gH z0(~E4`fejBw$3J3C!TF`G@@N0$XTu2bTr>zI|`_{dk_hQ3(4n z_`CAsV(UV$X*#62CXRdZN$idP{X3#a+6)kO+#;%daSZp zYPptXsl^kUrIs;omU^2|v(y_sn=37cUhWro9lGmp(2B@@$5tK33Dw9n&7kdCPTTgI z%cgE=j%j)P+#5|0=+G+wIY~7`nvv^;mL0V_%_Ti(2cg#T)hGxkL)+I>Pje$xH_XV^ zJ;yU#uh|IvmTpH@pz0l;N_1>Zbv-RmH7l}>z_DBH$Z6K~wh>xx;Hk9Nqg5^}pWcen zj?~aKTOD81=&3xTx!5uF(Dn5|^#env*$bLQC5D=622m@dGAzULnhW$66_?_vZPnp- z7aDZ3>W4JD*pE!#_XF3YgPS!gvTQG~Lw@l}TQvfD;h{_UsB{^I*U>D>!fwt7p%t05 z{IIHNzCqU*(K2@?Dbez16=^RB3`dKabDCqB^j<`l-jQffURH-58*KRj z*KSdzT1IG_&FQw`YK~7@YIN71-XcS?`>sVxgZLWH;qdLiGMkDMkbx~zS390fd1+)O z&-P5U)1l@0j3{s;D_K~X?mkUDt^0#cez-h{JBJ_c(J};$pM2c+KOlbc%2e|xkFuX} z-5suUl#P*%IAeTUnWOA@c1X8%Y}`GXQTAu^18o=}JIt;+v|@+K>V;u;rPpA+cv$f| z46~1=!|b+6jf>^c3$0v!zm@Bnv{aExFS!as$88yA;JC%_w>k=I#Lb5$YC%JXV;E*1 zl?=klv0`P$l>$wk&jnzZeeVc|*-xzYjI>c6YyLMFXCLEnwvMFOJeypfc$|GK8D}4r zJJ6On&OT3CB;)L}!;iB++dI^Tt7FTYdwRR8>@N0$XSjuUOudZ1K{b2io809c!bM>`1$E0WVW+$^LFeyo_mkBVDe6M}G=3?5Gu0fRqpWDNdjFNVVcSqQIueXy^yUV!jQufclF z(jh;!CXRcOKJdHv?>oi*#=XgK{*8omuY0f9t&EJ>M|YD=8QEMpWn_=LC?k7XeRK;= zDI;4SRvFnV9Y*&CHf3aQOIFs>acP-%vKP+1Tvt}poZ6=5(o$fKYIb~^B6J-JyE&e% z29EBww7~Iw-73s!Sy@SQDie(@%&DdWun7{IV~xRX-;J#$b~sIl!Y{>GEwHjoa#y~&8bWzx-h3jWj@WROtiW%rv+s$ z&8bX8yD+C&Wj4*JOw_wDrx|4?&8bXeyfCL}Wjf8NO!T}kCq+@xoXSMli*mXt>8|-^ z+6~=qJYAcBgEDRO*2mK_Eu$T@TJ+>5-Ls&(4W^?}tgUU)oeR3J;COsjqBz2~3Pgwp z2U?c}rj+9x?QtkTe@yZSSUE20G|4SAc>x#N#iphEMjK)KP&UYh0$KD=A;fl^LTv4# z5Zm!SA+}?UmBoeH{M_;+U&SLc#CCz?Nf9FwgoU)OEc+0jlgXZL@wx`oHDaWA+J*}`s(~(-9 z8+5dQ9!n{L|7RYD_vS!+10a4}ayO}L6e}~X6ln57E&w2Y|Hwi7+iS@UZo?}%Cau@uK)gDi|!-agpdvoK!iHCQhu zx8HkI9H*Q}VVs^%Xmz~EP;Jwvx$Zhm#HZ=~Ej834hi0AHG|j&l#*;hbIT$|y7~hcG zQ7R{jl^ItGe$g-D0^TV~S$h6BVEkR+aTLk2e*`psf@oYTT2TB%2^z=GN?gL2wlZm) zmt;<8{QL-L{KEip7$l41a7Cn5IG(x`G+`Y7Byjvh!njDz;rI#Qxcp`&scL#nWBvwB z;&+_@$L|~+j(-9~j)Jm0Uiosdb)gsY_@98sPn79rab}LkPxRyQjhSq4d@?{TlgHzG z%;53+M$h9P0+PcBSs<_6eXzS{fxOaduwD%0R~{9|DJN4P*L*JseOhY8bghuyrOA)s z(qpr#+YadIV&86c%;NP{HsHNEAU_EpKOwoRR8AHvGp-b9vdskm$X_rfApi2dI7W^# zS@#cu$WL;7+(J@pqD`(-{4m%_5c!E60_2lGaz#{ARBS?9XmW|lONji!Xo&m+0?JWD z7Rlj^NQ+H!SzL4VK$y^hk^IkqldRNmWJVCa{Gj@vBgPMe|(jjVp~khZ9V&Qk?K+k@%h8~ zz}B`@rWLRM7D)8@Kv=S>iQX(sRaluVPhsOPIIzvXZa*uVCh}RBs<2YV{2i0+0~7CO zVXDGP$?~tg7Q4GguP%aL@?~K;ukpau!GV7ejGw#C>1dcchXXC#;}f0LU3Z|9e!b`F zWT5LClXjhPbJ}j_@ZB&w{WwVDQKsLT=4W^Is!n>T@r!9M_ppC*a%V%=Ne}$-lZyK( zKF;#$C_5XSiHdn&$A15Nu34am>$ymi{O#VqW8&K^OjTGZ+4p~v|HdraOH_TpBOdReS=rh|Tzg`vpz+MQ;kR6F!K zY0~vnC-uE3jJuu={ixN{VUqZPX%+;2CyGt?F!K{nb%Vr5co0$|QAglI=zAbX2EIa~s6@?#Q(5g%2{}1ebx&YP0|5jOKmY**5I_I{1Q0*~ zff5NwA62g@&Xt0tg_000IagfB*srAb&zO#AcWb&Wawr93`s;c|<`?{)rU%lQi!oz>JMn;tE`^cH>%RK)a%l^gd&(F^Nj84|! zWGE!4!;78+m9z2GOqr&cTxH%IhM={&`dESkckvgK+N1$ZK zA&s|YY5g;Nr}O9F``ZfV;on^gyUi>;Qxl#boa2w7-fs(}}ZYLtfh<>`-LBx20i2Nrzyn()= zU35gec*j%_jvD~Tj~W~mWps0GWaRT>W9dEjoE?Ya*c=(XJ3f2F)gmo)4NbMY)KD$o zH`TzhrKl_ zQka#{T;(yrsK*iXZ^7TFlK+BV9P&|79LKc%0Lox5F+qa~W&wKJwD zWvnEAC95Rr*=^Ics*=b6fe*q2G5XOuKVKWgW;0!3XtliIpbP!Z-|##EaE52z1p7gG3EX_}9`R z(@Z=q^i3-_M^+1I*^_}=6CELwfWau@ATh{jViVif;&W$jZu6Sl5%Q7oew-nc_%ftD zORkVH5u>4)jH(s9H*|lr#@enBs?+$jVIMCtSI8Mec!zCnPcIGdWQr6$-^< zX1|Je#!8<_B5DG4wnV0sF_EX>_dTd1VR8%;%+PGSYzv~E?wu=28=3l0&Xh=uBS>5j&@i09GL1wHHCtChR|Ag% zbnWX#(w~$TatWM064_?rhi0sXu?06`YmORdiKf~yNbS^#9m@&wCu3Hi@khp@o}~1c z$Xeksu?sdA(_{YlP#8bsM<%&5D62s>IbsMYHPd?HQg*X{TtF`n#`vEb%7-oyxfqsa7Z^D}h$==9r+KDsa^VNiB^mnOw2zg19=i9arBR!?#2* z5aj67e&IZiRPLvFh@Wg6%WL!Z!jDhAnV)Wrix4aJsHdT+R1lsz#PqZ$U(pEFOS842TJMB4CqO9LB{ zG^8s(xdA6%NH0)rbFJjN%tk%gnx0x|V5)|p!EB|-F;w3Pb=CFkz)2E2wu89O#|=C! z3KE!Sf_isU6W%&v;{SoOhgsk)(N1(D{! zP$D;fGS*bkvZ7%`siE)kAYd>qxvijJ0XXD9b<`^{->ej!y6!yR<$ES}>c6B6mLdJm zW=-5yO~i00CZlTw?~nNoYPt7vT(0|4ruXt?fJN@T9OTplY}?ViC^E+q5yz1RB%&G& zggBsCFOuA@^`hRHS+8Om%&ccR<@U5Br|=OuBABAc?M52+{Q~<4C~;1EG#T-pKh9spTnV2VZkVzGj=F z(g>5u*Nuof@pZi@UtbWRj9|z5gB)52IR?7MD5>g?5+-%{Z*!fU8mZO5Rn%?ams-K0 zMNR}BZOBK3uZJ+yT*-otVy^e|tYI>Ey*^!EtRJjjfhg`EP_k&W7vU;zbUv z3a{>XAvT|0Dm%0yC>06E4Y+>SV?4f6-(1^LVw+Lqc&?{`Z1; z7Rzvl?gx&8&<*u@glih;nl{c^BcP?{c?aK7u>zF5R-`R)PsvbOlS$giB5616khBN8^G4VsYnz#Iv?fFb?orGR*7kR> zwvTmlOQ20AYqu0xJF#=tzFkLNwg?11)+i*s_h-MOYmAtxMq#KBCUyAlAJ;ihwTW${ z_e4Q@LjyL0R>H?cD!s2nBzp`*0vatz@2VNp9mFDDB)u!Vy5oh?`_XI4()+hMr1vv# z**F5KL*k}44u>n zEa(9bVZlku3E@Vdhg*$Z({f@xjbMw7+^N8d`nL3*L@U9;ZY>4FHPSLEOOt zaR;FDTN-mRiMzc>+${qj?%yVmpi&_GC*dr~@PpYe=o;gus#+K-gh?I#duE*jRhz`M z3Frz#>kPjFJB?0~44;5$kur6-!tRpa*RYO+$x+O3s{!Xn>Q~k^#ImPA$)eGc49D*n z=vrm89FHOUko!?M~Uwfh~!+#mJdL-N0fa^_?;f>9;k_kq&QGF}b)krr?-%TRT554|mxM9OCl}-?=p6|k*4Zd%~AaWn3jwgxd>y{mR zz6~;5Xh$h}GWOQAWq5;R_@rbVt~5G1+Wr3t6Xpsh8Ghn|GW_A0UZpr?v<%O5B?<9{ zhyhVdM%xO91cZ2lg!rU_ua85l)4$J8wXq2sM~s_b~%yrli|<0!Tl zyIfYU(d2#bhPZD&8(zX!`Q5>>VC1eKOg5HG)Cx-8p#n{*nkJ5|F+}a{5G? z1QfG_zALt*@A4V&bq|+6ne?41()X%eq3^{uYslOEQ6b_VZ(c4|Mkh;TH#EZP$ z6<*!(LT~q1ld`w_-TT@F;s#v*?f3Ec%GBmsNuFoJOl>QT(m;1q&je9!Ik5M+A334w z__h-`upV)0*h7)$iDgD0#Ut4499BLCMIWfX8wIKt7&`15q+5w=my7zgJf9+Y-juA* zl_`$)Fpu=su;Csg&uCf*@;PVa-lR=pTt`-S=^)3?l*NtUj5M1r~R*3m;836tkxRv>5ZpZ-N5^v2pH2 zY@eZ+LZjM?F+W5xg~pv1V?IDJg~pE;W1gaz*M1_+a*D~Cb^*Uz=zEzv2VW=gO;$$7#%uM7$wqT(dS;gYV2H<2 zp|WDIH$<4+h{-;{({Aq0USBw<>8%qyi_gLbW!>SiWXr*`G4Toxil@=J=&~%=Wthfp z2AOr)NqjJBjNAm@q1|u>-t5mP%kNU)^Xbv$501j;H^-Kr!c7ffpFFnj8m!)*Ed~E= zT)zMoF<^7yVL){@D0dq_HwOcdF#4Y|3*~UgUnt zs}NDaKqM6Xl$B2G4qg#2@>5oLb;k?+l$XD;?5F&7@cR&s8*u&O@8$88>CLs0pEBFx zJccnknwEllFbWeGMg;5Ag+?5zp00&A;rC(WOXRl#jPK*7UGIe-pL#PtE#}p12@OtyNmT-?Ikbe<&T9!RZ{HHy zbxv#p_|~}Pg{BcCt{SA!KVX?gqK2BStD&n|sb^`iZX~TSJ&cUlg#8Gu$c0zbi$eIl z=ff)sZzsH>Nfd{zQ5QFFaB-lXmqLew4+(;Y-&KuR_tVtXlO)huie-9`vICnedWNG~ zK@6|EX~Ei$k>$f~i>9Y*`GPs4K-lO!XKmtM;(ZxTc*NzjNbx~2J3Q3W=%MC&l_?FG zE^0;SDL4*;Iua(=V}jWW)4cY=J|NNjDgC00n#v}+#`vh(%M4P&1g-ll$@}SE90Lr^ zfb#<)ef}JL%|!Z~OqDKEq%-3pk-m#N@#Q}0X_3YTam^T8%^71mIc%ZhM?lDzeA0Va z$FntcNXMTT0nhO+33+_cE~Bo5X_3ZX7uwif4n*5n!T*B16}uAlGHq-LP@?VToVGt` zEbpcR<_Ldx@@8IDp=5x-2U%+!zJGk3pRY}W14gGS46XLG=;;mz%#^H|(HFe~<``ls z6bR~~1Ey*Pb%(Bq7dc=myt?Cs4w%NnWe3a~plh3O+<@!<`5qo$nb}+`IbgDRT!~}4 zzOTh9Yy$v0@}(B6#_ySis>gwq*mkJJuHT;nMo-f;1f8gA2ChdKXs{HanZojfiLJx@ zLRhOX#`Opt&(NbFwN%#*VW6048EODK6R3#>Qq+!J__>)s87sWn4wxBoz)VZ_z$jRX z4ml9pY|uS9VD9YM0rMaGM4d2{;W9kvB1!QX5ksPwjJ_3)6Nr@=lH$`-lTx*~BJ>o4 z<(DvdB_>N!{JINE@wZ_=mPnusidvk^l&)1xr#6y=3Br3HY4MppwD`g~NGa3e^D@P_ zOf8O`vU!L3uI{m(QzlaJ5ZUYnXuD4qbIKN!QJI{{r0hhIvR&I_9bdB_J%L%l2&Ea3 zRzQifRTdHGYq9#)#7~~D#DCaa-i@&kFXAke+h>(; zm!U%DT8IBWy3T>B&1^GgYlfuwG@G>5oRp=-6?T^ywL|(Kw2oqa_w!5}D_ks}H&mgw6#7wN=z|)<>?jrbVNEN5SyOJ>b%#EI<)lGli!@^4XCi|` z%SC-#iqDc1pOLJ^mEjLa%`stfBS?zhwIeD1XZywEIK8OYjQYXD+(28iBBn$!JH+^G zF2-l%s&ScO{00P)#P}+sJB-D#)oGg{DRcgGAAz^~xzJ#RRtjO~D6thFx zEuDjum>Tbtc8kPAJNMoECR5t6Ekvnj{J5xn!;tAG$Cvq->5p{ZdA;p`M$#tRq`|-+ zM~i$lNx`{mIT3hxVQ`U}1Xi5HPU8GBkRrcj z8%6%5=JFt?CtQj7LMU-lN%9gVb@=bY>+IA>ZFZaK3A1HMJ|j(&KPM#lNyPPnfef=K z$*BgWYgJ3A4I^QKc#$Np@M`1J`3)uc-S00;^2a(Pd3u(|Qsy?-N|HRAo?u(1pBj3g zg825JQ#yjd(Yo%bu#;ZurJ7|#{Z3EN!XQpU(^hTYfzj25ra=w?%uz66NAp5gk8GTt z5V?*QXgaKZYTDo%FmaxQX@$^~N)6vPpjl-k<)XeV$>&It&q~(h3ZOsiKyMA}+aXDQ zYR8iNI|oE$Ic171sSOh4b0Wq>F zB}%FW6thXf1Py#M(~+$?5%(g+>`>+V&p}Eg@b*bmcrpbZ8~seG{KU=$-nX~fiye6* z@R7DpwP_Qmf+%JOZI_&bl!&(d5_ywJ8yo#hwB6hnZJ*qlIYJ+K`%_Zpb0Td5iph9e zh3F8VJ~@DeTc*rm(A9a;Jl{`mFDvtojr3@;K|X3d?<>!h`JXhG2eER1%4lf6j*OhD zW?`t1!Peow53F;bYIEBRT%S8nn$ODVFMp0m^E(mQ3j`veD9x+pPr4!OkLf3Y&@~mSrSv4ANX=W6k`@SW(}W=JO=Y z=Ok-$WuBuw%p_QOrt(oIKAt;q0`G;&Nm?N6oaxZx=5 zB%->3iK~x!usoTb=ql_#8u)Rf#jqP#pDKNURQkMRnXaJH9CDzyCc%73rH6g1^sioa zA*D_kFGIffkxpL_F(``Jq0<*gr_WF0&~|x3T@iYU!SYO)+=R)JPT#G0xJ98(CQCQK zNU54pj9tP6P5d+o^@To!`oVLMQZCdF$W!Vvg*qE?OG5pY0SI-rCO9K3KM-@HaE3O} z{#kh)(nt7@o44c&;&F&|`f+}`B}8*e$ZG>5F9f>q#l~l}W<|^oekCyDtTiJt1-~V< zwn9s2HN=+CmIz{7F0_QUbZ7}}8PO8jlAP zw#0xnCK6c8Kh)H~w0u1c9NUQWKK*eX%v6bk2-lK~RV$2K)$_bWO>Ntb4IdVGa>G9T zaf{@STafIKQx?0kwOd!{t@$O)fc$asK>TsPduV%~9A%Ads*~iATNE)VirL|jTg2BL z_h2Y`JzA|hZtmftCtHiUK!rpxJGeV^4iX{m zE<3ni8hJ9gV?!{AyW0oJUAD&}CyFRQ^5#jfFZLnW51l92_n)WO_x#u=wkR|S_B;C& z?2kaD3l;mD|F*2y|Dr>&-|&Y#zOuBrR#NQQJQv?hY%SDu z6}lZ@g9a}!VXFquR$aribWQgI%X0ct>>_n6D0Y!el5z`SMZK0i*@&`4ihWVCWLIGP z(y#-SGIwLfq}bDeDfTa2zMX2P%&}SZ64LBTB1T0q8I>z|@2m@Jsi@f(X&8+J(JoW7 z-;7{9golxl=I*VZhvn?O*o=ihhFhYg6738d!UT={DV~wtkLClRL{U}UlrX8oe~+%SQzNydZDzkLk#=8fPk)gj-W7J2{Emlp zBnvu<8H&$-N$anxpFxDX1WFc-Hm=%8T~KPDF5*Sny=qgo@#*}A+Wj}5=Gy)L0BPPM AxBvhE literal 0 HcmV?d00001 diff --git a/canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db b/canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..ca814a1a0464be6c1b494b5be4b7e741777449ae GIT binary patch literal 36864 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 I4I9b*|MI*8pa1{> literal 0 HcmV?d00001 diff --git a/canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db b/canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23e6cbdbbf2661a0429414c81529a321e2823ba0 GIT binary patch literal 65536 zcmeI*&uSAv9Ki9J?4~6Ju|-9Sm!M71!?v6Km+UR}EWU#7p9w^*Eoo@I*$45E*XYfI z;Kg^aNWrew*6deP%O+nP&Uz=Qp`6cEz;J>)Ef1R98}ni;tK6 ztj^RH6p4}_kI!3e5Rbi!!`5QXh2Rh!* zLRW>AlI34}E%x`1UwwG_TLy*Yyulq;`-kpfFt$zOY&aP09laZ+)wLUldJsk^XXN_Q9r%2U3JpV8^4&gGmmcF-#jbDpVW2F}v281EMX?n+X<&Eab}R8cF*@)u8n}K&ewUlm3`zdL%F@Z z{i@@iWkWxfm0@Za0|E#jfB*srAb6KGm_}}etE2H9t5kLR|1Q0*~0R#|0009ILSX%*o z{$I%+KlCiiV8!R}a{e5kwbf+c2q1s}0tg_000IagfB*srlv6;T|I6$de>Wu|3VjHhbwg+UTP~BZ65oz%ndwpQ9?e&2%X6jUkNW69k zLgb+1;Y@6Tqu?Y0$%{!s2r*JnB7=x>5SS>55-cUkArb^55RO6;5*#Fu!1@38>aVWq zot}B!J=1R))swb%x~kr*s_*;X@%`_5M~#QC9jVon?C;tm*&iMLe?9w&*RRgby+|ij zIQhK|en(RYgGVg7!qUr+0~j-Z^EBf;7?_a zpOkb|reu1O*CtF(LF7K>J_ulR?e>xORfyt*fs(}}?js`VL_b{}BBD_sBEMzA7nmyA zMMuOdCZ>XL+yp>gXmM1OxvhS!_W61}edwX{4JeMy+T5Gs^C#joG*Txqw9wTZ&Gv0y z3sT?IEWo{0Th_;v}>j&GFqtvrS#s z;Qmna&DhnwuxCV$T|0lm@LVs5gGjSeJJ#$l>S>;*tOjtFTa=(>DiY-7M_PcFM)q#Z2ZdXk1`4qV*5t;+-ySfl+P&Nu774KL@4PsNc#CD4rg~xgm;R`7&*yfDz$Fo5d3)*{>>@*9sJ^qkBZ`0 zV5E*4Xif@-Ye$x+p)G2V7t$z5++J!%d;3!K#n(f!{Y9R3>(#ZjwOiL7S^I{9AWsx1 zT}xz1xkB{7Gfe+B+cRd?~^raCG@Uoq7qE{IH+oWd*T_+@CDVH(mH31<8kHu(AG95$Qj3PWq)#hA;z7?Q2_qVi%aQNcMt zc8tFWYBbuoGTL2{E8=y3h1aflq3hx27yrHScF3~t$nL%x8dZcN=HzQS{6g;6WEbDb zPlC*%dmn?F-|}vL`e0~nMcL|?JO&o`7?_C@8m1p=y(lt4I7Pk|MyaPoiLG0DVg=wj zn9gHh`<5Sgwyh-&xFhUd5@})BGd0sqEGxEj*K>XF7zimi;s?2$%eZ_Go!o?zpL|zF zT7Bqq4gR@l&j){qYiWTO^uRCS_?nlPx|W8fW1x^`uMnH zQQ}2kN#=qsS4C&|=O{I$@|6G-Xxi_8m}Andi!?C^X=d8%JSG%Eb@G+Suh>Ptg1`4( z9SM_DnBX~{YUV3>WP%!kUW<|~`by{={m*EqjG944n5gjUzcx6E%{ur>47$S58u&`; z178XGpa}cf{(q7AN)97}69$61=qsUf^nYcv18@lw#EX0-bdLV7@EYKSzLK9c{X;v@MLA@rH?paexY1_w< z2fC)~7Ca&FQ!VsCyZfP@>Shx5V%M2cN;gPK*CkiEN@Kvzto|alZ@~wWls;XO(%(=g zm(!H|8l>K!mVaXkG2Je={9Dpgn#`8}&46a!^1pFp%YS3M#($BkFK1G{+b{((AjM?G z>q&Sy2+)*WEOFItNFz%oSD3MKu1@d7)xXs-mk0)e9KC-p>+ncrkM?`{$=2z-M1LA? ze(;z0X)$8ELRl5`j({h#TNiQ7bcH-^U7_&_-8qpVGh)M^x-0Ahoh z{M_?zBi_+eyqrrB{3+&8CSAfz+5yX0WWE%6xm0P0dhH2llOD26* zJfBkf*e0csCs{3+=gO*0I$)FVLhJtVhxz$#L!^~SF&UccJSJ2@je$2Mzk^?#@e!&Z zk#46weJlFn>oHaGrtIPHM6_xedO}TCdS+$S11bp<6;3_B!Ou6@h;6#U&>FZ?8o4{A zE@S-h;LR^OcgiuuaH2p^qtVjPlgemELs`U&+$j}aqwzv_%8wl_yHmb!c;HUKX55cZ zL%rNme~hQv9<fS*1Xz8B>{492L&0Zr%46H!N#j02)EU3sH=6Y|c>C<8UO z`X%ROHtfj@63ca6TXS3;hTo*FsfCW2Xs#YuZqGH1(DJAIT-SwxJwX`3_#z8^q;9AM zI3FvGqc}|L*fjzi2js;th01j-Eed)tV@r=CE$9V~7Dc_#w$s>8VRRIg$E>NKXGKFz zX`=J;7|6GVWbdVd1>lSWVe(phZdQse-h6@c@+0$;Ixy)0Ymok7QrpdO)H|c=B)%VW zi7gMS?IlT0F_~(c(M4+e=H1oy6QY8^@glPup{-c38X4gQdmwZPYkOu}UHbvxoteBCO_*B3-6BiKiC2vdLLAV*uOoj}Q>5WRNHYUp$23^|(H!`*q)rfo0m$$^8YH~eV3VTcb#|A+)Ej7e@& zLUgSvj0ac}CWsfw?Fz2}KEr=u?egp^%X0gnA-VnJ`*|#7eyd-S+u6z%apXFl<+-qs z2dZ2nO*K#V3@tSRCvZUJ!ulT5$?aZX_%SRZss)Y@edeCyXubhY(9_U0^rQzJ*0}Vi zNEgm1xjj#ETa~Q06?~By2g)@}3y|EtZKT}(V0#kDO%GXvk9#F)f%z!}_a)nDfx{96 zoJ=in7n%xbfish6foFD-14Ysna?(WdBgGsNa7Rj{U6Ls{39QK^?QD^>J0>LUJ)?Oe z>@lltWyaB+7bzYo<`8R_7Fj#8B9AtitleE??as+r`>Kk(Y!e84Y`l>2zBId!u2qe_ z0dRx~!ug#{D|Y8anj;jGp}Ede1m!(HP~IwZbjy?8GL`p@2nQ+eyZsr0@UksLD+323w=y(^;~4Pp^5lHL_w zqw&Jp*?;9X$YO&o@SaBEa({bdRmwmx@Lq%WQK8K zSY|Sv^cHC}g7gmKFf=D?XrQCn>leZdAqmB+u3P(``~ue5&W3p&gI036q6Kl zh`3`#;*LsWP9|~p6^Xlh4~YBkc_gS52>%5*ODgw+xQlJE4)VIg);m-L0N|XB#C@VVUAzpXWMt@Onm@io%;=b zy1O7EBDxDA8d1yxAl7r(ofqj9?h1AIcU2KX?y4eVzq>+X`nydbyo6?TcZH_vcZC+7 zs}@Y8t$i={1rx!4nJe=Z`A)^4Lbm+fJW+0y)DMB$Bn(I6!jDBh5ezyfhZAf&y$@IJ3gm7eNw)SItBXYcv z$SILgnKrXV!bF8%f4#v@)tapx9B-|G<848z=j|ePyt##~944VQg=d56b;5dz`M{{JvPzj$XZwY~%9-TrNUS~(DYx`Q$3 z=U~hlIv7ihCG~2xHbj9TeM0+UR7(?2$HjguO9qGL(H&zo_6%}mH^-LoQQd{de zA*@Yo*`^l6u+mbZryi`X)bkR@%4>cmWA*IIYDydXu{>~ME7#Y z4Sg?_!Jka}9xT%L`hB7AmpOyPLebfM6+RsTU1JPY9>EeOXz%Yl$4=F{ZISj$3C(pL z6P(@cva`D-ZJ4P{XZOtrM}}r=&v*1h+a_-}HHAuSRJP5`kuXu=*XK9bsamrQ-foMo zu##Y~QCFM1-K|DVs=HfZZ^_?yR!73*6h3gfb&XG`*Q&bes;@#kg##s9^mbQ9I~u+s zUgYhr@EVO5db|Jg=gQvhA9M$m{U%)hg^%+1%HmePB+qG~B`>l=+Y3OCdlBqP?nW@% z6P7vdnO@?i9xQ|8OgY=rGVR3m<3NK2iecqs9kvegEi=^;-!Y<4*Yzl{L7v0DL0+I6 zvDUL3n09Jeo)%hms3mD?`o8Jv5llNJ3t@$qo_$$OStNPhmaNZ}Y_nn&idNZ`qw zK#@F3F^5Fn)uRYJj?3uIkU^OQt``Y>!#)!Dr>!;O0bR1RoA!(EptG1U@5isy%3hA*L4e~?FW9Ug}!TPeyFFqnS{OAb&4^cU&`KAXpi$^ z%+FEGu?iqW=))9qEZ-u=d@IEqYve7)JVP+pzGv=V+nnhguXSj%n(F z5%uEfhDRBJ?Id~+=F~eTI2zLgJf408en%JOY2tgfg$uu1u^A`25yBSdu#36f3w15f zLCadUllH8@3v53q7wLNTWi@4q{E>^29g<3>|M;8D=194NP4Oas2RRRQ-t2hPl8~id!L4zAAC1IEvCxFh8T&> zy6p)>Ah*C^e zAFXpEfWmDF9V`p*j5(O}oH2}xfQ=L%P;Mlc5$#UU!oW&gn7}!Laki7 z#`vfTH3leQqQb9FZ*Yv8OFPVaUMhH47THiRNiLR)-otVlF%=3#Leaxg8SQB3ig=NS zrNV18UN{o$iO0$#!5)QLh;ZD5>;L-^9$#7B>X$q(*+eZpji5nqxEfTV;P41z9R^?} zumhjv1*VfmjvfTld0vEOU`;m?Y?(YSOOjnLN;V#XV?LWBvCU?Tkmu$8u{|&Ub41kp zLJwSn@B0T*^2<~BUJiq0lJBKcKO|4e%T)5X6?g7?*|)8@k+Z)eDZea|HHmH3x;hEb zAwX-F?Y=iGE=UfWyVu;oW9ki8tA3ZaytD!Ed^1nvCryVqO;_-pYKNsQmTyBL20$M%Q>0==llspUi0Dm6Yp zk}y%>)TcK1`R4Kt^RkvnjW5B(ESYj#VQ)G3l3DykXr01`W%W?&WKC6<)WhmA^(u8R zFY7w>w0aw&DiA2yq8hJ^b~JEByhx2#c#X!3&CB{&S&c6oAJq4o5cNk%jjwF=OKLou zm*v=&pPEJh-t3+S)1e~peuKALOFTdIQr$KqbL6rqo(rydaDOK$tZ`zy;0+IqFw&C1 zj+59;{lxQNfP;ukn{r;(3aRmB$#Pto{ebGcb;l<6kQ#qrA~pVrOT`p9Wz;n=uuqa6 zU(p5Zfnu_{`qkXDv6~ibbA%p0%x{{}QKlZp@zA**KO@w5;=`h!YOH;?iQ}T58NIFg zpj1H8-a8;I4B{lT9L@1vST@Pj!5e1;Fm=+5U7TKHM22QwiLvL3$|u_ir!_5wZr zi|9|;hv^5`W)u^tm14;Nf&T~-H1u!2i=XeVh%`?qCPQ0viDhDJ+mTR&%UgttdjCxku1FxtnFtU zD0c+-TvFZ-POQAYepEz#(?i$bnIXxzRS_o(#bgu?wD+ZbNGX?bN95@^nKBOhRdX44 zr)WC~rX&}&H%&^0v@Qq)KGOE8oHmghN->9MyQ~i>aoR4O>(u4(CX+VoSIud=Ybx44 zi_^(341_*je1P=#sz{MZF&S?sdCDM5juzLk$@TaACDbFHuNHie_4j=U2kGy-x6|KW zT3p))0j_Zx%C%Y5BhFAEdqqp%BmurE(n_J2%+l96#9-;GLjrt7mI9Y4z;8!5NPzFp znj=L8POYF4C6$3Qn{P9}y2A+d)ncFc3hxw`BEf%16!`s!>@I;wC@S#E zXh(xq#ETSoh1Y1juuuG7K2h!ye-Z#A95>zt?O7g)?Fb)A%6xq) zW&YH$-PJigb`73-8Hv2k6x#e~A5t2KyvwAiJeeX7JL__hcXnEl2P=j_dPAW|+_$n7 z;<}wF)cLVKJb@E;6y>=z=429wDlaGQ?mZxmE%jEWuE?BA`n)4ja8k@6eSU1DK5yZc zBDLeRY5hUg=R>>IXDbH4Gy^_f9s0+)KL4Xd$V_{=KwnmWl`FMMzc8C8gT?aeJPGuU zNMnU!4hi%QHY5x4$4Q`5`?8$V_VJfYfzFJJ1o}R$KvPuc)EX*rQdu~&F2Y2GU*|Wt z!8JQO^pSVAQRu5OB>E4HLSIL0cML>AQK45xI~uYgUZl_~yhh`N3f=ijuF(G<5P literal 0 HcmV?d00001 diff --git a/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db b/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..353763cf760b77213679aa75220935ce25895936 GIT binary patch literal 45056 zcmeI5UC13r8OP7;IcN8rv+wu!S6(7^my$YhXJ=+Vu8bm5*7iyTr3lXM&SJ1_N)jx+ z(W)1{kRo0bgepdQ)r%?xrAQI#N0CyYO2MGuM~k5sttb?cS|mP`yvZceZ8vRB@-}%E zCeQPp?EBxD-_CjFFoHzLI+Y>13 z`;YbvvLTcsdj-tYj=kG6HT^3THtj!X`ickT)LsEIwPQcFzYndQh4O{H0%mH*K5PH@ zqrHO%i$f<5y+jU8t<5*J@bKtiemHsgmO=l%lgCdDKm5gGCrYCBKQ8i^5%bO^! zc@@KZ-b9mAhAM_#RQEbw|Qh>l^UhvxK2yjsEAXcb4696Qz}`;WmDBG(V|t! zC4H-uimDQM#b^^Zj0zbGnw62FbtGyLrFF@5-KsPqj#Xl1l;|pvv`VuElr*CyPZiZX zi*qT`MsnGzG$h0-#k@=bjD+7;f(l-Oml{}go+_c@D#_DUrT+L+J>OsRKj44JPyLVi zclw|8EB{{q0sl?n|C9Jp0 z@t=46XB_`0j{lA~`6`?+*}ZtjCkL#%W8H1*ZdrHJx*OJAx9*yCSFO8Z-DT@8S$EO8 z3)Y>t?woaJtvh2~-?|g)+KxRL*;hU5y4D?9cVOMVbsg)Hi|+VHZ!%e#>`rc-T!s6B z68nV!>F@4Ug$yow!;7AK!Mon|J$v?{ubzFI!%WM1=l}nDR~4_11dsp{Kmter2_OL^ zfCP{L5>Z zwD3QW01`j~NB{{S0VIF~kN^@u0!RP}ygvz$-elMO>ESw*>%acL_-8TiPncM1B!C2v z01`j~NB{{S0VIF~kN^@u0{fHzeEvT$Uq7^M>PH;&rvTUOAQ!#|=(^PaFN_3`01`j~ zNB{{S0VIF~kN^@u0!ZM-BtUxZuKA9?ze2h2@c+X6((K%1yy(vOLub$@qn-zk228*G zWSg;wC)2+WUI7Up0VIF~kN^@u0!RP}AOR$R1dzZ@MqqqL&-3QIRd2`ppm)e)Ugmwo z`-FF=_i67guk?<3_j&hwU-AA!yw{2M8u88$@6W_LO}yU{?>XZAf_P68@5jV@0&C?Hnla2>H70Ubz{I(`Y)s-V z8N=K~V={NanADv&M!0jvNOu+t%iS4cGS@dRa(7}(?2gTgu{$y*ay|26 z=V2n)&`Av0))fTzD2EY2z+jLy4W|quHG@D8S>2;xoyoL>lQk&UQT4!PHZRmo!&MUdeg_SYevM5>{A z0zbw)Nx^}z&dXpWi(`l_kegn_F#HIXq);y@X_Vxu%BrN!^DI~vtZraOK82S>1*bAj zRR$x1NJOT~h?mfWU@5Icm1%RuCd;U(AeQ9}lFgS&$|%WL1&s?9IfKUKscD|pkb}OA zX|C&tLWGb^WjxnR2McwoWL(D$O<}l!QIAzr#j2t@gY@zxuQJu}V7_iroe2RgV-=hg z!8lu%bwgEBHEEqzGE1spj%j$lQUdz~st@B?1og_{vKp$CL}l72A%oe50ft6Gy|fv# zHPkT6ayVb6Fl@3?2~h_#U7|FO|Ik@#Ud4L9j{pAWx{Uun^NQC;#p9#mFXQ5oaq;}5 z_}Zj+$}j#tQ#>|P{9(5E)@SSB!pFSuzoYQj&fo-CQqnq!R4icf zTSZl{1AAy(#tEZk6N46uVHXYN)l{iSD_tq08Ehv?!$vDC6ype{+^}lRVciJJ!ZdEQ zEGre4WgcvGnVkolU1r|6{>Sw{?*F&VLazP(|IFvF?)v}9`Qnv@;(H6li;GvZ7jVM_ zacl?@Kmter3EZ><$gW+TcbU<*uFeTLV3oSe`dgKHWXCFXSsAn`9Xd<4tx}iOLz~iV zJGlRU>8F{koN)jDvQJlAIpO~QWuNx8a>D)p%bq@K<%G}wT=q0vD<^#Zht`pRhgIN7 X6|U=6PWy8I|E8U!VZ)IC66pO8{!Le7 literal 0 HcmV?d00001 diff --git a/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db-wal b/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db b/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb?9474S%)TlDLOfQ`Q?lco6%m)@lti4UIEjLa zzu+iBNyWbaqM$*dq=g7XK}~VI!c5|1b?BUPijAG)JJMvv(daijpM6MP+xz?O+s{Z~ zJ!T!3lXm*@Jk2d)Ss%QAbHlWz*vAe2o-H8jn;VuP^K@OGR^4<~rn{%J_~#64*1uwo zl|a}1Y1K_$}sco6gFTt-t@WwX#x<_r^bwac67(UkCO!*7#a_aMg8g z?CtD(FTS_EyJxwZ+qGJ8-Hlo{E9-78H|iDtXk^lkys^D=?~&foNYRemsy5X~ih*jZM6RH=N^h^=h4`JdKl> z)>W*iU`;~vI;*IN;v$V}$wi)7uDP1*_pfhHs_VxW7IV>9AOAtzHqxXKNnBMaWirx{ z@<`G`R1J+~o`||ivRH_jk?s(ujl`oUW=t`fF~+EnoYNvJa@s^`l^1yu@rcigv}zN( zjTDKPrCe4tt>cu6qM6XVNjVj&&L%}FqeST|+Pzn|N(gBqC21tGL=`k{xZb8%DJoga zXqpvDZ&Ah)UeAg&{;R)k4F*pQo*TR{$Of+r-X6R&m<+ZC_uW$%(3L}o-Xy8r>=oa|5Hp7y-co`2F?z^2_b z<>BEcA03`q?i!945P$##AOHafKmY;|fB*y_009VGLIGlVuKD<}ud8D(_U1S_`lRX- zB4U#v009U<00Izz00bZa0SG_<0!uDHEE1ZpUib7{|9&s<_1%Dl-31`a@}-C+-)Go7 z2tWV=5P$##AOHafKmY;|fWUbLi2nJB`RU=)x-S0x|LMp^o$upZ1Yoqg%xu09H5150Vak31Rwwb2tWV=5P$##AOHaf zJeUH+@JVTO7MIz4p@)}F9oleCjy`>w}2n&yCqTX_f3=eJ=3IqV4B4DO~ZZ9G_miR zhWW?0SA5&NDtuxZL9AhDQqQ^i`46t+dsblg&9fjDQHVEJ&Y?wY8s>xm1Rwwb2tWV= z5P$##AOHafTxx;->(*%W)@Wz+D;a%FMz_i6cYE}`J^I2PeQb{|W@*DvXB3u6H8FXC zxul|w1eHbI&|IoXt|~5@q8jQO9ku=kOQ~uyooSbejOt9pF;$hURiUy-rz9Tscq*!# zH9Ea;rc)LRUNM^UG@%n7H;N~599QWukg683lo3@j(W7diXr-8-v@3`fcZuyH>-uB9iIRch*7815up65A2XJvU_wMf5>G|y2yE7JIo^x8=C9O*M7 v{X>E_(mZFw%t(I|zl}7{88b7|pU6Lc(fP-h^UT9mK>z{}fB*y_(51k?siA8c literal 0 HcmV?d00001 diff --git a/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db-wal b/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db b/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db-wal b/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db b/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..b23ff1a0bd8733f860d3bcae68638463a53e6466 GIT binary patch literal 36864 zcmeI*O=~1Y7zgmKewpkHio2r7B1q8fW<6BWUHvwFiz0gxzk*hERl%scS(4y-GdDkk z9_H%750IOJ;6?BwxD0|HKs?8%W@d8;$n+NQcKPrs%`x-5Z@zjqajh%8&gePjBnL;)-4T+it9E zQJpR;HNBNhj6a}gU#I%TvQpDq*|7MBA9?rhfBfN>5C39SZ!zEE6-Seue5abFVes_m zV0v%&^8@qr>q#q*jQ(t2n?o;rOwD!}PPDSyd!beny*-#ORnFdDEEVid^o9MRdB0-z z!J=QdYxnmr>=*{^PCk3v51+`#W*Qxt!=ppbr!58U{ND@d0KGx=?`7@tcx~ADpU3as z`|nZxWm&1|t!!fagJrbG)VkVd*|7MBpLi$ig#84UK>W!n~(H?11;A}ea%=t^>HY#}ODnI;q7-Sh7t&%X_(4>DoPN?6OOljMapf;Xw4 zHOabZ8*6QuOOLuqQHZ+8xXmSXGvk_%g&1?KD`7I5Wp&z8H>nDh*0du?p(sRM!#OsmoxKJt>})8rue zhb6zVyCpi0mZ>M&r{K8!`sZHypX2hsw`_RXmqJMRYhG@ zanNPJ#D1575c^$574_;cL}S(|M%HBn#H`B}hkM>=^w#LT(ZkUz91|?EsRAr;f7H9e z!n1qP*}cJV@#5NVPfx%9?)0T)?YoE_fB*y_009U<00Izz00bZa0SG`~MFHkT^Z5xk z9})OBHwS&uZnOD!RTsU2=O6$92tWV=5P$##AOHafKmY;|SVe$&EO7sNeTP2!uleIY z?a3;UU|9%200Izz00bZa0SG_<0uX=z1TGU`UOaR^J$#4i9Y5M);b3i_!da(Z7+n?# zo`(PgAOHafKmY;|fB*y_009U<;4%UF{y%h=A9~kyVE)=Z`_DK3;yOU?0SW{l009U< z00Izz00bZa0SG_<0@o%$-~R{h(#y}?8rga;+Rs?0Yqz>RMS%bWAOHafKmY;|fB*y_ z009U<;0gkie`1k;P;QwfZ&RLEwNldPG|k%B?~#?~0F^V-p00Izz00bbg=>q=)AoU)D literal 0 HcmV?d00001 diff --git a/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db-wal b/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db b/canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..cd626d6032dbf745d1b355ccf44ffd2f44e1901d GIT binary patch literal 36864 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 Q_5T}okcJIM0!X0uKNnzC5dZ)H literal 0 HcmV?d00001 diff --git a/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db-wal b/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db b/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..5e9d62990cbc2a9dd152c6d2abd3206d472b729c GIT binary patch literal 36864 zcmeI*&u-f`90zbxe_Ytuuol}e6a|W4i;V8TL=;6yyk%XFMPH%Q9}4icE=3ZoyDjgr z9{d`)bwGh$_6{qI0(*cxK=xzo^w2qhfFRL7jLpMQ8UakVSnyu#nh1*+!7ggLU1Vs8;t^;QQ4a{eDLIGpULoop5d{_~@Q>7CuD z2ln}ole#>z&6EAc9FKDVsvo$z-mY#h%f0n;HX_mGN&)TK4ujcK7 z-FAO}X~V#;chu~2FZii^W~bqiJv=&O9<9lDum8P(2Iv!tcZ=wAyw+^~pXKk~`|nV^ zS_D1Fowbh1k{y`RMo<*W%p>7OGTI>B5M-QIu@k z7NSt56iHRcxX4o*TbHa!Qd#7NS~RtyEOaI+Z3VnA=6E`Uve#^$=$K!+XUwr&K zAOFV3eNO((T6W}hnFx{BWmZLAmnjh+o zywk65R@FPK7XlD~00bZa0SG_<0uX=z1R$`v0<`}>aHk)-=ThL_D!=|SzAh(4*xcbn z&mjN-2tWV=5P$##AOHafKmY0SG_<0uX=z z1Rwwb2tWV=7Yoq!C*1W%E^dHF)=nVux@;$jc$X{T(D@%dcj>vnZTwmB1|ZJqT10B? zxX~d9KmY;|fB*y_009U<00Izzz{U&E_MgGvBmD4U;|KBz351@z=5vUxEmtr@QwTr+ R0uX=z1Rwwb2>cfW{sA6uLB;?8 literal 0 HcmV?d00001 diff --git a/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db-wal b/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..6863d3227fe47c0d13d2847883402a20102a8384 GIT binary patch literal 36864 zcmeI*yKm$~90zcZpKF_^#G~MZ7I9voJtlbkc11vlhXp+)evC!LB{?M#Cn`>&pyDq$ zicnJVFMud$kSJ*(0#Q&?9Ir5wY+?@G=A6P=-|-!3GPBX>H=d6l(t3CO`}UhpiKRTE z9G8=J@$x*)4WcOTzju8@wz8(|6;9~AYSMHS6pWn}BOUs9&iV!k*3k<15M^Zz=qv9T7eB?p&v?b_bX zzVX7l+q-*;zPa7-sjhD{RXbhRn`)z(nnxq!ZsfJ?ojZ>-jz&h^$gOgd-!Z1H)obCw zB~_Or_8-{&V0Vviu5F3QcNJC4smb$yT^Bp(VNrit)FJoR$d3P`^~-DjqoRJfsG=FH zjB)+uVzoC!E9;PDWb3zIQHtVMQhY{=@73ZHwHR{kca2SqgV(j=bM-QdgMcRuqpYne z8Z|YeS;9-2SG(7Z!QZSfAe_dKan5QeMSvLc=KVX_PiT zEm@vXKMd+TZmXcpgQb!FCR!JXRgs7l<+S2Fq!G(=n&o*(gEr2}DCXP`o28NdAZiz> z%^Sx3vY}}#w<&95nzvC#8B5YStdrW0(xs99BBYDtC#;HtmQ$8S0gd7;qvCZ)+p_ij zENX+&ua`zTwAU5aeZqalecnyom)*DAx82&^a__pQFkmPF$2mQko$kPPCf$Fnu4{H( zqwDHjSL?cJ*CnT2vHu5P$##AOHafKmY;|fB*y_a1RO)#n9!)kG80qy4suL;fNl{n-{{Qr6G3Q+d#zO!C5P$##AOHafKmY;|fB*y_ zaE5^R{9l)kA9_lTA*%c-z{(0ac@EIZwg3}D00Izz00bZa0SG_<0uX=z1ny4(qL_|+ z^zsj)+J>oU#8M~ndCV&)#9_>5{t9Nsln{Ub1Rwwb2tWV=5P$##AOL~;TR`NWu&jry z$E{1&v)0^VR%X3uy(*swfHH0Y^Z0IwX^WdCeqc^y6PcE5GSiezZW^*-rY@Vr)MOKy zs%&DD$R;I<=g8D^x_JHru_u~ksJgPE?_m(NS5}^J?-pzw1Rwwb2tWV=5P$##AOHaf zKwyLd_G`*)_U3G7_6wPPMP@h2>^F7xojUtmoqeRvE@p#0hx52(Z7wnl^GsypEu)&2 zQ6-Y|woTTs)-O4aJe!AUmFFVKZdC_~%t##2(hoVUWAV3c{5H)RZ&GHQWl5S+p0y%x zv7d|aB44q{5!{At8phnOV$bpe#`C5WS$i9ix;F|UpJsj%&`{(N_A8P7H|C9JiqX7H zgIweWmNO=DM$VbY7o1gT!xNU*sb}=bl64k*dE-C%r@z*U zTYB+@Ui@qnH;v+Aj(~B_LYywkbDtx0S(fK3DzX0+smD>gEYkdUGU+1qIntL#`jc2) rq&{cEvPf4HVs?@GoH0uy5#%4g==|g3JoB(s5P$##AOHaf3@PvrP1bhx literal 0 HcmV?d00001 diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db-wal b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..1ee16e41e39e3ccd259ed4d184d64f92b39a6bd4 GIT binary patch literal 36864 zcmeI*Z%@-e90%~bwH?_KBSeiMCT3B#;DZCY{#pBM^4RzmwAWsfs)!kj_)K1i5B4^A z<^vO-_#PyS?*o6gbv!U&%AljL?r$Im`1*eVnH*+JlUWq~Jg6$I@N=l(T{?|D#FTB&0G^*q}ns&$lE zDwcm^mmTxtiVdnv|7+`;^YIa5KMaFTIwMm?14o}xMjHX0$RgW`h3_Pua0AZ~(v^Wo zQsqhM^?X0@*y_LM!ILk>Xv6lpUF9dXuv008o5Z#Vd=-gMs>lsuHx8s?)J(cTPr0Fx zN;$%{!%zfa7>RD`1(EA1wc{kz%%P>U*9}FOc75UcaaTl2*)*g;_7dgWVccVlKI?Q| zbq1Ylb3sS*3$%HWoz~_>jsR*^;Bcb--)uf?K5cF`=N~rKtegNhX6JNno-J8tOLhGx ze-+B<>FHOBi%S&-i7`L`0uX=z1Rwwb2tWV=5P$##AaErC&MZ^UMKmak+H8K}N?p#q zGM`+lntOGu2muH{00Izz00bZa0SG_<0uX?}1p=IL`u~5%9$fJGB7e+pcKTtFsbX6Y zfB*y_009U<00Izz00bZafrSci);9F5hmR?4`0_u^L=?IEW}!UT7z7{y0SG_<0uX=z z1Rwwb2teRY2+;L^Q$K#_iOz=CZuGGPeD)lmJ0XiCAOHafKmY;|fB*y_009U<00Pw! zpzHr!KYID30z=}w(6d`BFj5Qw0uX=z1Rwwb2tWV=5P$##AaJ_`Chs4)T|>rb3kkFf z&8E=vAGv<@+}TSi3iVx1BhDvp@hPWs^a=q8KmY;|fB*y_009U<00IzLVgZ`}spGbb dWjp{Z%(g7!Zb!}#fB*y_009U<00K)b@D~q`<$eGF literal 0 HcmV?d00001 diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db-wal b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db b/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..623da60daa7393eb2acd284da872e9187dab2c1d GIT binary patch literal 45056 zcmeI5TZkn`8OKlcIj8%a({sPyc33gpgpIX!byanDJ-LcVXp<)ulpt7r!^LbiWEVqT zH0nbhB!~|IA&M(`%0rZZ5+n%G7$ii95^z!QlHihuL==KZ46=T;JG+&Ybkdt-F3x@p zHQzTgJ^woO>*}vAr{{dX{?&Jh*PH8IKCalEZ?DJPPkOyCf9c+n#+t*qZ1C&b6DX>C zPxcJ5A(Rt41XT)ExB7%pKj`GU+4gtTCc~F*?O(oEZ)$WM$5mR;Mn{~AT4}12I;E0jTsCFJ zl3MfzCPtha-+8*!cU}$`CcK=u#U%r)#EK}X%S6&L%^E6X&1k_>O>3UTN{Y0RT(&9= zN#80(MWw2OGa9EUqk=bz>Y~nQ)Wn76qS0BcTa^aHu}U#7Qq^b)uS5$_D!@xCMpdO! zEp%KaDs5Hj6JnKg6f@bxHD#3mPDRS85?oPLD6Jc*n2wTGC1-qF&+}%yWpB&-pm)q; zUgmwo`-FG9_i67AukcQKcYF7GU-AA;yw`~LD)BB5?@z=#PrTm{?^)vgf_P67@5jV@ z3}*3%|8Tb%iz4M7F(z}jj7i;1Fg$TLjFIlTF~VIlhP$iA#O{hQ%w0Ana+kow%3U-j za~F(B-FagYcg`5;&Ke`!8DqFRZA|P=8N*!Pn8=-gVagpFler^fQr9ykab07iJ2XbP z17o<`Hzsx+W0*^fiN+^-lgZL#dvf#S@L#?gsD-4zz0+DUxatkBdhQi(zmZ(L_`p{$ zzRh8#WxdP4-|v@-^&!wl+7`*H%}S zmlhZ1=VoW7r~Juy5weE^_m#w>G-9_szSa;sK zbJm@;?u>P(tvh91-?|g)+Qd4Ok^QM>UDvup>kh2jx2|Jda@8fhVB4ggyBR+JVK82u z8P0DlPkK{F7JYYP+S^=TS{uzRklFsq9^`W*!%jJe_M(Gf9Y_EPAOR$R1dsp{Kmter z2_OL^fCLT|f$^=qFuX0iCw!TNKPTbCB>blnKJSE&I^j2*@Q?lQJ+(IQb&*O58E|P; zmMIl!#%QK0O=Z$lWhIm@bRA3@23{izNHeU>7sxuCWeW20$`k}xp@pb|vCtB75i3Qb ztgfiYKu{}LQ(iVIV@kv_V!T&2aUF9Vc&R8$p-M)Z zxPeTT^2yjLb?L>e zN)s}&N?m$-tJ0WwR;kO~(5f^du2t%C$FwSWn16h)^N&wH^A7R}4W|q;r!$>$ zh{aK`$|T(6B9fFtET%%Kk`{4P!muD3u5=_-odzo!x?3VkL2KX!BZ7qZ%$u4Ps*#PT zw1O<|!LsDBjv^CJ;ta-(NH#F zkX*jtWu_Y*%nMe*AR<$!LX=P~<5XubQi()lbrJCba0GL#hUDfFcqMQejAs!4+9Z)li+3OR;f!=Y*ktzOIE2%#YWp&=FG$4*u z>av1wRq7LBmAb6*Ta_IDj`wH&|Ew22;)VYih37}%AKqs}XW_q4%;e~bhU4S`@g zOE|2=vIe$5BiQ-kDXc-`CZkzWaG^w{5-o!xC9G$`t0<2em@9JzC%~o{t&&K`0w%v@ zR0dnHSIT9aFj_Qb?~=u^TMF}Ps&!QBy3|H9*i3W{OFLL7#t}@pVc$)`x)GL`Y24JZ zD0N&ED%j{UI}g^o%)D{^kL!Qj|A!kK_P}VtQ%!50#Y&2_kzDTm{{PhH-{1BBYcJr?1aWK#5Z)kB-oEnB$%|K@iyTRGwW|26NfwsOM#|7+guZRLdf|JOWy*2)Q=|GDOA kxK>X1{0}^+78ja}MrXBd<#ZtT|8Lky8a5mWAc5Y00n-m!jQ{`u literal 0 HcmV?d00001 diff --git a/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db-wal b/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db b/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 I1pb4-Z_s1gfB*mh literal 0 HcmV?d00001 diff --git a/canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db-wal b/canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..9d6e6a50c3aeab7ffda167e4b7138308a1f2ee69 GIT binary patch literal 63691 zcmeHQdyFJUd7qx0ncbP4ecbwNAAXz-+$_XOTiw&$)7?`3*!YZnKA+F$^ZAK6uAc%a ziOqo`$5CLz8vKY&a1@+GAaR(yAaSISM8*PzgTP8eO0X0ui2_Mr6@(+KgapS@A`$X^ zRsHp2ZfCb5{g0rhBTo>-YQW@%yT}>H`%XzF4nRl;m^eZ1Q1||DQ^};`M8j zb3dk&4LJEfYy1~=#rMt{bcLmtB&Ag9${hTtmfnNMka1MlQ%?5IgvnvN?Fae2n=6$D zqBlmMWNVPd(@9$Y0-x#pdHDQH?mT?mwXoaFQl46n1Al>MLrLw4t}>%LkzB1PQ()GW zEAgvRjp{>mZ^yVxVL(iF=8NDWadQ_7PFb5t066 z#0MBF+C@jiTSuk>A@wf**V-e1{Ra|IOdy2tU59h8Hu(jmy0KcRe06Fne(=F_HK?Y$ zmFm00bB8=DbZp1ys;1?eaL`=Ujg4519J{CchUb}@R#|-K+32C4d3WHwFA9%87)I~? z_QO->4(WDJGkb2N+Mc1QrsMdkr$@SKg}Ud4ffkysQ8{<0YX!F7^Fq~eZCy28*HWF( z?W%4RIj(NP{ap)w=7fG=_bfvVJlj%DEeur8_AE7k*rpkWZrpRzoH66llAJ-&o`#Q? zz#kbQzcTrwj7o;sz8SK+ny}rxvGStwqVmJ37so<`l3s?S&7=b9R7FgNVlqZnI1x&v zQ{4w2FNeRe9*ZY8)=?44#aOqvATnWc7_O|&^2<;iFE1ZMd`AwH>pu8g8r`eaM(Llk;<%q<{2InjJk%Pe;fX)O8N_aal%JM2`nRWeIr!;&@`|% z@2Q>^X;3A{dKCAGgbF+q%8UE}BLRqQqw(8|0U)zrHoxodM# zc{kc*V;QnTd?KjPXv4&4%bv|(0P}d=U*a_wsN@Rj=d0gb)X&#~LLnTnB)@Ty|2Xw` zvWt)MlOVI`w@<;3-}hmDdT(fLMcG&_cnl2gF>u{5vMj?vV8Yeqdc^weH#d*BM_`KoJl!6)Hbdf;oC7I-Fj41_wn#1C>=O}KoFPOihr zKl)HY+Eib569-8gJ3Z5e-gM6l!9f!GhU!~UPX(WZWp=xPV;a_Y4ieontw^(7=&yId zj}k|L>bpUx+PzroMv)75@FBasxMzEz9jQ)afx9NuL)C?Ty=wcK=>-}%VhlSqN7j~W zNzT9xiVl()z@UmaNDML*60v;?<~u35t(#H@$@8^woFtU^GNe6EE|Mt`qoJ6Lsug@T zbc=MRpaNnp68Th#do z7%r0OysB$Z^4Se1_DQCyLkDdtzHjVTb^lcz!N3VgjQUbWlt6<*F`3z)!6#$2&rF`E zX^Bk9Bqc`s+lo0qtql)C6g)Eq!Uv&ZO+tZ zh9!#t&-+S}ag}2K>IB*e78|8>r~?iS`1`jtM5I!wPi^5VnM!>nlKVIpnXhCC5gak( zjh1{RbdLU)U7QSD!UPLB`AX;<{V(y#@Iqh753VcvN^Z#cO4i}}%Za#BY8$JYc@8Yk z2;&I+1-5}w+Vo+rfn%9!V1{1k#gU=K-HAx)(ANzchQm}N@I#onU~8)DX`!lt!@-34 z5PCOuidDVFk-(~+r1X^R%B#koX_7}O8Moq1NlG6nNa^o2Mwio+{4%8ea+_zYQxh>8 ziph%X3Xh3HvpF%H{)Ath>`@VN3GD1MQHF1XWK%J{gF~}s_1CfP3?Kds*NX2oQ$N9K^LT}2qt}l91zP6OjJi%E`Z>Aniu}kw5PqmeGX$}DT zFMpJu-W#qLWlzk-D5n99=gbr7MvgKKh^BO<-H&xBJ8z-_RNq)F_%4%aKs{IMnL*^L zq3OWP`YwF(Ob4a`IbIJ=#YWg2*LUgk9B_lel&aVSrzE@$r80E^Unxs$IfVBe13mm+g45OD%&D2I0m z6Ey23lH2uR)O(-Yp6i#}ZAnfsnR1)eLL|43ZZEf=5mnrIx?XvLSuni(qzg1I6tj=6 z`F^_QB=IGauHy(K(RHg3UEi-^iP<&~>iFaJlrNE1o?`a#wUF^O&)r#)2$RXz?T9<^ zbxf46uZd7buw(l{4lRTn16^a3lt0r}f{UUT|9YhpI z2xOROwB*n#J3WJe%;QB4trD-ncp)|?ZYnyo)(>VC;yPS^;8%HkrLnPEkk~qZvB>v~ z$mkll0*DU6T8BkR97l(*cF@z{1((2w7hJ|#io_3nzZ*HB8hairMdEvr>KX9W)B?kZ z9L;x)pb#7SeOA`CorV{&`&Cz5w70hL@rB9H^Zitu;#bku7 zB&JyDG*XdWSHLgA&&xQIvKh4oxswfo}pT{jpNm@ z9Gq(fn%dJ0FVu|Cb{%ItSuNtMhLLNbxs8-FRys0SJx#K@Az4=|_#hJwgbC{#k*q#G zP*#7eHHx&Rn=C`-ex8K&w21LgOh(xX#|CEAPG`cpAyrw+6xKHb9I3G0*?0c2t|Vnm zMp>Yu><}?qBuvn-ucuD`^cc$elFd5(OA^Gj%ufHEi0$JH;7aSnD4qW2x9a!jNt;PY z6KQBDCaaCk@CSt2Xn&rxOGsWzU`-}zrw|Sz?T!&idu%Xoggq9ujpRO^X_0oHV)n6i zDY3SH76i6L+7zK&aBJJCBVlqECP=KE9G$iAG?14~0^Mi^u93vPH2ED}W5kp#3PXi3 zX~4I?UE@I2r?(iSoegvtU&TJuqO6#sHRg^gIW~n_**%*mkw9=^366 zTVG6KL|dc@PIJbp`b>Jypq1dH@oCB0Tfw3};XrJ&?k-916I)8}Z?uP(-*lU0$leJO z-!mfSLopd?D;yo@?#}dyZz|~%h7V>>OPo4>1ag~-?;T#p4Q-LsH`!%@i?Xl8Y>hBM z%l_iy>=an%80!17%_YI56PI!_CBfYYWP)bv&aouH7dBS~dETB)c^hMN`|><*mt|UR z;>5}1?Vdbur^e;&W1CTzC+?w?IFSwj#q87I2Z*@KQG`omPMHzO1+QXu>PVQ}n6U{@QYT4Yl!7g zfk;53B^i#NG0?TrXgMBvOb{cI;U!)fKK-9ihX3<@MH&9Hu+<~k);e5okqmEctQKT= zvSWo6!Qzr`;HU=dPYF9Gz#f-QSNBy1CWCj~Aa*>>A5VsNVc$&C>^iCy_%`h00FvKz zJX;MN!_~FW@qME==DXWXlHoIwb-2>(=VERazuab^vK39c>ES>y)t z2=%`^Ga@2U%mpAecG#H~85iyd4f%H(BC~-z4WT>= zP2ca-g`QsM4Q_bPTV$z1p;hL}#Sv+9>es{Kh_w7=T5z!eJ4yw&DPk5>KlI7}H=z7~ zE4csr<^O>Rdv0XP|NF28Olrs3yLU$Zf4$!WKm;Ilhf?Z9x|S5PkGd;1rS1)_>A4AW zCzHDS^VHq5W7K`R$R06(-2Lxw;4Pt%ZHmG+J`JmGWmWfO)*g@mAtB7%z0Z-SwWL z<89-z%<+cHyS^ork$pn)6FlA7lWBkSH8Ahi@9@*gp77J{jY&Uy0jzE#AqDFt63IEY;N=UDaa0 zr)!aI`=+0^{7gA%NzN)t3&*h>@Fz7T4`eAV{!EiRQYVzn14=qc?NdVISbwoF+*lUf zY8moZqmitZFJM9xlM%PV;ejcot#l--S;rSTr441t9LYKgaHJzyJHG1_YB?IpBI_)$ zQ92-)IT9vl+ka2qw$>OcjVc-f9KizVu7-WMCeEKs z`cCKRd;6}?_bZ%1Vj=JChLt*5plghwvau;((tvMYUE?^_TU$&sZRNb(O_}cQi`v`$ zQ;4TTx$91^={!jDx%IwB!L7vn4 z#kv!Fk>{$00n00yAqaIZfQ`<(R%AJ#mcyPOkLQjMbPai);YJ27pKKW5C(txa^`qET z{n!Hi7rIugM`_MjRiDZ8S(4{1$@*NGv%PvA;Mpuq0c6thp|T|1D#Ye1$?kU^OQ zp2-vVj$I`1OU-5C0T)@PEf3S_-dHaG;W2y~n5Q-?(yyT8Fy^09OrZ_b^D#d{F@-il z&&PZh#T1$eosW3~#T=^s!F*mtF^BRkV$9b*3+xx` z)=#8cPWNP$r^g<)q9~n(^YC#7OR`d(s?{6QGtJg)dv2cpV1mc0P+hUJ4@8*Uj>$gC z({Am~o?bYq>FH^Hi?6^xx^-V$#+H50&56GTXXmCa%UoNAY3yc@*_N>-ai}wb-QHu% zXTjjVtSok`68yZIkg@^>_t>pKdCI$9-cn!u23+Vn|D!N|Z3$84}aUHII z{y83BX>Y6+T(8N@D9bSP0Jcb1;YEAc*e#5F)pcE6wKWemQa3%-FBDT(2)IiMwCvcG%+6yOXInW)~ml`EDLb>3R-+eELa#TFg<~5t?t+5n5lM zBeWb~M`*=pL|I*0hYHZdbJp80|1k--X35EK?24&t|BggLPzTtT=n$b~QH;gO`#x^3&3RKgDd%JPiRU_Ml zD7vq^zD5jJfw1Z#XKngnI=c)f9OAMqQhiWNR%lmvdf;?#qthL?S*yaVIPP?3Ln!YWwmHS-u8B&)&AyvD8lOg{ zYvL3>0J$dasDLwkcYG6A&aR-rk+w+RZvbm-cZ!s?smm5~9;HftaAYsD#uj%X)=m;@ zztvpcX_pc=&GLX2WsSj z7bon+ZUnm%o;xJchlQVsEVz>9jP;x{_sbl)U)qxWFACP86Ar{Sdy9bFFZU1ae)*66 zqAnP^;WA`&iG=u^h#^r-M&Am@3557uD#Y7zmAFhHejCC;Lj36VLi`y%HpfBS>PVpH zl{lFxU1NllT_*-3VS?uU2r2P7k;;x@GBh(KzVAGww3!lLWcQogL8cPF1G7m=d{;Mz zPbm{=cm`0mbRM3TDBG9!o=liCnUt~3;fbuw}Z{Z{qyJux{!cZY=ZNRtBt#P30 zb6ZS=n7dGkx1~t&*MSm0j;IO*A|bED%RbOx;PQBp5-;%@j29~LKYO95#GmX_;y+1B ze12nfGbL_YVb6;K8>Dv^wmQ&ZjMO(nOLYRf7yE|UwM}EZchH2^9XfYNWEt&ZRj+Ym zl!`J>N_8d9)rAk_0>oGg{Dm0~=DkuX7UuP0?UKZdfqWGOvbN0Ufj>WZC;80(jHLZFNxONG)`#e3Mc@oXhXB%! zZ5+9Yw3}v2ja0H%2>0?B>pchtNxM^+rr13fz>cynsmqzWw1EJ5{OAZ=uTP zFI44oQe^q-LY1FFT(=Emn0ZxRc7_JSmdA@!d5PCxyik>&`$AEb|5~3akI(V=%EHEK zL6s-3CzwuP*uB6~Ez5@WQsXFs*Arm48wu)7Krpgyc zmCs9-q#lClHE?2Rx%1D_#bzA%O`-+vxcQs4mZ$zLK-nadRBry%?3 zDES>D3Uhcv8O^`41E@=P2W-Rkfc@f}aksS4ZZ@WN^|gI8Qe{CT7n_;$ z=;sKNzAfgqr|z4xK)|RABIMP%nmjx`2`gA-O&qRhz|iFiYs}_LzI9LBnaMuga}ar1_dt(hCC#q5JX~-^{YK+w{|6+^d@`uoNT^^ zI^Q>Edj3=Oo9?=N-80{Be*GQd_2zoJ+eN$g@M_Hcq}Th>7w`*`+E|0;z|`;VAo#e;HguYlRN?J%}~0Ii*d@`b$uX5Y3$*8cHF zdq<8GN6#L8fgIhpHovchhbNASW9f@GIfGMYPoEop_|B7O&i0(UPuBW~9(eOJ zy*|9>z?}cb9r%D|q5N&H?C0lo$d3OD?Kge@Jd~g96)^j@9me*%d#$}6tSS4s9kTY1 zKi(^fS4i=FQas-;9_$zU+4i^9Cc_tR9qgW~H%X#lO{A3+Q53f-t&zS};!Mk2CN)h|4i#&lb!D1y$^=Vl z9jRRLrd4T`5UZ33mPIm^G>>AaSkqKAPbx-JEgD@lJkhymRazN;s^|MF{s;UI`I-MQ z|91bge&yfe-{-$U{C^VvCF1{)_|FpmSH%Ab@qa-4M~MGz;y+0IuMz*>egD#kaN#k$MZU9#??br-BV zZ{0cT&RTcIy3^L3vaWC4iFNIPJsH{mde(KVJG8E2-GO!c)+LwR@$uedvNYM5+&sAk zp9@MH76N3jvsV@3T=IsOJoln^(Dglk{(-NYe~Zmb%X+)dA9Pjm{gD6?Kmter2_OL^ zfCP{L5UvbW`Z&^ziePkJBm zKH=T&ecHRjQ{D;hly|T9W$!=4dyROn67MDA{h4^r6YsagdzyH^Al{S2`w{UTgDiqK z{^ssLgo4NJwlTupGA401jmg{%V^VkB81Aka!`xM4B6kH0%iU#Tq`PEH<}MnOx(mi6 z?mU<%cjwHb*qsF{XI_n#o3v<&`tFyhOWwJH7 z4tIu-L8tsaH~wLUEkpuH00|%gB!C2v01`j~NB{{S0VHsZ35;*;h2d@C>F{L|{+xsl zlki{t@Y#O&Xg~aVKm5}md{^%m_$)4SE>uO8Ocaf)T2WOoP4i5!67mQ)F=xS~ZZeta zSW=k@PUD=#kk?m6RM#wzWL`I-jDm5lYpE-qQXBc`2F9gHg>? z!c%xI%~V8V9+kAr@`R=;YpO(5vSA|davn38MLsDuoWiu+*O(|8xOB%-+P=~C}G-nN`O{qoA;TYmF zYt5*+fw>XV68>T-m(DhyHRzg^YIsVy6cSGHxTH$Sk_wqJ==4jKr7~E}Ye>VcSx%uqAD~M}JkLr< z_g?ClRdrg6h6gKx)wLE0H~n)CeLW;_SCwK^3Le)G>rQG}1zi&BWXNq7tjC1iU~ zveMM6p-rk}u33~Xk+U#y?rnMn^CpF`+r^H4hDCWgf!-#&a_U zvD)lk(VAyT!a2*}b-`ScRZSMb`-n1z@l5lCDi)Q$TCCpk@-=Cx)`rIS3E>e5T&_^$vZ91`VW9sm8$bs7JE>J_hzibqGqU&h5lihNk=bSC-Kw-n23D!l{Rz&UC(oQcH@3fJ>6|)w`t0#r)=1wf zby>l;)@hXxtJGzc->S6Y-*Ii`|4)12BVPF5QTY5Qe0&ssW7K&?@U8+(_+lh*!w?8| zG^|?7)GXj~1%Ki?qbgRCHjF0_2Zd7B!8Xe>nA^gFEQX0O#6hbR){R0_Rr0LNn>bUI z4z^?pOI0m$%6SCq#wZmuR{{i8qEeC9T=O*8ghe86nk1&MCumg=EmfJUDMU7N-LNE+ zc^YhVnVkpgU1r|6{>Sw{#{VJOQ$i?8G7a&SI)xiWO~|E^*FXM0_4#YN{(pS7czLe) z?p*QQ{8hyQZkSFS8-fIo01`j~?^^<7$F9!1%;;NJ=W}G+Ds`Flw<^t&EvwXJWzecL zPc|=8>acofRa(UO|K(RRTRCC;|B9=tt(-9af5p|_R!$iIzvAw*R!(^T&lPvWwQ<7x ge;~vrswUD3?o^A~uPqeQK4< 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ⅆ#!I&0~1 zKm958CVzi5-OD%VUT@BW&4X0O|>{4wSdZ*IEp`A*vYw1*ad19y1Ys@>9 zRuk$}TG6w!YIM!W_CjB^W5;JBkanPYMmJU?&(iyWrm=UrnVprsWkgsQOo3`Is_I<;P45O>M^qic@PF916&EgGWD+q$nv)I9%wjJA!A3Blh zMiyJ|gspnQ#yrEAt#_iCeqXbh38&KvBRjU(tv^-M0+TH|7_+xrSnQq6y3Zyf(3&W& z7I&6(mpz^r`fOFg*ksccg1)1=t{bVbWm#dDUh?b&okcy4AEl|3}WrZ@OnmtA8V zQUP>UW+$*itJ4ev-Ei2os760vwp>S3Jzon|jVWV>uA_Hjx6{yE+hR}sdF%;5la=1? zv)A0|L0^r0GmJtz_9EBqEZ8<1&-K}Em#yK#O3zgFJ=0?=DE7l3GDBPU?aq8;8vU-# zu+!JrOFS5i`l{#jebx25I+H;+Bgg8@bxlum16CT1wFj*9Y~{tkv)Mp#pb@7APH0=5 zS$3&<-;Yhzu>xkxV1;8M>uRLMu4#o1yH=y4xFM6swhXoJJM1Wpt>@@FzNPm2?5!bY z9D1>x-E39Z&+{pRA9VJ^rB2*A{BRFfA!z*MOTFyF)XRPv%VX z#`^GBC%pjSQm^59&9g&(CL4t-jl;b!J->Z_)}4PNYYAWXp>(%0F=n6KO*Um>bLEtY zJ?^4R>}mDMy=Y3A*!y9Xi7n|cxfR%yiLI8btmXaEDr>TH-=n*#?8+^5EzM&KT)3*$ z4;(g**Jp!suJ5R!Yk0aAxnb1f|@OSz>gBgkA!O=YoQslq5T*HS}i=9a3AL~|`ID2?1w zmC!Kna?d%8TIB`npNg#o6*g*TQK&XwbnE!(?x52G|$uY49|B>Q;jTkkHK_kB1^!Q-eLC^3?nqy`a8DA z%k$|+fTpDpwxiTZcG&>^5y4$wydVj?QNSG*N3k7A5Xd=w|e%&(<}Ey#6&^1>L~*&U6s{b_NS4fczJY%+ZLj)h({$o7Bl zPLJyxtJcu8A4T+* zKztn_epGP#sI2pqnN|ukc>!er5PxvuApX6z?1ndTBoe;>5?{~o7Re9Ni#d!VpCXDQCXpslJa-Q?p$g<@f#U1LxV%*{*MZ{V!#F8s zel0a@L9UCG7f}4%PEq{RIgKNOB8$uT<$D%-5#jv}SbV)oBa1UjEWSRR#gEo9?^Gm< zKaT_li{C$C7XMm~yg#wy*1^=Boy4?^LsI z(1QqFQ|(9nz8Baoo0H0aso^0+Zwbba0mjz_w~)#)zB1EFfhI4c4BnUKvi!Vh!1!-~ z$B`w``0b$aV;SNixkTf~K;z=Qlod6VtA=lALQ6$tG=9(IX#6t(a%5D*aYQB3B#!4E zhbB~oSitdP#JOE0C30O$Pf=zX#|k*UE^?x~lJ*+%YpG!in$U~!GaNrZ0UZAXh#WZ- zd0YlC-?h+-c>MRlmoCWGW3O{pAN6q#H`aM1}Hx1kp?`P;zc$F&MgEzV5pgPh5aS77pE3pGHw zNG4BiH-pI^oC=e_HN|pxp$O$N-Z#d0@qb0V0OeAzqCy+DsdazLPrg6@S~ipW{{g;6 B1VaD- literal 0 HcmV?d00001 diff --git a/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db b/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..98e72bddf7291f7bf066d2eafa5658e633629534 GIT binary patch literal 65536 zcmeI*!EVzq7{GD6NjG&8ViO=Vaj9UP;NUH3lPtZJoe{49Nu5X)j7?p|cB2o%p|7zU z2P7`M15;mQ*ll+~1GQ2^qxJtuU#&@w>+k0_s*)x7`QxkH6x(7Nx9#lDMVg@$;`4`# zo^5SZrVX$E7D)9)Pgt_5$<8cIQ&`NFr?BxC9N5-hx1W_wlcQOhrm!eu{f?>jfywu? zG)-YqvifVU#qRF$tIOz@d|6n{YdmnZchEYB#?M{nY|tM$hdnLalT)45UAL#xyxwtj z+SB!oNxyLHP5bQ}zUyaaAA8+okm-X7pH$pW z$w@Y<4zlyXxu}@;b?o=Q56o9h%l=kx{bx zYscbBUX^T8MfxvoY$?Y>A-+3~+3AejH0d|(9%Zzr^VHA7%vWjTg(_$VZI$HhrfT`V z9|x(Q1WjLT|G9s=zH~-=UYh7EZG|dqN0|zmo~KOzRJEHr^5XQ!?}mXG?fG#OCpzh> zAP=+(((aLp<2X}!7>2spj^gG~YPxm9R@P2iTBSN@sUY+sm3Wz_LY@0r9_c8E5>e}j z{r#nxFi?2}8giabqFMi~t;bvCnKm;iOh8uc4}BYQqbz&;o12?2CjT01`m=1hOuQn1 z00IagfB*srAbzI0#Y=jz4Y*DF~cu3 zs+{YJnT3X=GXe-8fB*srAbmhkH2e^E57{ST!}E(EmN0PI|Ctr00IagfB*srAbb_u-w>eOr2qf` literal 0 HcmV?d00001 diff --git a/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db-wal b/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..c9af840752a7e0c7630c73697987c6b7dc869c34 GIT binary patch literal 41723 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 f8D`PjU5$`N!&k(MyxkREqwzv-_nR+rZ}= literal 0 HcmV?d00001 diff --git a/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db b/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..99d6aeefd7f3c2fe3f88708f98eca8a09de2eb21 GIT binary patch literal 36864 zcmeI*yKfvt90%~7ectWyNF*Kw5jsTf6kQlIyEFT$FbMHjK~Kr-OIXBqWLrd3M53VL zF9?MxsrVN_6f{Vbv|xcKs42qB%-ClyK{@9vWqlXtJJNXOtnqJmKKqb7celUqzWt1N z#s%ZB9JSMzr)h2y!}#F+8*94N#XM~A^JIady0KUWqNozi+{?%dj3Ow zu6U~MPOEA`Z+IDdCK+ncJ@wac<(^Y6cE-sRly8JjqJZ&-)d>SYloMJNTM zNm@%PSdmg$*PNz7SZ7UD*Arngpk`Fa zI-^AtB{YyQU6l#==I0OR_R+nkM2iXE)g=q>WT0Nf@(|(=4khDw4XOX&S|p zC21Bg$(t%w_r@7cW`ETf44xW1H+W%?3|<+$J$PqO4mJk&JW?3Ym4NRbpUr-IV*9=J zw_e+I+pg1g?Y3*RU9;_y(tbfJtYC?#+00Ckh9ZzB(_nhONd(>ONuHCW8 z{ryiq+CQ<}F&r--009U<00Izz00bZa0SG_<0uXor1&HC;`t8TQs+PIf#c^`*PSpd5 zh+T#N1Rwwb2tWV=5P$##AOHafEV%$Nh_63--BbVi_j{hJRs$Bc3P6_SLlH}U%&>b9 zfB*y_009U<00Izz00bZafzt{Q_4O0|)x)P%UHt$5$6t#%?KChR0uX=z1Rwwb2tWV= z5P$##AOL|A1l0TgwtoE3GkOd$^;ZEFR>;wFfEKm~*f0bj009U<00Izz00bZa0SG|g zdb>N>wx9)ob8dZqr|0@=wS;lEuba^A=_YVJ-3Zs!P3$_l z$y{4Ek!$HDbxqwQ?%`q!F-E>lJ!h-uKRB+@vpn1EFX%Cl#BGu&jFYgY8Rsg$PmwgV z5Lre=SgR~MK`dDu-CspSg8&2|009U<00Izz00bZa0SG({0{z#G@%XLr*7#R4{+f($ zk@4^5_QXZ5nkWv=as26jQsO-cMjmucAA+S);g2z(5thubBkjpF{d5uUj zuKtcP*2Gj~tWsg>m_{OGaawRLnrt-Jdc???CsXpso+k_P$eJg^@yMJfd+~_OlbP6m z^MCoLzp?V$cK)TE|KjAgocwIgfaTl@@!KrV^PHixvOG`zB>gthJZJIDNPm!C8)=?1 zeP*QF#A_qXb2ZG2^cQje6KS3mycyZBC;uS-_*v&4U(PEJdj$aqKmY;|fIyc5{{oQx Bb1VP= literal 0 HcmV?d00001 diff --git a/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db-wal b/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db b/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..582dafc95be4db210a667b74880f2866dcb44ea5 GIT binary patch literal 36864 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 F{tJIwT8sby literal 0 HcmV?d00001 diff --git a/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db-wal b/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db b/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb7Qg$VHX0SvgXs@!+FQ(*TG-m!2se_WtEO@NVDHd+ z{`&6Tfo5*+HgaT|TTRuDHqEBmYDV@+%eZU#&hGx5TUsYAqpsynxh?OgX&UuLcyvWK zRg1&>_TS$>klPzO)cL-qQ=f)9|2IvVpa;o*oLQgqwPwfvN&M>C|1jAXGb7hqS;zS8 zS+qCFE90=(0BEc^hS1h$OAUI;s6AovZXGW1W(eaVgrIMj|s(Dx;d0QANUSlQp9CODUsy zO3&)~6!FfgfF@&<-1Z+p%+Lm&O zZ7LVohH}Ezm5XggPWUwcp7)6Nr1y-s-r-_&7b3unv-xD^dCfYn*=My2iT2R=`1qp_ zj_+D}=oFG500JNY0w4eaAOHd&00JNY0w4eaOC`WG%T%`?T{1&o?cz8)xl^^&@X;9v zfB*=900@8p2!H?xfB*=900>+P0!(9`dfI3}|N6TF$EMYQm8}A>b$KY_Qp`Mp1OX5L z0T2KI5C8!X009sH0T8%M1ej)f>ea)?RnW8mU^3e>R`l*ZJAEbQGT}$8AOHd&00JNY z0w4eaAOHd&00JPe6asYr-&ETVJ)wGIx_T90WrdyX1GKUcpkojK0T2KI5C8!X009sH z0T2KI5V$u9Fxq}nZN2%|tMLp{zWs860{A0T2KI5C8!X009sH0T2KI5CDPy zF#-2gZ8CXdvN!peO}=E4TWs>HKKWLke5Ox6)F;acZ0v=xlx-U1l!I4g2u@UnU?~OV z<;|+Jk%`FbbnNWab6bJAbf22wTq7@)iA)yMIs4S+9zwKT5SR$?f9(y7MD6P_nvZMEaMXu2u zNJwnB1672?0XRT;)1+OrNpV!%q~$--%cSvm#_wk*RqWXQ{_PW=WAkiKj_To`lT^E$ zv3IX`+Pc=o7*u#XTR`SJZKla=iuGYoRazOYp3?fCuw$M7lHOM4D0;)7s^CiQtJ~=`u{v({RhnLbJ`aPc(#kC6Um0e* zOSO(N%Z%k;eaiOu9{+9bUEG3kqrc18SJR}oYtNEt$JOt}-g1}*q4fMrczKixzbTbS z13wUMl)8>9vpC8Xn?Lypvj5)fEj!YWBjqPTD&+~^NfHq!Nh;h{5T|~iRMX2@Z`q?~ zt;kJ8(sD!LhnXu1MfZ*7TIf0(#8yW-E$w#`%dX zyg?Q*eUPP&mx<8J1L`^Og!E-B@|Fsu45BcMgK=2|uB*b_5l%}=J+33-P^BV~D)r;c z&tj=)@&0A9)hDdcc-H7Ne(}Z^-uTEHWp4bJtM9r|WJ9PMMYgKCQDm*vd7-{|vA&!F zn^Se2)oQnD_i8J(%e8W_v}X!%^XLmOw~n9L$ImK9|MJf4-l4E9!<^PpHnH|1qeU@0uX=z1Rwwb2tWV=5P$##{vtrf|1Ev_ zp}V>rH}t6hQ!9K{E{ZTU0SpWQ2tWV=5P$##AOHafKmY;|C`W*f{~P+!%lo?fX&(I7 z!}CJdZq-YQ0s#m>00Izz00bZa0SG_<0uX?}1Ojyb34Q;O3Fbi4X$#biB6sSk7uuUb z*MBtht>-Mg?`P`!f9PIB-n4ZwJ_H~D0SG_<0uX=z1Rwwb2teTK3DEwZO63|(ytsO6 jc6>&*q3`)@bL?#yZ-gljfB*y_009U<00I!WiUNNC`iV-) literal 0 HcmV?d00001 diff --git a/canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db-wal b/canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db b/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..bf08faea983c3b3b486e8e944369b4292a869267 GIT binary patch literal 45056 zcmeI5Tc{*Q8ONu3X1Zsl&;5Se!;0x9Y^=4btE#)}$yG!`n>?wY1i|VXE@rbKyBPAK zQ6KUkL3{`ZQC!JW9-;)4AVG-6AR$7OfQy2c1eZJ{q7X!4koBwGvs+n7C%s9|#j{^S zo$ov6^!#h;*WF)Trl-GO|LVKM>&^8pZ&&Qjuh(PlC%xX6zjW_OW6kDVHu&@H2^7`6 zCwm6j5Xy<20%q5?ox`(h`qwFJ+JDrXD;|_{I|aXT)ExB7&mx-ihnl)6&n$d!%n$|pvl@w_sxolM$ zlD<`nd6B9{OL)B&RPX}4v|?0MD%C>AWunqnr9N@2QdCr`DmbHYnleyo6xBtY(Wr?F z%|)ZLTDK|<2(d~!ikWQUnzBj&ry}K439hIrl-7+@Oh-wpk~6-o=Xo>UvbW`Z&^zWa zFY`X)eZsrl`?Pn5S9mAAyS;n8uXz6^-fP5rm3SA3_b1|=C*E&}_bl;#LA)o4_haHc z2BY}Hzq#9tMUirk7?ZhM#-#2h7@oKr#z=SF7~!rN!`)S5Vt2(D<}Mo(xl3STCOyo|$Fy)So$=s1Ksp}b&xUMnM9U3Ft zfic|e8^c`3nAj!8MB@{^$z*A=J-K;u_z&L=)I!qV-f1lvT=j-mJ@<;Y-$*WAeBi4W z-)1wzvfkzY@Aq59`jG$+VAOR$R1dsp{Kmter2_OL^fCP{L68Qfl zKzi=B`Rd^+l(xw~am>=d?zfLz{vyxrSA;bn0VIF~kN^@u0!RP}AOR$R1dsp{xWNd( z=l=uq_@PVFd*Ya{0_@vHt~>{5-`)XMj0BJX5p4B{|@mVB>vZl|1ZaX)$w0+ z{NFkLbB_O%?W-#VlOxvMvhJpJH>|sE-8Jj3T6e{|%hp}8?xJ-UtUGVr zIqS|^cgDKY)}6AhZ{3M?ZDO6t$o|!{u4~<)bqCh%Ti3BJx$2T$ux(P$-3-rv7>rkE zhVxs?lit*kMc>_+_BPj-)<$y+&TM~W4;~FkhMjT_?ZpX(bszyGfCP{L5V)5L!aw%I_te_J*F`ENWWc3W zS*BE^8Kar1G?htHm6cGs&~-3r7h%~JtQHdyp)WCHWxK$}-*+4z9iZd!IlWMrp6=hIe6U7xT<2vZHY7q>& zWI+!4T{0X8PM7S(0qK&Nc=E~r$v^#cKYx9Y|7eh380HTT^WVDp1MVIqr6yB0qjFk` zGOHm=bkt-(y@VsK7^IIbw3Jbju`(^H){M&2#J5Ua&c0TqDKfE2UCz)}C7+C~QkS#1 zRcS&-R;kOG-l{Yvo>l5{HMA;?h-;O)TrsUm9_An4>-^)B&%8tYf1)3LyC1$X2%i~* z-yejp55pIR;bX(_fnoTf8$RiV54qvrz0Tc4uvRBAWPsNRO(O-dUWk}xO~WaJ%;`+0 z9Aa@4tTG7~xrij?5R0i$s-#66mC!AShASOORj0voZai6?Oe{YIo4suK7$=1B?;bP>D=ma;g8J_NGdi?{|YmZb2$q@+=z zbeWY&rBoIyat3cmLH{IFT|>W7#8lN)L?I$erZcW;RtF1Js%2co4NalDf$Z|Eq&n6m ztushdU+^;14G-o8tDqB+DO4d!sFrc6Gw7*ABC@)OcmX(qIaWh*a|yf>*bVx#2%@2a zYHJ9DNmQhb7BZNvnzYV@fR?cmYK(M5i=t|%PRb^&(o$wg8O$V7H6@pvrlsj;Iqan} zH~&6(NX^AasJRae{Pb0ZIVCX=YN~ZADPO3Kb?PTI)7#+e`EH#MhaxZ z_8SsLcxl1R2`eOww9<^~BIcCKOs2fltd?18zp+Wyt&%8UB$W>nX@x9Vr7n@P zRcVXHwX@SgHr7n@YRcW5gTBR=0zEx?C%vhx^ zJwmI}ESa`SU3!gHr5POmzj+qh$_dB+RI-d;=~Y`fxny9^%q}zUR;3~7Tcs|u^H!xk zaja688GNhKfDo(HWtQKnq){Ld&nKMEfoh2I=?o)NsK1txqk5;!yj zg6%BfFcZrfSOSe;<%_2<2aTJIW=X+?5|v7{433mAp9Qa?JZfO9%o*$ei(<4&A{`4D z{FYG}Y{6P7mvO>q(U`SM7Q<>OjH{{EQLXDz8_i%d(KSr%V4@gDFyw}HHwE)Xm|~`J zQ_G^%aZ#vXqs!<#Sno3O#`!>}B;N?m3TZA!On;rjoZKh13AgzNv;e7f4o3D^Ix`Lwr{6R!VXbN5**C%pgX nn!DjzIpO_36z)EO8#{Dd!u=+#oDSsr{|!4x!-gXPB+&aW1mjwb literal 0 HcmV?d00001 diff --git a/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db-wal b/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db b/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbk7{KxQ*j)%)jT%inXv`kk#*lyzSZQx~GdzXB(nu_&Da6K;eGm^kiZ?Gl zgc4uE6VAW_NrME^Y6NObx06HLx*T1Noi~?*tC6z%gP`l#b}wk3c?~;g z_X00FYw53AejE(fw{&JLYpa$Qt$ufHpSIO0RVObqwrMebF#Iwcb^E0YJ@`;%^q7|U z`ES^If*$Gk6GoKtm9Y2!EPu21Khg0$3|&Q5l9+!s%=SjtCZa3}%Rk>x&1RJO(su*` zB9r&ld`&y7oCSXMr0o~|)7ojV)(yJF_DRbx*6Kl}-Kp2hep#=LW-T4(&j+2>`FvS5 z%W$LcSI>XW{OLp4Gl8sBD&=xT&%f(Fb6>fy-8}&+dNAr zn!)K60R#|0009ILKmY**5I_Kd6btC%KgY)@&ToHHJK|`{{!TubBY*$`2q1s}0tg_m GR^T5$K%hkc literal 0 HcmV?d00001 diff --git a/canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db-wal b/canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db b/canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a880ad8a5faefafe1c48acba7974c3c23c2a11d GIT binary patch literal 65536 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%0DG-WCyF!E)*xTqX>CjRdbK{iq=>Lp0`^@bH~{<3 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 S#%mB#=_3vQEqseR=l(yrccFX$ literal 0 HcmV?d00001 diff --git a/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db b/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..d8b4ebda8b0e87852cb80e03ab18c10864604880 GIT binary patch literal 36864 zcmeI*&u$Vy9KiAUvAYnq8a0}D(3m~6jUfT~Yw?CR!&AueClX6(3TflXK8Ob%#hVu& zLWwWo31?t|q^ShbYQa&5rnQnE5Y)F*8h$joBTcVUdiZ~1fi?YN*wdIbhZz5d<;TY zp_Q2BpM9@9ubCU?eoHR2oDRgVbvizqIB!meXJcg#hMlfw+x?E;^BQ)? z?{~cPyk%|O@}xEBUfa@{x2&#Pej1Lh@6)#0h0640$~JvX9*n+>#@#{TL=QevDLtlT ze*PP_UZ6)h{sa-`dd2MhKhNLn`=99e9)zw!D{;&}9b|i{YZGCXnB|{ssAeqkYq3w;FPCcNTD@4wANfc1e6?3^P!cAPmQtx$Ea~-k-DmDA_qCfafcu@USj%5DVz0KG)mD1B6}7@_ zHv6jM|0U`PGCl$bAb|Nlxoz4G}eUP`owAEHQ^F%duj0R#|0009ILKmY** z5V#cqQE4%k9zMU7(KZhvi%ViQH{z=ZAb5?MbV zC!7)J6#)bgKmY**5I_I{1Q0*~fn*Bk<3D?Q$xJ=DS-Tu)N$%p4IRXeEfB*srAb>!U G1^xk;^`B}0 literal 0 HcmV?d00001 diff --git a/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db-wal b/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db b/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a9186a8db4633264fc6173f735d782579f945b4 GIT binary patch literal 45056 zcmeI5TZkn`8OKkZOZS}9bKkk&STWs%U2E;C?&_|3aut!#CQm9TL9nVXWHHGuyNe+& z8ucL$62ymq5XF@|GSWZ-|4Q)*L~*u^{>7|{N8-;;&#dI{(3d$KGN%b>5KQAu-0zXd4U|+vo_z*!lM(%l4IG6Hw_1;&YnIu`tYffr_c6=cb%;2!^7c;$~1?M z4=Zz`I_zE8Q@B0vIC)73J z@H4$W9CKi=|KmgWfaak5b+_#0=XJo&{|oK6eg6WKCwB{&J=+dq`@P-P-Urr}z1$91 z`^O*e6~!y0_&zC~?-vjBi@j|7J8F~Bi?<9eUaL37+|(swB~25a&{QXeN>(>Ct+JRi zUF))xy`k+R&W-OpS?W74b{DpLIev7L44qOfl7^>oM)On~kYhQOCec)wgf~W1DRe@u zN*iS0lq6Isj+2t=lnI)~RYhf02`bZE8(X7T=vJk5(sxRn)lx}OK_wJ4u>mEW<(#sF ziK>o`GQ7P`tAscu0qu!pCaH?k3Y40XDp4|;)k#yA4HvaaTI;kjzP0E3v;MNb<$usW z;xk|RAMroo-{ybXzuh|>A$_T zxv{>sy0W}+2ha3_C;P#V`@yw9G}*ZvDVS_Kcgwk( z&fReCx^vf@yXxE(=Po;U$+?G|yXf2n=gvEK&bhPBopJ88a|7p2oa++nOs3pledl`4 z9XWUC+<|lZ&Lx*!(hGNN>baZY|3AzQR)fjH^k{kBKjih-H`W%X=4O_*dfS_1Wo&bF z?eRwDnkLQCT0$Bfts&D;!Z}qyW_smR=Oy8l8?_CehDG^bm>u*^i#>N00QQulJ)r4x;ze<}j$5T;_Eusmv2j zQ^itP(aV_D6;rWPRg>sAoUl|Yo|uvvDIh~|Ss7|dR#TNHOhabhCgm&~=b2<$r8N~? zK}O=3LH1w!ri$l6aL)29PQocwSF$d-qDHBlrc9Sq3IT6|l*77KS~96ZU-6X5T*1Mr z(rSr}8lfburB2~}T*XxydZw(J+Ej`ryiB29aYIcEl}oi0ji`AocoL4fWJ(T)U9upD zgDx44!+w|S#UbgEnRxQa|H(i7i$U@Fu=wGycxhBTG%9}U7597BASpGOb{UncMoSZO zP17_7>JasziZz@zx=tz%X9t&gYewZI5?rbD&Szh%(tu2yQkOHdRjE(LPN~aT+^R&# zlvC<*rnf3B6aNaO4p&2)(vkDTb4p#Vm^P)OTbO_RTIV01eC8ec|HlW>w+7KG!|17D z^u1y9`Y3vC6g@hM?jJ=jc+nGH^q?30-S0e1gllzL#X7Tz;FWqj|1Xljf$Z!xf_;APgDSDeNnur^ukMZ$v^_Diow& zj~kh%;c})+V;Y`OE)&=*O*J(}YMRK5!C<5fT$16Esvz-u%@lq*DDbz+oy+p3F_ykRWaS28?S<Oy+)n!{cTI){2m0b`@efka$O7+n}7w@)gOK@Rzo-`ETPII(8(BKvP4z9=2@%K0$FoPU3#ikrFpXIl)Ch0 ztx9ub#VK{^@miH;$+A=G(kr$q&5$Lh)TQTaRhlM;oKlzGwN+_~EIOqwJ#ed%PZpd~ zmtMM6X-wvwQkR~*RcS=#oKmOzq{BN-o;iEY-9qjSPn|q{_W02?GV7GOj0mlD8j=~O z)MeCYRqEmV|H@TtD<_=)!-74FFO90LoHohOota%$-mOX-WZ;y#tj=4N)=A$fby>l; zDyc-upj+rDtdk@dTc8C##HAO!FviY;hT}bbweQBNp!*z zAr;N51XhGi18c)XY08acF|1|lxMtzD$jc^=Vda_V6lSen>aKK?)b`S*AI|JYpd@_g~# z`Qo{StBM6&H=Q^(1PLGkB!C2NSOR3nt6E&x9$J+SVf_EfyP2(=F#i9hyQ{67F#iAM?@3|&|E4ZapS7M(`25eCo`!4VgwOxL ggCc1TPbtEE{#fWXPDc-9{QriXq+!F6021i^7mhe&N&o-= literal 0 HcmV?d00001 diff --git a/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db-wal b/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db b/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb+#3eZ;5hp56qM+h0 zIEqkG@h^ZVXpksrAp%iQQyi}_lWgJ>x;>o2*(LdoG?__c{l>qKz1E#~*S~MS`II=? zBieC08Rx&AWw=E&?fv&|Zm3Z;{dmC7`wNuy%?(YFS+cLsyBr2<^TRV({4)kt`A^ij z;>f-~?{XNdtz!O$%=SUq-wn#p2k2qhf139pkJpNw|3~?&YyYFNe>v}R z7_6;g{`NfETXIx=$hKnnk6+P>;#X39MvCwC;uF0XGWY+CO{|00jpNtqRgs5b#q)$l zWtG!7;{nYY!DwCaG!{{mi>lI0b&c2`U*E38_2bKhy1cB<{w8J@i6<;bYZlQmYFZk% zLdZyQK!Y|&7>lbsZQ6yA{vt*fDQ^OiwP{6JScf!@Ge+|!X(?~xgtIc25$i>fuIWU- zD^ggBGzx@_l*{bul+i3}8k)7dsvD8!T*xchg6#ezq>B_qEUN3Yq%4TIjFhA_PZH_W z#7!&8hP8a*KFxj~uWOF;kn^~6#d+45IiZs|FFLQPe+;3mwt(%1VG!i@SPhvyQbTAv zYDjHc4a~OGkl3agxNXQG3~XKf7TZJ(kv#sc`05$(F_9yzwW8?dyy0Ay7@ z6mcnzJd%U}1Rwwb2tWV=5P$##AOL~OBtSIVRbM@PQg(ejvQ2|nN8iO>0s=Yyg3J%`|>~k-#th6VrnBR2tWV=5P$##AOHafKmY;| zfWUGDWc>-xd%}Chd)`aEm%X>Vx4p{S@|LqRSXBzR?&)0+w=1mUj=H}(-PG=;RyQ@f zsnJdKZc0w4MDtx$dd`&3f3QtwWa-3E&w^Y=BTkvep$HpJYgy5U#!<}Q|00Izz00bZa0SG_<0ucCr3yfdWrqeg4JJVmt^eZyGO{Tx;)9>`@ z=lb*`eR@8*`7X=jlvhzeQ@9CwUfxtq4Wsk3=ST8Sl_o!a%lRlM+-8cSKfBI{q zxMLPyn8nXlaoZ}+=L}fQRfyYFdG2$DE~*!OjgWB{sn1!wFp@?_cSY)PrZ0*#yF;8V tQm^}Ni>hHC61$7k=M}SXpZ-Ao@$;@fzM8K*>=gtc009U<00Kh_`~%e0bqfFh literal 0 HcmV?d00001 diff --git a/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db-wal b/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db b/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..cc6ac3111c20251ee8c09f099ced6996caff356f GIT binary patch literal 36864 zcmeI*Z)?*)90%~bCh2HF+)$ArNYQo72e+m9pJ#QC#kZhI?*c*RMqAvTxfkMtyp28c zf#4J0gQNI9=3SeXO{Qd9vjqA*`1O)=xoDxN5$mr)GtI|rodrIs7h8?T?JL*_jlab{itI|px^Vejy4`jU0 zLsq4gn&sbmO*S|8U!8cr=uT-luW-jkx@+%xlNY*nG#+N!UdoAnaL7eR*Ha!RoxaZF zly{obcJ9QSwcFTxHxx%7(?K*A{H<(0x^^jJx|B0{Ia^BKOAZgOZK!L5U3>DRp?``F zL}rY|Xgnefxn52E{`wll$&QG*#%d%{XbGejlS}t?A=d;lBY{rEnk|-8-;&PI0g~E)2#2+wQ z_Qf10uvsX)gt>|1xpo|yiK&`JrYX1+2<8jnGbczK7Pywr242tVg<%wMQ;=4lY;P~k z1Rd2!pi7G!iE{t9+mGAN+dJ+0Y&y2&&H_}MpVO(nm@?EK`l`_8{JYtFb)Od(7hh!j zyHvMnSTh75009U<00Izz00bZa0SG_<0!tF0#L(4MiIxnlQSDU;I=xr5q{Pq-1Rwwb z2tWV=5P$##AOHafKmY;@0ZOR+|9?UrExxI4f>wL^p}NGeW(Yt40uX=z1Rwwb2tWV= z5P(3*0+e*Adi3yV$?GZ7JuURaOp%_@1_BU(00bZa0SG_<0uX=z1Rwx`%L4NLzph?C z^h|w88}k*Rs;bEKmY;|fB*y_009U<00IzL4FP%oUsJDMK9^DP z2DV>hubN7zW0|X!d0SG_<0uX=z1Rwwb2tWV= oR|MqspC%r=xI(fbGX}1> zQ1KTWMJTEG7eEv=NR+e?fhedcj$dIWyNPuuo7)u5`i}2NFYh^e`)1x}#+G*0_WSPJ z&xmJSGG^^q&kxU|ZWF`!;Qd=0TI*)c6#kw~ppdsV42{fDvOX83T5I#^X)XRa1MB>U zdaZa$_UEEhYpsj%h*&TD+DXT(Pa2 zdprBii|=jk?iu#xwycJ>y&;QwxNgg0Lk`^|&!q9ZxxI6`r*q`V8qY1US)Cfww#v2m z;Ie6JkNrn>Kiu7`HrKXP=evff`n2@Z&{6j5f_`f9S@zp-748?y_GzG$pZ?h?C+6h&zou`;3sk1EQdIHFT7 zV;YMr392|qL>MlLbj>7I6KTq7ramQT$aqOvm8j8G6{lqu)lyE2s7mF+NQ9V8q&SVH zMJ-Ay;zC7=B1t(4uM-)sKsHKyB` zPGj1QX*H(VnB>G%^Y8ml`p@}S{k9T9+!YWY*71B2`^0iiEce)2!O-sM^6>DJj}Fgl z_qgK#1V8`;KmY_l00ck)1V8`;KmY_l-~l8+49C_#KlYVa=4v;`$00JNY0w4eaAOHd&00JNY0wC~k z5+H`_>sK%Ts6^lSKf4EDHMtTy41+LOP3Pzp1V8`;KmY_l00ck)1V8`;KmY_DVgjoE zgy%ixJ>^~YUhpPf=yC5Q?=}5K0JLrsaDBB~5~OZltHkYT#avIT*mbpvTt}ajDIELugUlh8UJpMzcmeVAVtQdLfAW-Fl1?4Q0lqFo!B95js;VDnTkj1sAM{ZSAd>R&l z#%UT-CYh=d9M=WSk~rjrEV7IRBWIaP$s>E2D##;inF_}vbD8SJqosCJ{5StofBG9M zzia1T+W9X|e#gl#W(9P!7veWno|jpn3#&Z;L;6jmWmfURNPm-F6KR>1zA(~X#A_lg rb2coD^e1tfNXwit3nTr3`r{W}f4rM#9!3QMAOHd&00JP;CV_te^G$KN literal 0 HcmV?d00001 diff --git a/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db-wal b/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db b/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..f9d9132e9c10c02081b0005fce1c7702768ff05c GIT binary patch literal 36864 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 Y_ac;6ddc;oX;eP_qwh?=hK=O@e>GzS_y7O^ literal 0 HcmV?d00001 diff --git a/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db b/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..836aaa3c20f76fc9b243adb681976f6acc255062 GIT binary patch literal 65536 zcmeI*&u-H&9KdnANjG&8ViO=Vaj9Uf;NUH7{1>)E}sZDKSFQx#Uqn7?JRy=UU> zEKF5cDOvutmtuea_{F>DzhzKZ&Kulub#Uk&24lyzJ`K-Cdq;21l20E7{b-oPuTSIT zT-Yb3s@wJ;)@i+G$9fRgwCoi~0qZD${)r>D0zw5|T3JAPEL zKSn3Xs5(r}hv%YVUdhVd|2^AG(EZJvq)GnS+P`Pw`z%aVSSi{2f0F;!EZa*{XHjG+ zS^l+SaV4)xHmD-~m)5tG<4YlaSe99IMz)U5+S!USI!Kcw@*>Yu{eBQD&x>Le`K>^; z!dQ1&e&~dO7Q271gV$fI(Lvh_ov!XU%5mJ5@}e+RIt*MDYA1EtiSERKFGdGJx83ST zsi!)=_Lb*)Z573xmP(wo>-lk~oA|D27DaBDxNci@UAL<|$8nTS(opHt*ILJ+pSBWF z>xpLbRr9R5G#5I$yFf$cnY4z?a|bkJp4-XH|IW_Cox2a2E7wLqR_E)y+{!-km!aI; z+bzt0NoM* literal 0 HcmV?d00001 diff --git a/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db-wal b/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..d3fac7165978d0853a1bca31b7b00b7512eb95ba GIT binary patch literal 102473 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 Hv0nfGSwwQY literal 0 HcmV?d00001 diff --git a/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db b/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..1b79651483c5e2aee8e95822e93a041540147e70 GIT binary patch literal 65536 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 HB=`RVN!$cf literal 0 HcmV?d00001 diff --git a/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db b/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..ca38a872920e7acdf4b09c4c487db5c110bdaac4 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db b/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a880ad8a5faefafe1c48acba7974c3c23c2a11d GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db b/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..3585aa63f22bff90418b446f33034e7c673340a0 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db b/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..68770d7fe19c105eecf91df5c0a73cb23e1c20ae GIT binary patch literal 36864 zcmeI*%a77P90%~3c3J}XjIVmccL5RY^@t)fWOODWtIWz|_hdHy2?tjBSJZo@AY(WQS!Gt1F@IfV zdsfDiNysX*vSj%e?~_WUyFOU|OxH8Z`BV>V^y;m;dvKfSJA>V!ac^gPcR<+Yb`)0_ z>qR1|bXX*MQNctIWzW=5J22-IukBEX$JRUwlZq z-EXw}hIT({-B(&S%iRAtHZ=|&>EqAp?Y5h^K`V&46<8j(6Wiv(5)lu>!19G~MBMTT zQ^$y5abr6SHpYhwb$IEl|DY@#so}-KZdoC>!qDNi=L#-dFXnO3Znmr_h+?NbbENN7 zPe-!aP0R5uhkJ=@aa%MSTzH}2aWnCq(2Ij4nY~TFsg{lu1-@@Zk;fg&lOr|Vga?V| z@K%`Ef#Woq!g6MA(=STXk!;_K+qT!{jfS6aI}#T6ZLh&yFKNe#-?l|Gdz*e1JETxJ zSGZDGE8J550->ysfN3`Y`OnSrOTxor8}h+N*t+BU45ym zLfN!sOk3trYuqQl*TciZmojFT{5B0ULjVF0fB*y_009U<00Izz00bbgAOT7YrY=7g zW$0SIC&%gNO4WiA!!Qtl00bZa0SG_<0uX=z1Rwwb2uuYip@zEe=#mVU^9caDEH_0= zbA literal 0 HcmV?d00001 diff --git a/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db-wal b/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db b/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..fc5f6d252ae73e9f526e5cfa32c5710eee70a011 GIT binary patch literal 36864 zcmeI5zi;G36vsXOx$EVp#E*g#TEy+@v|)nB9{;Kc2=T*$o)XV`EFvz+DTz2yaS{a; zf5B0Nl8S!;L_vc@NedB(f|}y^6=sr6tV7vkQ#k7!-zU9&XH|ALNn{6jrg zJf(XxRi-uRV*Hkh_F<*(&QzJ!q+{{-Up9urVzN8=iA-9H`G4)$SznD-ll|+qb!&Hf z&w25^t({%N-q@<-(6-krQ4iPbN~~8y_poN%)V#H|eR@sjuqJP6Zk8MJRG+prU5)my znYOO6_t4IVJG*jYbyGFIW0njLx(5Ov00JNY z0w4eaAOHd&00JNY0v9Df)aNJq)5E8gF8}`j=8CUYHaQuk1d&qhLNjQ z9YkDCb#Ee}@(l-^ioB|+N{l?sWEqJ%FGp&T<@`*^BYTl7$Rlf!496pLk?h4IvPfoP z|IPp8pZ>-w?%BnccJYf-+;xh}nE~Bwh4@XD=S61d+$_)cNWby4$Sj`g=^xT-JS{TQ z=X&~+c#Wrp*4^f0!=C&>+{V))XUx1ltr*BZe%blQyLslJS0DfaAOHd&00M0i_!n`Q BYr6md literal 0 HcmV?d00001 diff --git a/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db-wal b/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db b/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbeQK4< z&ez)oy8Y8ZmdI)`+T(~_VQsuTh2@_xajL(WUMn*(hU17`VXchyS7Wu0V|*A#>@>e3IpR2mS44o)7xnon|}l zcL)7ueKd0YdgS53(aj@kqmgUZBlkOd+c)OStG%Vw^VgL;jTk;U{&IY>y|=UNC98k7oo#IuS+Cp$ z2!wF{zIwS&n}6Hy_F5b3tBbu(YkhHTx!+stv^wjHyd+pPMUShEkSTpb`GQ5aRkb8ZR0po~)_emq4gp{qhO*t4H^h`>uH| zE-t>t_-C8aKg;gQX*&W02oNAZfB*pk1PBlyP)dQ2)$(-uaW+P^@~}rG!stv@DVa=) z009C72oNAZfB*pk1PJ`s0wD|W^Z!})yaZK*hdumI0s&JXK!5-N0t5&UAV7cs0RqJc zgsc(LrH3zzNk386aD7?KMB5omfB*pk1PBlyK!5-N0t5)$E)dWESJLf=UZr6VeEvOL z-3RFQDf=k_0t5&UAV7cs0RjXF5Fjw2K*;JL-Q(}qgxeJ{JcN~%<>gipspTX>(`7j$4`x8G6(d)IsW-rK#qh1rZb{fA+yPPuL=Zwa@&_n{kPx9jB0&;R5Ro83f`o_!5CkMHPx26tgw)UOukG%f$F>Z$?>m-iYGGgX9p6&>eJ3!@IP_xM!(8u}LdgZ-ak+ix%IPmh?+_q08W zYihCL2fNa1P_lSJY7%sp2dOj4+ydJ?O8-@6)1898m4O%P%pRKbSf+2JUmyFhplh}E zwT_dDV}4+kOk9N{=HPy$mK-r(a71><{d=nT3}QeyOe5%qK`rG(VB%qRg~rceBld?4Nj7WJOI2SHm|n>9M@tNV>5PtK8b{ z1B3shyGH$n*+q8ZYX+4YS`MTodgpD7tlF4XR4e?)t5UTav%0Qn?gqK8rAf+6W0q9? zI{PO+YLjB71*_>Bn)E2Y>uIJeYMaef5^(Gf%u>|8LPqUS9ibQD_s4Fehj(VHw3j$D ziQc?(Gn;j81V{Cgs&jLJ^d0*HsVS&K8Pr2{Eb8@u)T^>yL~ic~KF{U&+%-MT4IE9? zG(%TS-;342vklb?v{>s#ffL#m7oQb)BdI8Ie4Yb7&x)=nvH}hjYGMZ<%R8CH44>~v z@%guRLeMZw==Tu#c`k!eBqzQ&kzNkt=Q;4Rcwb~iO$%4UH#F(7yh{B1)Ey8s%oh0> z`|vk$gXHJL$fCyg@$3>n^n6C8NKV54 zM4AHw=y?FNcxPlq9qaPPISHEd*vXp!`dMQmG|UzO8li?XSqtS3gC%+bRfpAtz|tHZ0E%`l=flfoeK-p!%Nasd3m3gUAeR-M6_T&~xxcQd8sv zy#Ruq7u^0SG$p9!4>UQ=^34ePWRajB9T%cun#k`g5PBiwQY0tdIFVj9L+Aw{w0Li1 zMNJD=!#6bPvAniGXlG1_hS?%QBi4|XxZyI~pvXBKObV(Pz6OL|AU4%E$aM{JH5P!- z;-fYxW?HbCzM)Bv^4pBiw~PtVFk3`u8MS<$LNB7bJ8q=Mbrz~LnK-kA&2WC z<+f#C=#H^^Loi$H3pEB8gf!U~$~_ECsAl*w`a%urWOR{~$aO6}h22hQpf4moYLjB- z*HXh4H0e=ZTlIx*8>=@2v&FuUj9R`wq1UbKko6nsah*n$HWOziL7m@DXl&>Ufj{{L zm|BX+zR)SUsz=gGTk37-3%z^1?hw>2c7|kJ^Mj|T7dk^yui<(TwEgfG)8mw8PSIhY z8%}J8s?iTZ)pXh9cF)&BRkLHq3|&X>#(auifH#u5LK|40QJSFWhTs-Z8LO?~t63!l znw+JBLD8o+Q}hq!#{g*{)fgwg*!0KZPNN~4K06E$;;Ze|$WU=_lwIF1&H z(WgmZVD!l{M*r6=sXgKcau+#T1~y;BqF&%=sn>A5h}nK09KD!xv>wNC;0CU$b=mt= zOkeA&o)L#^o{pvazTpIR$e-HYfH#uLBIoEu@(7JaHw8C=3jM5V{y>w2lEKlZx8&%L zjE>TBt!OXwBCd-;(n|%Bc5T-W{l03(CL57vZKEosFZ!e5EE)DZUe#d~)`RgN* zoOt8}6(JduUII#s_sEkLrTZhoG^D2L2d^qbydf=d!{x*aY*UU&lM+-pd>SadM2u=} zkn0*9L{ZyV0!oXI+N79i!D{-3COyiJkJ8T_5vF05q82DEqn7Ve=tU^~A)xe9T9~_mYAvlFLSXzem@X#i`z|vB$;d&9Vt%Ido zIZKC;9a~!0V=pWWO!l~FY^k2*c2(UEJi`w|)74@wOD`gNlj~E``F)ET1pPWcdvS}V|;Iw$3WJOI2SHm|n>9M?q;Ph)p2pO0y;xtZ2 zTH*$Y(}|Oz2~`h&2%K&cr#eVV1-vaQa2S>2{Td6K5tto#S-7h|?`LV_FnXi^S>kBsj*V&uoX&Uz;Q4D}Eq( zk*8&F^TjLbh0$rL*Koav*KUHRmvf$G^P(9t8(q~k43{k(tZ8Zx#hx0(RuBZCXT^HN z<>?l@kyIEtPcMU~+k%@xWtp$cv{InSU6cWM`utFyesguCMh+DBKOS6RYdND-BqvTe zL8VB>rKeH7#5X-_YbF%PRxw+mm%EpW1#_+iBm?zSzFnrt#_5wtrN;8wR^Y zqDIUiE%AdS>cq>?ger*N1yL^(s`3`5Tn15#58I@eH3Vy(1?1|{u3}vC z)aJ66x1blj8|!InX=?VutR(Sfx^wAFHnsBo?BEyuO1isKiM~6PhP*qKW|?#3ckl;B{;lfR2n-XB z;W-#Y9n$2;NbW>vLRG}?U}R*4h8%cH4zFNjM10&P#mujzhAqg|qr9%C87`feX*O4z z`$vJQwE^wixsK*`-_#p8hH>_{}Zr!HDgsIm#}&jSS{WySy89ug-v#$$tjkSVRdg? ztp0X2vWDd%S0nC_Cb>Fy2sEKe;=SPNRR*kG-b%!);A-)Kn-nv@mKwGoSC8_l!qq_~ zvWD3rSIem7`xAN*S3mK~>2aOaD$OU(EOGVfCazu)GmTFqS0__)z}4p~arO7+$pu3{ zP`wD&GQRn;74-sGOTC8cMZESQfc35%th<)xnP%5jt$yIJ;p)Djdam!Np=)@$7P>)T z@Yf_>fj3HEy$fKyD!3(7s70>%15NIxd;!*XRR`-2R$*&oLS+5-AnRQjt|GZa*1JH~ z;{B2pwKnfSlhZ86jI2)%BkQkLfoqs9qBSB9X%ek-PeT)`Cf*6O-bKvHTcLOt&{}-t zCdJIJrG_oY)uX(sq4i5Dz%|Sk(OO0=-=ENnxbCw+>s?hEP@Gvp>s_1CdQ}Kpi$v>7 zBskFeLRGZ>OclC@>_xVg0X{syNiVRq)N8n2#Mal|njWXDzf{bD#$9Lx5U*IyXU*RW015+;No_K+s& zI(G>)p^D;dpzAflR^FPoYgEgBo&6IZx=ArvN$UGRt{!Dsm9DQ3 z^) zwJUo@tAy9Pf!Aw-+d_qKvgQvIznAg_USA#+uir6@u#pY%^=H7>yEAA-a*3~ZgRjMV zCM#-f{(&ZES&kWBpQ^^!e=!WPVY~>~h(4rAz|MUQO{l8)WdQbWB3IsOxVr(^;$t@{ zW_~R-Y(cIb<#j#HaA~_4*Fp0o&Fjsd9fH^}TLf$wwS0d0kC&hX+&{m39xr> z0_-(0ge?-V?2b=QoUkp! z)?CZ>RV!w%cQX6zMNhPZmuf|N-1j5fiMxI7tm`#IZ;7z?fUtK9ZVZ(@d}XGU0!^+^ z1|aOa#~|#_x3(R|Mm~htp8#U-$+#8CCB)uCKbC{+pLo|~MP;R_=L1bh*9@^wS4QkV z-k!2yovJ1bVk7>LCK)^TG&G^g;*nRS`x|=*UU>`U?g3+q58kAh`L)!r1-W{Z*C>qr zhHWVuW+`ehh%KX*?@#DOTz3VGy{AeuiZe@$ovb1=c=1pARO8xiA&@PSv6H*KH&fMH zmqupnFKv(6P@ZBO!`L#$hsQYS1<00q4cCjf;t@dh-W;;KzRR9oj11NH`s_uj-ELR) z`woNbShL-T&CQOSkPF$n5xphI-V4ayBe*qG_VSgPRthwE9%TT?zGpnh{)O#08yOL0 ze*~1hH$zt>mneHLC|kU5vZ7AQ6`Slrlk+SkqwF)IQ1CAy$G~jfcCx|v>jjfLNm}+-|{@wbS<`?uI}op76-PjMUE4g0T;CQ zAbLxny$_(hS8#i%?BgpltrTeTe98czeec+y{qZ(;OdB~7X@3Buy)VO8B$r5gA4prg zbF!jN%NLvMLX!(DB_r*#Ba-&xeAtG4s-A$_h(V-D)Xv=kO{l_nHBfsWF)VM1-F-l9 z@!^{kGryJ^wjdY1Uou1OJF24g_xZF9!xXn*Z5g+Gk3uhE?M1NmzAB9=&MdL^zKyKC zm%YxO2DR&lZIP^<+yK6rs@}SLOxAugAGe`BMLA$wM)~k4C%pjMQm^595wZQtqv>(V z{v5XZj_vvyTV&TUEH-t7)(8s>Gf<;A?s{yNw$|_Rmj~O6=qN&3f&y+M3XvvpJNFATp(^9$!0r9SvAiXC_XD@Z$8S>1{90<*f?TI4FH9im zjey%v@Q53hDR9BtGI04Wgd4V$%eB7whFIl z2eIn)<46r1!?Z&-Upp}QZ^+&UZonyBV|2GTrjtcT)t1C z7qQ)+3@EX4ph}a9GfT{UU;}gS7YE%UnLD{HJW#WB?~a)JlUrjq)TcNHbjvs&9_OSN zpj+xSTrYy|2LRm%3(y?~K{s+kHTHd7H3L6VeS`hi)cS@Ixmw^EeCXbf=q*9_K|uEb z!L6b~j{?^GfhPA;zJTuM?;N`SZe@$HZe&K(eFM~eFhf}+m#F(7s9U^$vZB`JC1`Sq z<(N_Tg>k9-k*&ZRSx_Yf>_#LaO=5TMacDx-#zVmFgT%AE1t1RsyTwOvQq25XYS@BY zXDBaV_njkS_dje!-mp!f3+|So%XcdDBJTe6o9S_#gF%H>6=#;X```xdJ|GUfMRIp? zhj^f7>&i~K`yE@MH{_>42YAasA0FtW7r@8!L z?^WnU?0x-adR*sFm4+2(me~6c*!$qzQe)q;IQUj7T?Jp6aZ;d3ajAEZ18Z)xjK1&M8GS!d25@9T6+7@7(TFsO-??v~2~{0; z1HTUw*YehpJPiC6AHzv8^J}SL3vwm30r30unE3t0GJ(T71uytp1~1>O&})_*(pgK7 z`^itRH~IT(>0ZW>*!?!Pas6HC?rN}JZ8*K!WS45w&^whL4((KWT}!9Z%M&}5USr;= zw3<+-(u$s)RikT0wio)U9Xmc7fwTkFGrF-Fd6wP}G>yH}&Frl7EhF**BUFRXG#D>w zHd_KP(o`#q^(eMO+qC`8vhN#SWEfr5rRU^KcCs2oY!+`2TR{+np2ZICwC&h-{LqP1 zH?r7zCv4RdHs%?|Y`qiB^!u94OgNoZ7}>GKZvCm67MN_&!I-_}!eZ}i)_pb^f!0KE zwYamSyX^72&}XX>#wMGt5cD0@b=^pfEz1hK^pa;M=q&1S90zXTs_dZ|Hod{uy6hU` zkP4u)GCP4CTAgMX=!V0tMK$^Xv*kLP>iJrzYD^h3bRE4LyPbyS+7^52&tp#jnymD8 zpS|Wz5Bh54n_(2%u@|{+XTi4Fc&^WOyKD^?R(htY@0lK3L9rhOkr~>$Z+GS+)980? zhMm5~UgE)E)K@*H@2jrg)tL;s897#Gu4{Ul8?e%7tUX|*XDcrTp3Me|1C2N}a6;Sa z%(6?>`+jVyjukLl1}hvBSyv-1c1Y&-(g2-Y&}Qc@h!FAXKxKL z}IRNex6So{GhWRE_LG0;fH&;3PIy1U+QHare5|lSRPyVvJWjTq_xA;zeV=4 zli4AI+Ohro$@H>6SMF%T0mW{%Y|!{|Rn!aJY^m39y$Hu%k8bvnyqm4rzOI{^uNs=c z>YTno4MNvc`%%B|1-2X5K7VrAA$X(I%|3!|_F=&UtQ_GhGp!V8@&d{L-R%1(*v3r0fxNw8aN;Qq25XYS@BY=P56Aw9ky+(f-`VzBbGk zd)hL3`F@37#NbZ{gCD8VyyDCfgC7~n;NTv9p(c_dlEIUSB4F_QCdS~8Z^UqTpa|hI z*7?Cx)C&+U^%}0%JUis4vQfCwINW>E^V|1l-T61Mmhkl-NOvm}WA@42WK$+KS5BGO z<1Wg?o>rgSi>8!`y&qPY*pd#DTY*iP*lNkjTHY_MvL-wCJ-VyPuG~`B(mb}ng{xZq zz+vNfeKt7f`i>g9hNo+x8w7^UwX~wF=9a3A#&Rt!D=WFBDkHXBOKoL2w^U_Rmusn| zv~x>UMt-@LmXua*smkau*V3Z0lv}DYg3PtlR2B=CDvUC7Ej5&8ZmG&hG}qFC(#S1U z8Lj48npYNbOI1d+xt8XX`P@>KQE#rLS!FJ_RApqGYe`XNb4yi5&$*Un6eYJ*WrUq) z>9*{)8Qn~~1!M17YfXbPU9{Fm^E|s28@{)Fc0Ac@jfxUoMWaA)DeD8zK^Ea*QqaIy9l`qlYoJ zqcnKMTUGuj#@NJ1aZ=3uT58yWTo))WjIo{F(HPsG6^Geizc|Py!8@v#P2?b3G9eU$Y*!~a$o9XBg?Z(0L2;B#2K(?} zC%rJrCiNPw7lHV9A5V`{)^iXyJ;U=|(^MmiP4+Pzno%CGH89yEAHxU@wh*T6@!&)ow}r~>(Ep!hm5E^qPqb)dNT zFiwh@UrP;Jkn1Al1r$HGQxyMXPUFa+$l@}7`JRPdM0kG-7GJN@$l}Zri?8!o{3u(u zr%o6b$>J{{!NKD9PngBOlH)jhP=s+A?ZczJ2;)+(;d&9dz4!6-IOSLlOGRWfe$V7+{8IpOWK_g) zL?zNBj^`eSCRBx3!0}_mxx7W{j{(QU$8l23{90<*f?V`s{0zs>PXNb11|mleMIM&{ z%y%vHA|C$(@c6MR?JUkL@%XXfJicDb=(tE8Pwp{;#~+wHkADeo%1kQ-np~p{0OT*65|DpscQQtfJc-C{5c%;8bCFyk^5YB zfhM$&L`LNIPL#<1D1~z5R77&bCDJ64=T3(vREazrNPe7Hm$#VxaUi+)Ku(I8UrP;J zkn0lVg%R=#lR@$ir&NwCicBsenD1NYMNIw{F!}K+O)btWG5PTdOn$5mC>P1($?aw^ p`GZqo@?TA{99}3wxs3PW@m_>-sTW@_dX36MKmP9g>)1^0{|90N1d{*& literal 0 HcmV?d00001 diff --git a/canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db b/canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..e68d88a4548fdcc17bfde09526507868c5af4d72 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db b/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..c150ee35b6198cf5eac5c97163e1c1fc1ff73c73 GIT binary patch literal 36864 zcmeI*yKf^!90%~7ecEfD5|4rtGU99@hY347v#*MP5RVn~lZaM!(tl>_f@g-ru+1d`bfA z5$mL!wzHS#X>JqCdjGv!o2E6zK56jt{sOYTwP_hLPuGoE)lFw*wtG5@f6l;W{X=uC z1iBu~s%|vTkh6Qt%k0rB`A z;WgVeBMu(e`(SThZLM$X$@eT<&*_-+f5X)~=wV%dn$<4%*NPqg$LlxO{zrBFa#nTI zSy{#P`?J;F)~%^smK9rn{}rn&eCNoZbY6%|ojq;V~|$TQ0|*NB7ujh$(AVdt16{TMmka+ zNm_`ip|Q*pQCCS83o$p+UE;KncofBqDMmBK7!{IpT4Y5|n<%aFB2OY7@p+NfY+|>O zA`!Ec%ZjFToKjIVQ<^s^r$W`)v`A%?D1Ak{_v+RNA#J22jYO8Hg2oNk+Y~EBC5stN zvqI@D%2>kdd66c6_BX5`cqn*0xE4GcOad0#Q_*nRK_*}T!%f;56OMp11`;)k5J@2gN zpZ3lbw1dG%M<0K9bl=j!qzDNC2tWV=5P$##AOHafKmY;|fWUXuf**q^>qGcK~J|2v`CFIr)Oj5@yDf z5P$##AOHafKmY;|fB*y_0D;Rbpx^&@&EtojGRq{k`6|HD3ORia(9*U56GH$35P$## zAOHafKmY;|fB*z8rvTB9pEQqN{z2E}fBwIHj_l>s#;PCy0SG_<0uX=z1Rwwb2tWV= z%MsA|CkBHj2G0zhA7q1<2X77D9!v+@gXL@tX4L{=cy<>gY!mB*z4o_3+x6S7*LK~u z>$F|F?UJ)Du|}auJ?HA@Ke&$XS%KX*&w^M+A>KkchnBHvm=gjJfB*y_009U<00Izz z00bcLzZU4fW{t;hj(5kuknvY!e20vGv&Y}r=s^YRKs*z5#TI*l1l&U7vnRc1TsLn(jQ&q`Y6)KB#O5#zEr=rSPqtgp# zI%Too6{9&%6FTK_qj(a>ag~k&scI2R8Brw@J*pOpR*ETF6h*Al_X?g1KJs(jPja0D znKiu7vFeD*X;#y$Qc*00kgS=G7P@OOau>;hJaQJva6GaX$zD7ni)1Da-}qPl>93vg zu3LWLmOp#t9k0BYBVaXWAz_>4d66S@UY6%Ii}c$_iyX!CB2A7+uZ^_Gkv=!l-y~=w rEpj%@jr14s+enL?F>@pRf&Akaoqv2a&pd1u1Rwwb2tWV=T?+gI7ENm! literal 0 HcmV?d00001 diff --git a/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db-wal b/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db b/canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..a3deb89a31befbe6dcab983caee83e19475ed3ff GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS6x-)4RHB@f9>_S|~aj~j#_qfj zyzw0z#rK%!^dFl{>9%GK^n2jfla!N_{60y;NS2(RKfcNpu_{JoQjceEQk_a6K7Tmw z>ROk=sN(bg0!ez@6`HK5qB#y#Wmd+!C$s)<*s;#Ps*jZw75#CjDzlQu{0)`u0~PPb zp{mSE&hjt67VGP~uTH{Wax1f(m$>6%ciY_V=%CXd10;Z}6mG zev0?n{bH|u)H@OdwO&L2{+p)SK@U~@9!Hk@D`&_5Fn@jSUsLgI9IDE!&UX?EdTPZIFn~N+o&x4=hnBBgHs{C8-_aR^vxtbbo3dezu`4nX%e;)tL{6AuzGs1XIWXM3W* z(dzht8^@vLBzD{KBRjDge%!I#BntdA4(hJ&t7d5wdZ8P*RvNpinbQfZD6PkqZ@Z1q zO%uZ05fo11epp`-i=)Z{EjqT2tJ%HzuO%2p*mo6eTpSwI?-bGkIAQ$_uUzAmyf z`EE47xX+7=i!UnvT^6@#tQi3W5I_I{1Q0*~0R#|0009K%Bp^l6)K?|SDvZKnuS&?_ zy{b7SMmGo`fB*srAb#=;70h*E37^a;7I{X6cDG2q1s}0tg_000IagfB*srAaGeg z-TycB>xZ7{FJ)o!f`ZFU?rmC5-UD=RYh*`+GDp-~cU7C| z3P?@PG6Ibne`JQ?Y}ET7r5<{2I!MK>xBc!5N;w?G=k6WR0|E#jfB*srAbgzv3*iODS~Tm7;Ku71Vdl6 z>O&u-hz|v!ijh9`p-Mq1QiOUbQYus_SQNZ882ZqPLJ_G&;pzr`L9{Onfcab=Irk`zy2=qdUL%C+eN$k?bVnENw4?iFP%DKtl69k2EV>DfucHf zq-T%~p&Z^VVD@a=Jw1D-f0e?f{Rhmo;z2pRTfpquwjbNyht^I*`ND1ivuE2rYybG8 zy#ojGgC`HZOb+f@n{R31;gLi9P;%zBLI3`f$4?JG{KaD@PWA>zk5%=7!Qe<$GzSh3 zs^Um>z&*dGw0quv?D*U7IXu6ouzTL8kJfLiIp~*%_?azdVD>mYb>e{&C+nk!?t{ut z^c<+OZ|?uY12{pmQ2w@C_VRq~v+MtS`%Ubhhw{vB0kdb@er&(H+u8@gnzEPMK5PH@ zkvPuA_BIQ&GuBa-M){Rt5M@g%aGyYW1_gDN6_#g69|6~5$ z{%8Htzt4Zbf0OwCB>q|A|B?7F5dT-i|0(f*Nc_i${~h8#O#H7C|KE=Pn&ZFh_`i4j z=NP2m(KWP+qzrU-L&q8b=R%CX5Cfmu2^^3x=YqwwC;j+=dC+u z-C66-Sa;gGQ`YsZJF%|4uqPw?Q_s4tb%)j+ShsIo$GYT_J3ic-OqM1)liMfP;Jl#3 zejz~mJG+NM2A90yCC|O+-RR>zckZFDo_mMQ49j{Ket)A673)U=NB{{S0VIF~kN^@u z0!RP}AOR$R1l}b9(i;xU#BRl5R>kOv;+gqC(>uakk%S($3^K-K^(^LLrJn~#vA-FCp17yFv6wyix ze}M#$01`j~NB{{S0VIF~kN^@u0!ZNfNr3bwJLX>xSE1ba`TwPVi+O*-#G^(6NB{{S z0VIF~kN^@u0!RP}AOR$>PYJ;D|AG1Vp-ppq#4-O0aKkoo@pFJ~*b!jGNB{{S0VIF~ zkN^@u0!RP}AOR$R1a3|Or04FK&-nW*l+E^+|F^d`_P+gOi?N6&dtVXOfCP{L5h87ytBmnGx1&`-fxNb9PxfZyr+rxW8yslSp;wX&E0_&ib%QJ#$@h=^$K^> ze3!Z#X7xh4>&6Io%^2>k8WX!K#xQr;n8;lM6DxPon9N-;CUxhHN!&SOq&sVjaA%C+ z?zAznJ7o-WePbeb0){DfY)s~kj7eS3n8bCBk?znK;SP-9Zr_;Lb&O#yF(x9tV8^7M zyB$9NVK82u8P0DlPkK|^i@v)#?QN_tt&Qdu$ZUV*I^=UC!%jJeZvM**TZjaZ01`j~ zNB{{S0VIF~kN^@u0!ZK*6Bysw3&Xp@rE@C7G)+zG$ogn#OX@2S4P z*F`ENWWc3WS*BE^8Kar1G?htHm6cGs&~-3r7&WI+!4T{0X8PM7S(0qK&Nc=E~r%Rl|ge*VTF|Ir{nJIo&)=D&0EhurIs zl$uQ0jLK;#%B+Sg(NU8D^%BmwVvs(%&{9T8#>%v)S~Dt76W=Ozx%yg_rpUx9b-6-Y zm3%U`N?oqvR;39US*0#ldaKfycvh*)-O#EuBCb{Ha>ukPd6<9vdgmXXeC7)A|EYfX z?SA;`AbfTZet!_YF$`ZEhEEK`hlb(HZuqntKH`S|@H%%B!CIZfkO5vNG>sI*dLd$( zH4Uc>GN&`0a)`xIu*xLdb;u^GA zlEQIGNuxyRGAolxsVrFJ3=T*^|0GmhL%&hPRMk~PA#O{iGp=e@2MblIWn9G#O`*Gi z?DDLnI@TqvGe|C9@G{d459S4{pc9cPR3S>JmT{^x=&3{^vbuM1y5_l!B z8}w%pL_-DD)({Ajs7MMb%K9lucTtrOc8tm`S8+N-jA~ zOViJC*h^(_0us&&!9`TUbBtg*OJyMigMbT(>`g;WGW!Hhm{wehB!QEpgQ+f28vB3Q zlof+(Y`^yZ{^z>%|3CBc*GKu|qx>)9{E>0~{3QR{B!9}!|2~yJHkJQjI{(&m{_ITt z=Im9C6v&3{HzbVk(t?=_R!A6Wr5V*l%qf?dOnIqUEwk2sW0R~~B~idgG7%}Q>e$2= zxX_iTA--s)n+k3P!9=Ul23fO8T_RPh(mGkSN?oE^tI`@-u}WPcUaQh7S++`DqGGGk z3R$vBT_R_z(lS}JN?oFBtI`r#uu5GbaI4ZHnYT(^qI9d$0-3W)T_Sm_(ma{9N?oFT ztI`~qu}WQfgjS_lGHsQ*^ct;7GdTW#>nygF6OR9>WEsEMtG04-$-rKjU1r{`N<-4O zN?m5>tx5ypSfwsA_*SJpAy%o&EWcIB@$b1d zO!&u0;HDuE>|_atnON4q5@-Y~Up$35XxwBpOA0QOs8ph5uwBA@7QBk`sDZIEXRre- ziqR^GbSz--TSjHDmFOBKZ7>ClBN$A>ikgBMAxs|AxT$4P>bNLWun8-wT*e8bMPpVt zSqy8cF#4uiN42g?ZE6lSx{S_)^)4fCod4teAJ_lk28T5;TJTiUnrE?+B5fp>*MI$g z>hsrj{{Q4`{>ohby}A6w`KwwBxM_koHUtSE0VIF~Zdn3k$Ii~XjObfu=Y(uqr7olX zR;3=ro9>1rz{T>ro9X>ThhT>ro9 t?Xy-+`2NpjZ^N~6!uNmRMYXulTr@hXbt|WRx&D944$`pUNB{}+{s({gT8;n! literal 0 HcmV?d00001 diff --git a/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db-wal b/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db b/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbcJgf@9nK?#Cg-PL3<$u7H# zAuk&BArBJ7hky{pl|1DkN+cx+`PKwf zeb1?$K{kYPa<_olvu*e7*)#oX6gKTYYR(l8%7xtmX3w^R*!}^ub{fhTb_Z9(ZJ%!!#j??F^zUT1Lo{8P_?(!~uRZVA5orqu9>N{qS3sdLrJ$GK;b>eO~ z__{M9&Up8DU-te(yjO|$3h`bf-k*v09Pxfjyr+ow3*tRN zydM$oQ5eM^{>|NHEaI7a#F*6GGDf(Y#w6~BF|oUD40qRzVeYCik-GwhB+cdFiDL-5~_01`j~NB{{S0VIF~kN^@u0!RP}Ac0l_q(`>RlS2}w{ztYp zH`doySC*F+7v|??XQrq8$#~?sutKmeD+A=9JQUGN3tvD2NB{{S0VIF~kN^@u0!RP} zAOR%s{v<$p?zZ{p;VKk&=)p|CM@Cm!2pI3f$5Y78hiBfOAhFg+00|%gB!C2v01`j~ zNB{{S0VIF~4ln_@|L>TuAKEl^Bz^Nyfa|uAH@*kxy43&=j0BJX5-YW4y@a^ zF1hTIUa)Oa&)p2)|1j`2M$_|ScWsfZOq{JFn+yKz%<5ckX}P~XWgZgQ`hG)Z;3RggYaE7Iq-9yFq!3wCUq4<7GaT6C2~o%EECAQ%k!vCf=SJk;3?$bO*0kIghwSU zvs}(eNARx-Y8Kgkn%k6R8==x)j5rM1zJ_qP!-j%eOhXRiI)&u2rOARUgJG9U$w8;JjbP9v!*S5>lD#+}T{06-KKXz7r++ypUUP~c zI>n2_;-O*jJGZ#s-G`*qWXfh#&Qi(BJb`4)JU8bIgUr*hs%XtKAvkAQ8ntIsCd9W& zUCzF?+|0)=l8II7a)!1k9q*Cx6-ph>;#Q?4GO|it&h%EL4dPj)E>}aV(iU;8QkN^H zRcRCRkMDQ>@yTc2CjLJ@2){K5Uv|PLo$z~3_}Vahb{IZ74DTO?&%5ChZup=Z{=@6s zO$2KY=9OxAO1X?Bgz}`MO39MOGG%!qO9hvIu$tG9&|R~fLV@_KOGrG=N=O`E>V#Ew zT0@WzR$^AyIu_hS@f`XMNCmGd#UNbpq=uB+qLx*#9G5YRh0JMILjZ>i?Gkp#OUjjG zk<1buX%;M%8PrP(crDLhuSiSi5g_!JaV=8F=w4U43KnG?*Nxx_D3p-xU1X)HS3{dr z$y~E2uObmF)Q|u^j-lcZx1e4Suc(r;qK%HAb7QgQu-ClEswRs-Aubc>^)we$G1GBD z+><&^GEs|QF5|LdCCG>-Pobw$4P=^!?n*%4q?u4W)nzc7n$D<6HH}3E{Zmw%BZ{1+ zO!Hc^rqUu0X6h!BnNFaMS$Q9-w;DyC_k z#jGrqZW7LdsV-3(`+sG|2$3icYX9$lu1o*_Q?Gb+R6H^&{xU8e92ZYdimy(J$Nl2( zQ^mtm#UG}NZ%!9a&J?fDUeic{Y}kH-Wf@ZyoUlof!*#`~6t10EQ&sY;%$p=rm2T}f zX34r$Qe^}ena~vUAil`7qOuV&Wr@gj+(Zpr@vTZTWX&pdiBzph(`3~ub%|!JN>gOT zDs_o?tx7&wzCx)(RBTn6kR_|sC33bZjme@_>JnXBl}2R2Ds_p#tx6u5w@O{2bgPm} z=B!eeNZzV6B(qkjOSErQa>$HT>e3^$DhqPEQp$cbqz^Y88a|FPNPrMcp}bH%gs*R&RJ zXo5I41PLGkB!C2NSOR3*&d$4x=v!y!i{!|aN^d{vZ&g|#TURJ`m>IMx&67>5)MfV2 zsx*h||5x74Y~_UO|8Kgx+R6#n|KD`Cx0MsF|G(+!vo=on{12=LUGX$r8>i#={10U@ bgU3}Ol`Gz~aypRf|2OO)4I7RGkU;N$`(k1? literal 0 HcmV?d00001 diff --git a/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db-wal b/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db b/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb5NL^wAO?uUlRStA9>tp%A3}K% zoM}tA_$N)=w8{P^`8sX#b++Gc+G(@fZohx~5*Nb#Fm5;fz@xpCTpbVO(J!rwaN69HvW_Y=la|Exw4SrauTU4t<7Wo^;GTM6mKSxy3*R5 z)xY>EwA(w&XUjk1a%nYJdf>)zbz^n&>RD0$aCUOpc=6%*swl1BCCwf{kiuaih!X>HD4|D*bwlWH$gpQFq+XZ0`k!p=^a^%}bb zff%n|*T-wxv(4?7>-)P0ot3TbUU#Ll(RsPD+uvGW8LS;_ce?$p?Ll`V6nQPZTs%D9 z-#r{Jt9cpjJr8OA7xG6RtzrVrxW2x&ww>m`)q2#bSn<^?H#TnGd}8zF+N>q6udhF+ z_+zW+$Ff;Zi|rF2K!5-N0t5&UAV7csf&VHHL!-!t9~V>9YqQ-e5l2U={%d&#BS3%v z0RjXF5FkK+009C7l0XbGeg8j%hjXA2XS@4h4g@>|0t5&UAV7cs0RjXF5Fk*FKn%^8 ze|q@1oZ+V$HI9E0Gu3@06Cgl<009C72oNAZfB*pk{}xEc|7-d5Lr-$*jE}#^oAUtu z`(eumn|B0ogDi&Vlnp<|XRC)T1!F!H3)c literal 0 HcmV?d00001 diff --git a/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db-wal b/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..ca41d2538faf755867493783f8681bb445609d31 GIT binary patch literal 90998 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 YdlAYjz2th)G%8Q}pKs5;l0C`&|H+I5ZvX%Q literal 0 HcmV?d00001 diff --git a/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db b/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..377dbe27fcb2f6cf1df1cadf6f1290edf74f07c1 GIT binary patch literal 65536 zcmeI*&uSAv9Ki9J?4~6Ju|-9Sm!M72!?wHGKk43L&*CfSZe{{OYfBnzZ{|Tfc^T$`YDYnJ5-S)FT7wLvlh|eD` zdbYQ%GVOT%w?M8gdcu-bO|)lWy29FQc?!$FU}9T;-F{X!O^jw?y24r+>vv4G4@|tD zh3N`wC9A*oTI}u~zq(9*$(M!IyvB*Ey@T)|89#TOvq6949QKrOPfnGtyKYbA-Fn+q zc~8|hCgb974^zr*jaFpH$pW z*@+%i2l{+)E-L1I9sB)nyJmqNuID06>bLv;9TVSXVYP$X2rY zYscbBUX^T8Mfxu-x0K_d5Z@ig>~uzMp7le!M;Yy@(O%e$bdsvf zOS-Mhi~J<_(y-a}bQ%Yp-1q%X7MWq4IMit#Dlb=2=$ZFUyv*0W$<_^YH&IEHWTMs< z`}<2XAyIh*8giabqFMi~t;bvCnKm;iOh8uc4}II@Mp^dwH#aw5O#HR2>Cdw1GVzK4 z0tg_000IagfB*srAb`L<5s;$l+M^OR6HaBdM2q1s}0tg_000IagfB*u;2uRV8_R_mhkH2dZE57{ST!}E(EmN0PJBbiL009ILKmY**5I_I{ z1Q1vkfywhn-t6~z21yxKyfN1ikcOP+2{a8k*W+x;P&RWw009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ I1pb4-Z_s1gfB*mh literal 0 HcmV?d00001 diff --git a/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db-wal b/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..31d40da7e568ffbb8b0e489443b80f9f65cbcfea GIT binary patch literal 71499 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 q%-OIo(kN=*WxQ^(lk(XZfwQv&OL}1eU06D zA$a3EIEwEv&*?ulnUZbITIlz{uO}%dzmxMx8%Db1{QU7%u837JDwBG=dXwr@3i0{F zaaY&66h;-V{}+gp$|T`8o%ULZew2J#KrEmyWJSPFpY!WVc*#4Cc@m?PdZi8>?Uzq zZJ9~jO{%3~JAYu0+O6%pJM0{M?6#v`CwZ%yA6>guak!N?csbh2+)4NMuWe`=?QM7P zq+ouE_B#DyuXEHp5(U+-p}+qvQyrj(Dt?b6&*QaVpa0?b^|^md#kX;&Dz~zT<1dXz zd#Y+3d6oqme|cA&$+HF9sXYB>mRrifsSw`{L!ET`W*i+l`i#=wNCU@j+U>ek4Mmc<#|zHc|kq2BHwFRw$ljWD2-j; zZj1hg>n9CAvOOzs>{R#Aw89{6T0s!EUC;J?$G26pG)_G)@O{e(LX|QOLn{nb-l&~6 zLO+NTl~R;jVsmq5CL~%Mftt+nNmR$bQh8i?UfHTF&aSg3cNUPwnf0y~~8a*R`00IagfB*srAbi_?Rcr<-yehYHGmmlUgaC$}n0R#|0 z009ILKmY**5I`Vj0V!%y-+K5o=YF!JmznOE$&!gS2q1s}0tg_000IagfB*srAaGeg z{r+$2#}7TzZ_2{t0R@+v+}pC8JO}9BdZZ%+5I_I{1Q0*~0R#|0009J+LqPrhZ|Fxa zpR1Vj?f>ddgiMc2U5*38C=oya0R#|0009ILKmY**5SXFBaQ=}un}^InGDFl`r&4o< zWSBIjCbP^yQ(58l5qRarItB;ob$1j_oxR8z<-ip^P2T3VZ}o~7w8D6Hxqs%^!g zIG6>crL}de-=JzAqJd0(nuQl8LkLy>*{zoakngyk$wRNoD zo>hC3vWjK4HLJh>s+Q-!vHWwE|Dfle>iIHjzo#~{4&N|N_SLJR4AVr0884*_cqp=r zr&(5TzlqW!jHL8}S~Jx#;-G(Rrz)QZ5hqnp#g!K( zbCv$?Z)%S7kn^~6#d+45IKoMtmz>wshat4}CSbclc*3*$l)TLDsg&A|N{MZ&6xxVparcy-f-*q2zpLU;f*SlOS-9iMIak@U4dDgSediH5=A<-oaK05m3 zqocdFB}@uQ5C8!X009sH0T2KI5C8!X009sHfpaCmG|N;!KlUjMeYGdY+3_z`=UP4{ z0|5{K0T2KI5C8!X009sH0T2LzOF@8X%vDz#_2{dAzvtL=Heh9E0ob}+6mcomJc;K#5$X-m^s0su?00ck)1V8`;KmY_l00ck)1Xe?U z{3iy3CkD?9UKk{UR|ann-WgPb?ZIjm2D1_Y*F8H6;nb1NSosJ`Dadm-Et6WtBCC>7&+~=M>Oyi+HSAUGA0hAH0AU@;7!qxjceHWg;$O2B9$VIlZ4B( zA-`cSBM)Qp872?pCTJ2`9Ru`w_k=exsd1Q2PI3DR;+>1w@&Zf9;{?C8<8zaAM z=3komFIIlb%I|ZPUWk8VZtL>gWec6>^8CEc`mIuzt$3~yW4%_X%a%S@Nn_4`lsfDU o^OPn>%x;ys>@jnd{(}GbdHauFh#eJ0fB*=900@8p2rNY4Ujh$zxBvhE literal 0 HcmV?d00001 diff --git a/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db-wal b/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db b/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..d1f8e0bdd68cc9b3c59de180ae6fd994f98f41e7 GIT binary patch literal 36864 zcmeI*OK#IZ7zgkfKY|j0C<25K5~`qyU@>j{ws+;RL|g$po{1FkXw_E0j@|DJi4d~GHP7AJceom?#^XDVy}7eBve$-+Ij=U9UUr}*n15@Q z?Jm_Osw@r5zx|l)@jd>_-aEaHacjKG*caQT-F4*1d@C^f;%FtM4}{zc3K0h?5@8wz zLWVLGYM>)2qa=>gh%FucWY~Xak5;_M_jRm1;SHn|p(;F)#yS_7)OnZ|VUbGBsF@7Y zM2DG>S_dNZvP`5|mJ5FnrFj@>-47Hs3+UM(@iUPP{8)r>;fq{rkGhn~MCsVeiiB}~ zBny9m48lSLD#=CIms;de7zsbgeb1LgN^|&A77Og&XhjE!%(BoIvM^aFlSMz! zqKN3RQ2jxYD%M_Sz21{vm0LXKyUT49*#O&%6;P(6r zFn120x$}Q?yfuHV&OVxD9~>OKr}%TJyMtIh1Rwwb2tWV=5P$##AOHafKmY9YQG3etu&L`)pj(Z2MK>z{}fB*y_009U<00Izz00ba#5&_P*Wqx{nm7?Bn z|Frz3{3zlipqLf{5P$##AOHafKmY;|fB*y_&_Dssx|X^0@CHTw-~Y>8SJOa5bO{0w zfB*y_009U<00Izz00bb=Z~;31@0i;U-7@{;mbnz5w!-JPN2sj_STF=2009U<00Izz z00bZa0SG|gd> zQ1KTWMJTEG7eEv=NR+e?fhedcj$dIWyNPuuo7)u5`i}2NFYh^e`)1x}#+G*0_WSPJ z&xmJSGG^^q&kxU|ZWF`!;Qd=0TI*)c6#kw~ppdsV42{fDvOX83T5I#^X)XRa1MB>U zdaZa$_UEEhYpsj%h*&TD+DXT(Pa2 zdprBii|=jk?iu#xwycJ>y&;QwxNgg0Lk`^|&!q9ZxxI6`r*q`V8qY1US)Cfww#v2m z;Ie6JkNrn>Kiu7`HrKXP=evff`n2@Z&{6j5f_`f9S@zp-748?y_GzG$pZ?h?C+6h&zou`;3sk1EQdIHFT7 zV;YMr392|qL>MlLbj>7I6KTq7ramQT$aqOvm8j8G6{lqu)lyE2s7mF+NQ9V8q&SVH zMJ-Ay;zC7=B1t(4uM-)sKsHKyB` zPGj1QX*H(VnB>G%^Y8ml`p@}S{k9T9+!YWY*71B2`^0iiEce)2!O-sM^6>DJj}Fgl z_qgK#1V8`;KmY_l00ck)1V8`;KmY_l-~l8+49C_#KlYVa=4v;`$00JNY0w4eaAOHd&00JNY0wC~k z5+H`_>sK%Ts6^lSKf4EDHMtTy41+LOP3Pzp1V8`;KmY_l00ck)1V8`;KmY_DVgjoE zgy%ixJ>^~YUhpPf=yC5Q?=}5K0JLrsaDBB~5~OZltHkYT#avIT*mbpvTt}ajDIELugUlh8UJpMzcmeVAVtQdLfAW-Fl1?4Q0lqFo!B95js;VDnTkj1sAM{ZSAd>R&l z#%UT-CYh=d9M=WSk~rjrEV7IRBWIaP$s>E2D##;inF_}vbD8SJqosCJ{5StofBG9M zzia1T+W9X|e#gl#W(9P!7veWno|jpn3#&Z;L;6jmWmfURNPm-F6KR>1zA(~X#A_lg rb2coD^e1tfNXwit3nTr3`r{W}f4rM#9!3QMAOHd&00JP;CV_te^G$KN literal 0 HcmV?d00001 diff --git a/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db-wal b/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db b/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..9652ebf0f1dc1f4f4a9f8c5c68492021173c404f GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS4~snsj${*WxQ^{zB2Y(G|Bl_aI*MHFoEP z;EnI#D89!$r~lYwO13p?q2B|)o-~}Cliw$880nJp^T$`YB38wyOzQF5n^dP#h|eF6 zJG$1TFsgX{zd#rtcZ4P@s%VcxRk@Y%;mNK48+NSouj z$Dyj+%7W!zel6D5_g`o&&y)H@OdHLjt*|7}wppoc1ck0a0HwP2tBVgCBuzoz2bI8>EeS;YKH<7`h= zts~E}VELE##F;!>u${`&e`bA4IXD&KyJ4u4PTvfJuA|Q={f*toYqr9qWd*I&w%let zv4VOKTWQmeoy1FbT{{x1f1lsZPmKPC( z{#G@k#OMYA1Q0*~0R#|0009ILKmY**rUFt(_5c4uJesbV--4X)<%jtt&d3NLfB*sr zAbYB?1T_fB*srAbIv&$SLGeo_0SG7!6 zKx#6}3^X;FWjY)6{70#$o|{fmaqE4*`-V~uXYsjvNA!RI0tg_000IagfB*srAbB+9=IOdIsk&KMnQWeg#h){tbV^7?T>yYqlL}+N(c5f*ZF#Sc-?hw z?(ZIWFWubP-M8GWom%x>ce9pFf5WZiX5IIXmrU9v-{09ge@X9nNzpF3U2UmzW4g|G zogZGaU9-f&Lwg_X?W?WzZ9Vv&W$Q5=bNp|(dILSG>o1eK$nCXa`~UI$&AI<^UB8}G z-7KuE;{5%|Y;Wt<)J2vRn}7E;t1N#feo(pcd<{WX*y|FW{Zk(Jh%;{xg^bc{{NIZ&S#uTF&V~h&P zIW4jxr%jYrd66d(kETXivx(D2%Js-ep2UD5tZYtrdg$;SPCIoGoHFme-XQl zROcyAV;!lkVnqdO5}MapMMV@BXQTp6?zSA1%ZdgI^NbqEEEqFc{1uV#emxI^MKSL<1E#QZYMG^D6rV)O}G`Sy` zCi8vMq`qgG#CLVWBHuBuxNn;#_K9fbc}i?y3efH?B!k@ zC&!;uUFh^N7z7{y0SG_<0uX=z1Rwwb2teRU2oQ^e=5C{oe(T@u1iro+u(YcHWL0j8 zxDs0)lY{^SAOHafKmY;|fB*y_0D-F{KrBBrUp;(USI08%|2sA@Hv=r8kdyDpEMa5} z2>}Q|00Izz00bZa0SG_<0uZ>|0{ZiR*F1jc88b~{o38>at&r2_04;3|Ffarl009U< z00Izz00bZa0SG|gataXr_(}8V<)3t2{{8>$b7U{4Hf99@2tWV=5P$##AOHafKmY;| zSdM_sKhf(w)qAe@VlV5x+Iy$>Zg1S%?k#6!Fsc>^!?UX(VVhVd?6kiP+OFSry|(MN zU8n8ZZI_&Ni8TmK>N!_G|ABN}yW=^*vTnm5_DorMu$Mpp0uX=z1Rwwb2tWV=5P$## zATXyu_YG?}e0#V%{EZC1A;UXl_=i3G!5)5T4?nSoa|V0B#RuWI5lLKCDP=O!*?99v z(n3@Xjb)yQx=ONGh(R|=BatPlpmD=>9^qIisuK}2nr4O4S%fo|@OseE`FmwjjZFkD zb>8AgP+8Os&7~UWs^YRKs)0_^TI*l1l&U7vv6#rH&iflvRmoZvDvNXi;DOImQRS@B zE0XC1!Gc$e<~&X4n8%IcNgT&jI`C%6lss@}$$~s^X320onCUvnfXtGaIDG4W`KP~i z%DZm)m0SMmm3O@I0XONT_%jl=S)OOvL#JhV9^EC~HqtD6@zh9vlTI6HmOXu1q&15K tZKPR_hG~&TN5pR<&2q#{jr1?_k6(2D@k?=_ViFL500bZa0SL?`@E_L5Y%Kr) literal 0 HcmV?d00001 diff --git a/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db-wal b/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db b/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..85c78161b1b031a1e019ff800258f7b1c7a97704 GIT binary patch literal 36864 zcmeI*+iKiK7zgkf9X9OJ(u6dW5D2FAF3H8%(#%LJ-8pS9OJAYYtVXcp;9#33ckz29 z7yBB%YoU;vyhF?q$OH5N+;8^a3*!_8uOcP=4}6~WS{lvwleA`anm4as@oVflTb6ab z`t@U~W6szg51&n4?TWXo@bkX~O!;ie99c-Qw+gBnE34JhSos;bOPG|nnpeIScS%Q#i05NRn>q4R1Y zvMNuia%{s)6^2X_be1{>}r znrl;l`|B^jJUD+9uK&^T-uk^Z`{lL0{H!zBpHP*e2L(7AdhXW4?_A$nJ^;XL z-7(WaM05!P5P$##AOHafKmY;|fB*y_&~X7e{~x%=58ZM7&2Usu! zAOHafKmY;|fB*y_009U<;L8-C^Zz~f=;c$2F!1~~F9G0Qtp~q;nJWTWK>z{}fB*y_ z009U<00Izz00bHo=>N1Bf8=2Fo{#?Gqn8{*k(_G}YaNdmdUZy%8G3a_jiE6^YK)LG z&ILLIk3qrZ`?j`YiKb~X8qf1jDLcE?`-zW?rX z;u((_C*{=7UM}Kp5ySZKgPWV$>tdcb{Jl4UQr_G&G%`oo#>|xKt;~j}H~j^Lb^Iee zS3G40GgGd&vWoFrD%yvYy*D%EdMhgy|L_%KG%D8i*M25zy~TW~g`LgyWIa2)YFjt< zcMqJGZtU#t8}`}sHJ*w=Nne{ndD>na+eVERr)485Dw49I zERH4RJZn^~E~`d}FwfMQ*XM|X;q{$LTt7Ko=+n!_HG|l#QX{f3Y${1*CUeTFD5hnq zos-UGbjx*1X8$-pk(W`oj>)Y7=n%CG9cmZ51MMQ$Q!WZ!SHGIN zj&|I&waZ;gJLa0&r7qDfQ{(UZPx#OJFZin+E{<*?0>nBUPhy|doU@vHT3bl8hsH-o zpMHFF&(cGukOTn`009sH0T2KI5C8!X009sH0T4J>0>p4^efe>y%rcj|IZlqRRGn-1 z=nMov00ck)1V8`;KmY_l00ck)1TF;uVh~^7Z8T6{{f7h3Rl5O8+XW!2a#O^m7-Q0_ys|tsg)1jE<3*`lkR(E9CS!KubFUbPNI@00JNY0w4ea zAOHd&00JNY0vD42QIDV0k6!*s+4ArIZ=WN3F=--dBAU9YXWZPjV3c3ZXD zs@Yb_S(O-LU#Fh4)$<>$f$11S;@L~O4};j9G6i9lfB*=900@8p2!H?xfB*=900@8p z2rNio_=Yi=ygk{S{6;3n1?4Q4l%-tK zGKr@&2X-`7|m8O|mSaOfr>`IB80nr%A+1S>`zl$ActGt1M$75`e)f9rqwr@ys| zJ9hDvUHs}4x1Hhvhx9`H8}ZvL&s}Ed+$_(3kzuRUWfsp>`jZS=r7kmluF@UiwMt!9 o!#t&HCUIM(E-PlP5<&j)^UgnhAr>lv009sH0T2KI5Lk%7e-v$WZ~y=R literal 0 HcmV?d00001 diff --git a/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db-wal b/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db b/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbdjc>Jgc2=TC>r)2E0MZ_gJB@rhoPNJaV zFF1-&Qt>ZmR;kjK{@nZ}uaZb++dJbzo;>jjbgImu>6X z-p;=B!n@nMdxpKaE$gvuZ^*J4uiLWRkYo2~ByUGv+uphJNatu|+>YE5oAn)I+E%s3 z4lbFt9!hK)i4)GsJZOT2tGi+n(njJ53sT7Nub( zLc&;F;-H z_`}09%WcE)0s;_#00bZa0SG_<0uX=z1Rwx`dr*KFj;%j_9I9%WtGzi+jy|cn2N5x4 z2tWV=5P$##AOHafKmY;|fI!a$h(Ub))$4(J>pvWLuDTnrvbzAJFJFr2`98z+AOHaf zKmY;|fB*y_009U<00QR~AnNBQ`lp9as=E63|EE8TIqxzs9s&@600bZa0SG_<0uX=z z1Rwx`GX&J<|F(Yo&{KL0G4)RYR#wQ#bAVPh18f)q5P$##AOHafKmY;|fB*y_aDNIA z!}ax}mw!-|=q~^mj%Bat+5N-}!ypXqPiU+P0uX=z1Rwwb2tWV=5P$##Ah1FKm4CwX z9`YXdE_u&-GcWWq??vxb{X_tiehaw1x?2+D?ocqc? zoPKUjKQgBmv$%=R@;K#H6ws8VfyxjZb1H(mrdb*%dD%2f@Mtm=Q6)oGNt$F*W!e>- z)0|f+4f7<=g0K;xs3uF@Lzs9X55tP*3607sS6k$P%GxVbcH@etv52BvRMo`I!&0PC zAXJv%T#b?`qgkfs)$mHzBF(v|C(bgNk|*{uS&%1|SR%vm#9StO@q{dsnb?2hKl!J> zwu)PJ@r7Od>=ZYh;$n_~er|>MZI_t)Y$Gjm6fcZqkU<-1sk>#1@@gLv uuZ^_K*|2C%v%iVkMq1{KSs3Y08u^B(pQl zo`#xp?o7|WtA4k;K2G<&=QqFp9`Sl}y^Gr=yYuo|%>AU-`^uN^J>J-6b1oYE`OXA% zb?@CE^0%F`oA1{?JO3}Vzv=tup**!y!0g(#AKUNlwDx|mP1((D zpS6Gd$zGnnO7b6){G5|N=;XWE_IK4L!XNFY zWHdFRHf7BdqeQFH3L#dhstc(jUeGwsVj4>kQN?Ob>%xeN$7RK3)~d8LzOCnZGv2bd z<$c&Y;xSKpAM-xt-R^zXyTjAoaqpyeulH5&Kg4^Tc&`!fW#avrc;|@sTjD)Syk8RU zN#gy4c#pv>{@`!!He-=U-9wE@+^xpM?q*|zyU`f#u7ly3yVjW0U2RO_t~4fgmm4G8 zrN(e~u`$eDXiVhJgJH^@Ym9Vf8t?WU@5bp4>b+_;240)I!qV-f1lvT=s^S zJ@=Bg*GSHvf8cB9-(hQ}Wxb1k-|MR4@sR)$Kmter2_OL^fCP{L5ke<8UeDrV?%7yiRpE$j@#sEBbG;BVjxyu{5`01WqJ_^bs0VIF~ zkN^@u0!RP}AOR$R1dsp{xbXt?woaJtvh4gY3oi|*SGG(x;C-SWMqHqS=Y7h(7FTb z_O0t!mt1y9FW7EU&)p2)|FFKf-1DY}hZbj?`N78O+RF53GG6e>>|B4z-P-;4m2A{? zoW@2%LY|_iX)HLWs?HSUqO2pMA-7Hx?|wb-2uJ`4AOR$R1dsp{Kmter2_OL^fCLU2 zf$^=qFuW~16~02kUy$%&68_5xpLfDXo$#AZ_@{pOz8W0(8J8t1w4zC^QW}@KhK##W zO%tw-VTtCcDS}B_n4+vxLq(Fox<9G})iO~uWrkOV)ul;PFwRoR3Kc`TU#^;r#H^xH z=#o}EOA^jmmPR5NRdpsa6H6*H!D*~m3^4>5QByG$NmbRNhystrh2qUW!*L+Raan1q zOJ=Cb1S<+{>X@^@t(Z=D3R#BJOh+{4Q9+ALB{bDpT_(DeH50+GOQz&t&?O6U(C?Dr zIB>dTFAhkT%*2yVza{_l)BXI7LH^@G{_-$?c$ojr%^z^DLsDuoWiu)#Sy^XMR!~vI zK;7_!Y8It5gZEt;5obx2v}ROxiEovqe=rE&7=|wl z!^ei<1Htjbh~ z$_NPk@(B8XC>2y`kx{J^oeEWP!_#2J#8p(J1$5v_!;iRv9bzqM&3FQRJ(QvfmRXiD zUBYk@gFIx7FH;ydgrU0NS)uAU)1?WPbOFI-$oo!VUkUX}A-8;;2+HC_K~ngrmRTGu z!eF3v%~Q&yfW6|lfGSDos$|Mwm?<<|-ob*ZAhEq+ib8>$@TN#83|$b+E({#LN-I(G zU|z5anwW4ZcnOu`8HX`QGpHPgb_t$TvJB=#A(%*{qFE)Njdcwpn@|PiTCxc0WFo_Y z*&>5_$prqUGT19JlIn<+v=CL2LT3A_G-WUY&93T%$DmLEi3Ivss8>zvR7+)8q{=7> zrmLi6LO{h~bcK4ss0yQ`ENN{35M(|#9QK;((o5s`uT;hroY(tx{P(}mW&HoSm%l#B zA06d?8Rrj;^XDe{*C+WCe*X8V{E?~r57YU#r}JlK@;7I%X{JCn?6}eC&d=b^6Q|Fd zwKv6jgOevtojG>P8dbuxr%M&g!6xDWD#E)RogfnIZp=m%zg20;zvF|M|3B-6k9gsKN8!0q`1mON)~NG};C%&{@Sl;ufguoV>$0kiu2i!k zgmq&Hfl?hoXfiHjQYVJP999H}B8Z)q3>J6rfE2_*3s@FPW*}}_r4eUMD7BQqmPufd z2@7YM#mxd)u#CdgxS&ZhKh_DX!F3&MN|1^o0Sm>L!D>9JAf{SXuw0EZh=PJrloUay z=dyzJE;Daj|Ks`}dw9>r3{_+2*FMhD=|Ho(ZSLX8X&*d-7 zUsEjLz;xo+5F~&EkN^_6VF{3JyE^YOqih5YQCyf7Jb+@;b6UP6qdit!D6F&cQ)zfgTobdUdCZ<*t ZMir7t)yipK#{X~FNg6gB2_S*q{{WxdSmXcz literal 0 HcmV?d00001 diff --git a/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db-wal b/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db b/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..db2207a81112c0bb8cd06eaf60610594180caa33 GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS0dF(k6Fx*WxQ^(xgyyZfwQv&OL}1eU06D zA$a3EIEwEv&*?ulnUZbI8tC`HuO}%dC;5GnhLJ2eKYx6cD`HiQ%e0=%-lRH}LVW&k z+|#u#g>l8_{{^D>xF-ZPc28#g->_qye^nnVD=G$)P*r9nkNF!a+XpJ% zPeN6hm7L{Yel6D5cVC?}f61-Pa$e$&i@j}UyE%Me8VCKufw9wzg}JvMCsotz#ZkA~ zHsh!lS4*RI-mpGyx3=@{Fgf_x>xBIzeyf@vUAt6qw3Iu1IbO=#>F)1e+t4&R+s^Pw z!Tc2NC4*u=IqDyYf?BVkfB$V$?VyJ$eorFH{gt!hf0VyI_phn=HVIW_R`QsCX_D=! zs&!;pa+ZI2SDeYSoNZK={&VYF%HgRH-wi{ZbOvS=9yqM-5?RGf1lsZPmIBa?S?_ai8@x~dy(aK;>e0Rc47rB#}30N>ADSD z3^tt5u^rD3tXAx(X5FrD`A!g8jmWp_e#=ejiEb7&T-$F2szuy!EVu48t;h>}EAiDP z1g%C;k6lr2i_Oisnb1*w1ZpzPk*M~6rSiD)ys}lv&!)2_cNUPw^qelu*;G;gp|6W9 zO}`t@FYfc=;^K>nf0xB=8f!)X0R#|0009ILKmY**5I_KdISEKnH1$=9vI?WH*sBt9 zbgyboiO~%L2q1s}0tg_000IagfB*sr%mk#6>i_?Rcr^QFaT9W}mme0FIBP}#0R#|0 z009ILKmY**5I`Vf0V!%yKYI8yz^+5I_I{1Q0*~0R#|00D;Q_ z>i)l}UqAFre<=&o7ZhA>a&Oae`W~QrTO%t%009ILKmY**5I_I{1Q0-AIRw=Ge?z}| z`CP?T>KDvP1v@1Q0*~0R#|0009ILKwypnqwz=HY#uTO$sAE{-Bm5s z6_A=tGXhObrWwvgz5h|_q333URNQ*o@4ldvqfvbB-Vr?@fB*srAb?{inoZ7gtD@WTwc~mL=KKq=^6m2q1s}0tg_0z*OK5=?C7> literal 0 HcmV?d00001 diff --git a/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db-wal b/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db b/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..c1a59c03bd69f33b69719a2dedfa6b4e7d17ea13 GIT binary patch literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&*(FMNDygOR@`y1&VkGJidsCwyD~RiWPkU-hf4U z6Iiif&lV~q7Q6wsGLyLRrh!zd~D9Q%Au+}3eCA3waIC31<3+i{=%c$#jX z67u5t-az%LY2yx${}vF@-he1FLq;zR+2z*K-IH7XQzlmR*VJpJB;z0r+2z*ev3^}v zdtS!VG-Q`so3r}M4@j-nZ|*j~&}MEmFLh#Lu;#4!hpSBA+TA`d?r#mZcM01VMsba? zK_rq|k40h-)y&b7Ubf`3;m*lR8lxrMY{|`FBR(-F)5A6Aa7ANkiGy=HFL!q1jkQg= z@*Sedb?WN<-(zwIU6k=PjXd|)oW1@>^{Zq5Wf||%kX>$V9_u&LYWHQYBF{Ew^_L%! ze*Zh|zoq?8TK~1y&$IUb=BCEsV}1NyU2VsqWyg-gZ8wOx+x1-@bh;t;{Z2cIy&w|4 zAWR)24$AApFjyZSF4W5)mh%JbFyY z^n>bIrf$b`T29#JiQg7-n>vCEH%NF#Sg~s*Ug$;s)J%V0uX=z1Rwwb2tWV=5P-m92vA}g>Z^x0WN3^~buB`6sH? z>($%Ud)0PzF-u&Isw&3hX6*^o|#l++D1^&FG8ex&jnAVppPLbaJ@$A*oT%YMYNuAC#Gx4(QCe#T52tWV=5P$##AOHafkiP``K~ew! literal 0 HcmV?d00001 diff --git a/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db-wal b/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db b/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..9795b3f8500eed3382cf92fdd4a065a3db4c4017 GIT binary patch literal 36864 zcmeI*$!^m?7zgkfd+aC)tJn@yCkOKt&iKoJi?yom@(tG1%zL|=e6;85NK zPF%Qig$juSZ@^Y&k~F>$NJU*+;Xl%snMjk*{(eqe)rswQZ(q_HIYY+npr1TFOt(V` zdHQI3sCw13afio03q;BGkSH=kMsE_bE38d6Pht5FnON1|Qty?TjNM7duCP|c`gK|D zNf{3&A-lp_#pE$!m*EW7X(-_SZ`OGJS)%3SHnI5mWdrKNqGj>mGKHJ<%S680M zg>Mo~E>l;Z{~nVY=(LPalPGd~RqXvgs$cE<&&qf`3E36as#w1{sdh*9DvE3stG|Ai z^!s0E{}t`O*ZMECev!5RH8(Z(?&;&t>h(DCQzx)89=X2Y!nG|P+JWG47DNN#inJTW zgsHvBZvF9EJa|0bv8bI!Z}}T#c_z=cJTY*59(6N^3&-<#WO+6Zl2~}Il_ZW8&dl_k z>UkzNj=N4IUm8VG#zpMJJj{}i2Vs zHg7hA=3loDCRA3SVN5>+4VDk}e5mC^IvvXG-)Nj~Txr~BRJJs%*x?1JuKuX2M%i>^ zOh@LyXgsI9$Nl~N=Q3uu@>UH?h5!U0009U<00Izz00bZa0SG|ghy*AxnELv$E<@MK zJvdHB-&7q@VMqf32tWV=5P$##AOHafKmY;|fWTCM5^AWQUZ0b}N3m|NsB#X)%j|iz*-h0SG_<0uX=z1Rwwb z2tWV=6%ml%|BtRua9OPn)zql~r8RnR9iYU*Q?(1V zrP?)h9RRci5-<&QK*cqg>V&DQ&N0VFSxl;)d6cvbb?Z5%F8x^Y2_TftbuXO-+CV4; z0uX=z1Rwwb2tWV=5P$##AaFba^*f}~x!>97e5Rc@v~xTQU8tqBjd|{r+-CFK1-Y%y kbBE)$HqYIQ+c=uCQ13Go0|5v?00Izz00bZafqxhH1t&W>_y7O^ literal 0 HcmV?d00001 diff --git a/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db-wal b/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db b/canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a880ad8a5faefafe1c48acba7974c3c23c2a11d GIT binary patch literal 65536 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 R0tg_000IagfWQU_`~_ug>T>`9 literal 0 HcmV?d00001 diff --git a/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db-wal b/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db b/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..1395110872e4885b0cfaaabcf37341ba953ca2a5 GIT binary patch literal 36864 zcmeI*&uY{_90%~3OtN(sMJtLFL5iB7hiP~6KesB8zXQ{0(@AE2pCn5+>E`$O(;GTN&XGykX{#R( z(ri#do;`d%(5)`Uq`}v}3uN;7fM_yH)upPcrm<4(p2oI+zzys8=k>8Nqw27#s%fmW zF@C0^J)`P_s;Z{3(z5uwx5(Vw?VB&cuk=P^F`wWKTZ08}Ask&b+0*saAzK_sVm@Ax z#k^?_WLC~EnKB#5`OdgsFzQeG%`VCc!NVeo0+~jE=L^*>O?}TRh0o*Ai@6_5!IL;kc_xy? z&r3fLUPLJUBMNU4Md8Mo6lwxdo=02_7V}JoC6`{}s#W`e7i8^;qPs*K=dQErGO7;009U<00Izz00bZa0SG_<0{a@zI2o)q3#jq2k0!5P$## zAOHafKmY;|fB*y_0D+S%&|R+bk9?=j2kN}0&QHVnVmNP&wq+!-Yh4|%S)Cj+Hmj4c z#y09)kFbqeBO0|vq_sw*wML|MMpVy#WIFYnsUQ7Fr<=5qQk9FyJIQAwVut_(AOHaf zKmY;|fB*y_009UzBcSq+b~>j!=kd{tW_;VVRg0-BEW$E$&Sz_UwWYVbn}7P9d4xHr w+vRdxW<%L%d^RUzgeu)c^nh literal 0 HcmV?d00001 diff --git a/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db-wal b/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..483bfce2a85ab066b518b9f1a8aad12071cb230d GIT binary patch literal 36864 zcmeI*%Wm306oBCw+kh~=s<%a}ib?@hNTxWpx$J0H73xD2FsP_WhyrTVRr4TS&^PI> zn?6Jvb=N0oyGUoiflU$-3Co21BOS&_qvJUr#3Ey`zkmBIGvbbzwbMR&dYSG>3i09n z;XwDg8MBVZiv>F2;Xr7zl!|5)s*9~fFHdawFPT`^pV#k|jEYGVs*A0yWBsP8_NI!r zQK&Aqwr2HbUy6LbRT`Im%2I4KU+cuFLD?%;kGCvye|#`Wz1SZfjD@v3410OY8ibvG zzG;P>L6}cZM+S?L?}nqZN2aDD{l&<=_HOUYoR--wd&f@uPEYtz1HmgKdoOM`|qmw8ind&YwK8lI;!?a^*Z8gYgT{um1wno z%hng!inHn~oLid5ug%%vtMXyHjg8zP}wfjY_-X)cZldS`C7FuNIt}>5r6) zOn#*rHvE3*)Lggc__gh>Q}0z=r`oI4g0Ni+Jl{Px)4yy}WHPrh5A??$+C~ecP1mhd zw$q00+_co4r(S>CzHdLZpW7Q<{BrRH1d)2-Q<PCltPza=*{ z_KW}m2q1s}0tg_000IagfB*t35|AP_U7yIRe5R4?;<%iisajECq(J}y1Q0*~0R#|0 z009ILKmdWcfE3cy-#xmgBH@4k)lBBoVgmsL5I_I{1Q0*~0R#|0009J6C?G}J)IU9Z zq;n>`03c^SiCJNFq(T4z1Q0*~0R#|0009ILKmY+Ppw9nW`tn1Mr%#MT&%n#m>j3Gw z&=5cX0R#|0009ILKmY**5I|sM0#ewfzVz}B6$zjISKt3%T(fm$1(FB>1Q0*~0R#|0 z009ILKmY**gu4GkF846^EQiG=3fPM!72BAvuGn(EDMi85x1O`qr5}yyjR=!tkmgeN z_epMo>=^+B5I_I{1Q0*~0R#|00D&tipw@qi#W%%+;uW3$W=*@W)Cx$!Smy4<1-aCn Yi8l+7Y7jsG0R#|0009ILK;Qy_|Na%~asU7T literal 0 HcmV?d00001 diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db-wal b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..1f9e53239d9cd5617a9e994b4e56c52fa6149c5d GIT binary patch literal 36864 zcmeI*&uY{_90%~3OtS4RidGaUf)wqBdYE=6|8uJ%J&CWNNhX0+YfD?KH+%CT^srYC zK0t2@f)~L@uq=WPAfD^Y?zV^0mh?}$fqn;OXa6Lb`F$o?n%O4vXs@dLe3VsDS*lt5&4*-q`q6_IbH8X%Svq) zx>>T3%cmj|}3l6bCL2#-gB8*wj^g2z#s@KnUH zmld8b+>lUuAPRRFMeanY6siGXmW5nZ7V%UD1($B@s8u_@>!E+itTm-O^@d`nb)?>@aPkRE>tH8vMX zt97$=w>8%~MW0}mx(ZOH|ESlAn)}bJ{b!Bl@WZh`?(V*Sw|i_FdlS(B2tWV=5P$## zAOHafKmY;|fB*!}C_srd7@yGN5zM%_G3djZO$WbK9rg*{g8&2|009U<00Izz00bZa z0SG|gECQ5JrvLSNQl0vb`Sf44&_QIX(%2tWV=5P$##AOHafKmY;|fB*!J5>UVYoBH-cck}|( z7~8r3p!&W00O=P<5P$##AOHafKmY;|fB*y_009V`n}GWLpXpmK@8~U#`2qk+OWnIw zw-gBi5P$##AOHafKmY;|fB*y_0D%(-sQD*`^N*Zh9V}XvK%4oo?*^Sn@Gy$h96U}~ z@HBKo?gl{|rozvnOtg(MGxfAfji#vkKQcY_oT+d9NXI*ABc*CCBDX4AY!?C$fB*y_ z009U<00Izz00ba#c?Hz?Por_AaRZlLT!wwXVrqm%ScabS*&2+tw3hbgpZ;uK;2hMK tLHqn;r0l?)*J3#5b(vAa`pkKa`N!+i7w5l^Vv7)f00bZa0SMGx;6Fhj5yt=k literal 0 HcmV?d00001 diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db-wal b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db b/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..2d68caae492ece361e31b2d0f6dfe6afcc3f3525 GIT binary patch literal 45056 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 literal 0 HcmV?d00001 diff --git a/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db-wal b/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db b/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbr)2yR5trnYM4YHNiGqs1 z;3z^##lHZeph2Rfg$P7JO>w-!OtOh}=r*@0ob?^wktQ>aMn8K#<6UXJYyZCc_A}xc zj~U11q@8b`r@2WCvmOaRAcvOWYmtlzP)qzk?uWa3_2$}^+WD?ws(o7e^}lYb1$tD~pXas9_3GLAe>8vn-v79&U(Ks( zIxBsgzdN7pP1Wk!W$D@chp!rW{u{|ZC;1O%{;8RFIrn?UCeFbd*70lgvIvtRl!DPD zttAz#NU5xAPSYT)v!<%+ib=!P?Mt$reSL{Y9)ck}O2Q646i*g&`H9Drgo|i3-Pqk_A%AqFNZ~4`Q~F zxTu=45t2rQ3L@f?(M(31^0;WEOdD30Vo{{41|e;vn2SVdL^LjA6^Vs{7Ce?}v*xmj zLN2p-QKZ@J;kq#zJvDl6^uj0^y)t@x^vZAW~;JNB*z{;)ykiPsVqUURd!-D_>AOHaf zKmY;|fB*y_009V`SAeM7PxP&aPpi86&;O^l#hiB<7!LsmKmY;|fB*y_009U<00Izz zz!?JS`+r+Me&`uJhM4+RfRz<;@*JR*9RYR>0SG_<0uX=z1Rwwb2tWV=5O^>Jh~fJB z(aS%oIS_s#+~bQT?m%xPuBV&Wb#=pCM>m;k>qfYiZbH}8 zP3jWe1jLy5I`y2bp8w!l19PZ)&We_wcuf+8aT3-v<6Py^DUya3BFm@<>m&(-Sh6_k z_p0FNAOHafKmY;|fB*y_009U<00Mm!7`|>yr*BPnroWQu*JOH&On*10-<#7f%<0GG z^kR;9;-{RmFso`>1~sEX))_6LD50T@WRb8!Byl_$7U~*6%t}tPtg5I;>Vl?e6jPR@ zS->Q3sBQ5iaS$Ir;BLDbB=O6FqD-TBn0SG_<0uX>emjeF+S}t>m literal 0 HcmV?d00001 diff --git a/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db-wal b/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db b/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb1cZ24&{Hz@*dpSRoRWwW6(>

}tKom4cl(Z0mD5xopSC~mQv4pb6rtt2f{f;y@lZ*A6{eAqAJ zc*Zs3teub3AFndpC5G|-dv~_=sGE5<;LisOl=9BDp~)Q8x29bUowe!i=`8*g1MB<; z`dIN)Kbm$mbkGOZfRy*iX)qk4yF89}p9sj5K>udjGs((4{ zYUr%3V*c(l+q-Jiz00;@`TMUJMe!>sJ|o5VX7Pzxbea2q#wO13>(<%1dV?iAPok`$ zbyB62Wiq0I#~ID5D9=SCsyt+dt*;SB{;j=A+&a5l=*!F2_%C9&k?OMMlc*Fl$+Czt z$t2}TQ_?(5B3{Ze&sjJ#((lA-BPCf{Wf==8Pisb5E;tn;k~B$}$Qs5f5$7`_-6v)n zDUP!&W>ri}9@mt`NlYhPCNvRw8rDgeiYS^DX~QI>jg(~Zq-;b*MN(EOQmnG$ijBo} zSv5k0d8V$7mpg43{+8i+k9bdb*S+Vwu@`yVd(nGU|6>SkwFTTDio%e&z8-S7r-#h- z^e}N_>-=D<3m^l|S z_k4DxpdD;{a`N$qCl72LEQ*j2fB*y_009U<00Izz00bZa0SGKqfEbRg-+uH}x6I|< z94DvmR4p`pECvAxKmY;|fB*y_009U<00IzL3jtz~K!4h(r~d2j_dHkK4OrS;0J16{ zidc(1k0c=g0SG_<0uX=z1Rwwb2tZ(+1c>1V`m2XesZLy@=h?nvE$O@a%@;- zApijgKmY;|fB*y_009U<00IjUQ1AcS`td_g>(z*z{}fB*y_009U< z00Izz00bb=fdEmDpVW_D{z3KSfBwIHj%)|1A|wPL009U<00Izz00bZa0SG`~Z3R^Q ziGKgd{Pp{i?s)Ut5pmCmsYBcR_--uujlx|JG}#Zaa0_sohSkc51d$ zaxo>wFwmvvZ1wzyp5?oqW1FY-2$ujs{6=J9*i@3rOy-nTk*d#=s)9O6oQpDIS;nh) z2`>ywLI45~fB*y_009U<00Izz00jQ$0{&~pX!Pc2fAk9(eMLt1$mln7^qo2S+#G#m zjuw;LFpy21r+JyusumNYev23@d@d*k>)wlXTGMtiPuJ& r=WLi2X@d~AjWo|0Gb_^g57ZxDbp7$wJoE6XAOHafKmY;|=u+Sxa%ypx literal 0 HcmV?d00001 diff --git a/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db-wal b/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db b/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..9652ebf0f1dc1f4f4a9f8c5c68492021173c404f GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS4~snsj${*WxQ^{zB2Y(G|Bl_aI*MHFoEP z;EnI#D89!$r~lYwO13p?q2B|)o-~}Cliw$880nJp^T$`YB38wyOzQF5n^dP#h|eF6 zJG$1TFsgX{zd#rtcZ4P@s%VcxRk@Y%;mNK48+NSouj z$Dyj+%7W!zel6D5_g`o&&y)H@OdHLjt*|7}wppoc1ck0a0HwP2tBVgCBuzoz2bI8>EeS;YKH<7`h= zts~E}VELE##F;!>u${`&e`bA4IXD&KyJ4u4PTvfJuA|Q={f*toYqr9qWd*I&w%let zv4VOKTWQmeoy1FbT{{x1f1lsZPmKPC( z{#G@k#OMYA1Q0*~0R#|0009ILKmY**rUFt(_5c4uJesbV--4X)<%jtt&d3NLfB*sr zAbYB?1T_fB*srAbIv&$SLGeo_0SG7!6 zKx#6}3^X;FWjY)6{70#$o|{fmaqE4*`-V~uXYsjvNA!RI0tg_000IagfB*srAb^BbtiJO?_s*$hi)K=wb$!zszh(>}kl6V}r9>z9u*CvJ&pJL{9Tm+6kB5bxd| z^>weCG3|K$w?H>M>I+SlQPEC9b*Z&v_oSBpl8JTwCH+~+sTe1ry42b_)^Dn6ud8^S zgz8djYgT{$xhR!7l~LuptfW@+l}?=LSDmVVvSpbEqr-9L*}>p&B&@wb7?mumA9mwX z+X}n=u#}yQ^yVYq42I{A%uGhQ^O5_(UUY6w%j{L1lShW7M~trx-w#L8UUgrsd?*aH zPE-H=w=K1UZmRf^M4J0+%|8E=`t{s@TgB%jRF_&?$NIBLwa2R0k!D-7`tvVDr}I;G zKFLm+RsYAirFrtwoX#IxO(*IFjo7!lLFn18>&14^2%2`#tNXDZJI$8g6qcU1#`)br zFW8+`W8V7pPRVFz)uX~%v&it62l>p5yhyCBmaDd(A7 z--|*|ZAsnP>8VV>S3r`ChUHnxmPMZ2ly>8N)EoEj)*|VkTnAN?Wo}PYCadBJSrm1Q0*~0R#|0009IL zKmY**gnIr&v3S4uq=>~P3KY!QA(etLUzD>&DaxjP^qi$`{kZz;KNfl_&nE6CYC-@3 z1Q0*~0R#|0009ILKp<5Cb^K?0`_=a0cB*S3`CFN6}%E8s)yn?6tQZRZnk_2^Uc0PnI zX6wQS$WB3UBlrl)Aou{{I)2qNW)TwU7(3IFe?g_@Qr%VGucn7|%}m$3x6kGD6h^k6^*6Y@HDpnL+;qbzi3`73zWyR zOhsdG|NqnSIb`iRs80?|2*Ya zvrI)}sg3b>X3=g@X>yaPW$}0aX4`z5e-Ycq*D-EQwitUO1RbtpJ5%evITpuDY7qN{ z&OKSADw07oNM+*XLmBHhRDR)kaa6K%d*4AmJ{IGpAPUPO47K$9VJ?F*3Z+u1mbssn z#lY85ssc7%O8hccv5sV>ickgtZJ=V6NR@k$j8&E03*{c5@IE%$}xHhC2M#J>BY&am`FoiXlMRjWm-R*P1x7J01}d94o%`GtJ?1wJO%*>KmY;|fB*y_ z009U<00Izzz)=J^mp@XT|M&k( zy3B0i`Js$5e<*`QXEIIvf%Fp{>#)dTx(w_u3mrRx00bZa0SG_<0uX=z1Rwwb2%H!J zT7P1?{>X`mxXppm8Y?wsK>Ajlm3sQT&Pq6R{YPPzp0nxt4}8vRHgc<4i>S>5guX!l z0uX=z1Rwwb2tWV=5P$##eoFzG|LJs2cP`+k7r*839kSDopc$5-Q_ZtDoNjx)Tf6H| yzqF5W4eCR79MvlUF7~W>J)Ew2U1!#?J!@WL{qgpU1r96-KmY;|fB*zep1?N%r6!>O literal 0 HcmV?d00001 diff --git a/canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db-wal b/canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db b/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f42db46040f964f9b6a3b508f4a9b2ac77862cb9 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db b/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23e6cbdbbf2661a0429414c81529a321e2823ba0 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db b/canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..dd98b14993092f4bbf09a555e5c68f434114cec6 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db-wal b/canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db b/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..550d3329f4687b9550d0c062847fdad160ec2294 GIT binary patch literal 45056 zcmeI5TZkn`8OKlc>C=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?5g(6noA!BlH z$C%7Jw`}2UnbiyFZ5kuI4Pz2--5Bnz8N<9)V`6UwOrpGHV{&iFn9N%=CiNDKk>0#9 z!kaUOd$YzQ-i$HK3yg`qDHx`_i7~l1HYW3YV^YsEMtUP-gy$N=y`eFQ=NQ90VoXd1 z;jT$NcO!iMgF9K98!hgvP6soGmIH5V*5BS-*%&V@k@?~J70BmEM!j+lUHg|Awh##* z0VIF~kN^@u0!RP}AOR$R1dzaGCNQ~q5Jk5{cSkRi=;tJQh(!N#qGz4x5hwbF6a8rz zy{G!ZK$n@6kO7z0Rh3bZ<&5U4)>Ni#UDZPAQa9nWW#F~4gfzq2e1WXPd9ENYugpMz zm0E~8oCqx;7qL<_&YPNw90awJ4dqp4e~s!VEHYF+1L zlQap}p`VGW5~^afO=+%{!RSWebD#@v+O@iQ7*OWnZ zZJgA+N}90OszvDb$$}gX`(!u{oj%!%L((TR@${4bmw)<~!{T+f_>o(@G%6k%6~FU} z`@JiWl$y-gjLKOhs=R?L(Q%st^$O0oVvs(%)KbQ2&Z?}eJ2NWJlE5nUx%xVlX2{ek z^|?Yjl>#!cN`0>4PNgXsTcti%dZ*Ha_*SXU-O#BtCZ1L5bH{Wl`IvwFO6MP+e&!wG z|Kr2x+r#J;H+ssAzVAk_kD}*B(W9g2{!#RT7d_!c4|>r*{NCL}xWOdcz9N>CLzJaL zsfw0KTtUDWEmu00s>#CjCQTquyiRErE7(hjgywC_DTDm#OlKS-b{wv0xZF}%3EBWR z=n*8uXWllnRIO}9trcW(4_75mbR3&_lH|~D#JZ&_g>Ms{X5c^aOLeAYQYS6V zpu2(W@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(B4GkAq1Mfsi zAd$ju(4WN+4HZ<|Kp;%xGHbPv;e6d@O)dnqj8#x$tYcc1bxUt@l(SNB5m)dyBb?1MSxUhm;6fsM(@>MlK7~`E6_+AS0lyAs`b25$ z|7Ba%46d<*+W!Zi>(l@L%r9OW7mtjKzf6h;C&e?<;%n35@u2woO!4qc@rT*sTeHPe zbHy9;mo!o!TejbjFv819W-eGEVWgGiRF?^-T;?+4m1d31JNu1ovT2n>2_wl=WVCJ) z6FJ~QSE7N)p_y)LxD^Bwol09|!z%TORGms2WZf$DiDsQjn`F%@^@(_$O6z3RD)otq zol0wD#VYlQoSjOmWZ5e9iLRYWD`d$k^@+fpO3P%?D)oudok~k&!7BBMIzRN82U+o^6~Y6la=B!(e3 zth*_gH^LM%OWH=3l}^f1gJ}||rfI|TL`jjglFKW< z{y+2i%RB#nY`%DTq4?fH@!aAitp!{&K^z-`1dsp{Kmyk-0kUgn=Y2->owIX74q2r> zqyA2%0ok!ieP#w-N=MF+ZL8F0_Rytt(+;lxzxioqCnsG0zv$^|CnsG0zvyXiCnsG0 vzv%6=PEPp#&qZ&;b#lV@f8a&6q|{urI&X9*rvthEf87q!u;EAm2@L)RwuV}b literal 0 HcmV?d00001 diff --git a/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db-wal b/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db b/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..be933e23ac6503c61780b9168873262fc36aea4e GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db-wal b/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db b/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbc5urqX1_-_MELIdyH~VAE|6h4tVcf{r`n~2 zJbSv+SG6kIu)^b?1)^l9PZXIUqcaLw6;?*Or?BylIk3vVp{bhIA-(O_<#`fl(ad%^VbDOZ$^(1XD z)=#3W(P2r{Pa5W+r2|-;?rYlppmkqr-6C`U>)6!Tf2a@NtBaOxrI8=RJj;TN3*T$=w(u+-SWfK3wi^Y) zCQKb8_NpuEac^aKxKM|e&eAW+@{y8Iq_LN{JaMgn3)}X2=w&{SL>Ts*G>rYknmE!= zs^=qlw&jVQBcIyN94;KsI>Iqk*?I@nOP2Z~>QmLG) zT&XNnZmB_{a>qHuHC5JuFX;6NQLU^m%1vH zja$aJWgfPMead@0I5>DAV{$2P(=amxAOHafKmY;|fB*y_009U<00Ji@K#9TB$B$JR zx>oMVaXR><>Vy)*Fc5$M1Rwwb2tWV=5P$##AOHafj0Gs6hWg&oB^j*b699Bpz7#Rm zK?4F1fB*y_009U<00Izz00bZ~9|Dw^hPw3dnhg2>|KL*evNEH?%Vo-%9`ix~0uX=z z1Rwwb2tWV=5P$##=2k#{{y(@s!F81()zqZ`r4@R3AE45<024z10uX=z1Rwwb2tWV= z5P$##=2L)@nxSsJ{82{v-~Z3=BRikk$O-}wfB*y_009U<00Izz00baVj(}W$qF%pR zzgfRi59;M?0%ko4ftoQsc~WC}Q_q`P-lXFuB~3#uJ;&s&A9bQpwG>xbg|ewu3My;! zFfRlk009U<00Izz00bZa0SG|g)CyGZlUD0dYqRx*w%*d#sm-Ij4R0FLtd!iG>fARiJW97q z33>i(r>}a|v{8r0zYFx@ojy@yhK$ZQWS3hT@1ET9A2G42zouR*B^iTp$S$`wkM--a z+OsmAj6-(0wK=Q5e4o^6-R14&&vZGrnoo6Nqu+F!-rjAdZ)|T4jC&jFo7;q~uE$A@ zv3}f3YaJH%`f<%1E-A7lpRR8mzN9f+l4nbX!i~6e$=|Jv~HfY|1&o=_8#e@_v-Dy6M{RQZAD=_ws^!{D@@zI#Z%F9e3vJ} z_X$(Sh(UQ}JqlMwhYNLh=`8=EEXx!H5w}H}S`Lq8CN~jQ(CYbCkfeUheLLY^Z)&FB zRL?SrD7D=*j4ao4Kg%6b zDxE7`DJ_+5seggc7D&J}9LKhW$yDc=y6Rk0Q(eoXs^fD1S1Ok)H!6233sg8tp}P7| zSB{ z$FdAvEB53#9ez`FLWLm>1Rwwb2tWV=5P$##AOHafKmY<00ZOQ$t~TB z5fdE@AOHafKmY;|fB*y_009U<00N64K#6InpB`S5p)*qG6##VfJDJ6RMHLW$00bZa z0SG_<0uX=z1Rwx`ITDcH{}1m^a9wQ^)znV`3TyP>K0t+S0agqF2tWV=5P$##AOHaf zKmY;|SWE#*Du%lC@+TR^U;m%oM|Lr_Q56Ir009U<00Izz00bZa0SG{#7y&u|M74Ug zdb4`B+O8I}30Uh%2vm&8$&(7phI%&CvLT%eDXAN3>NzHF{iri-I2GYZY|e3VP&U&{ zLB~mr=Rg1g5P$##AOHafKmY;|fB*zewLtj+X*3=;HXC1Q;~j0BYK!9)UpHo%DY-t= rxsAF$%M8bLZI;=K>vX1>iH}z_o&^C2KmY;|fB*y_009X6hXQ{9jS@S7 literal 0 HcmV?d00001 diff --git a/canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db-wal b/canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db b/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..9ccb38e7bf1d6da96d58467c8e4760fc012d9f81 GIT binary patch literal 45056 zcmeI5U5F(|6~}Mg+qe7P+w=YXwZn?(CTy&=tNN?z$yG!`n>?wY1i`NEYOp7IbSpacnmUqM2IC;@|l9|?v$B%%;RVvzOJ&g|5zq?6t?vpepd zhMIF`ZqL8Fez&`-PIcXTe)Y?55wADb+u1JJ-CwW7JV<)IFMR&~lg65@zhm&{I}=d# z{U>_{*$~Q!-2&#ow%xbq!1S+B*wp{1xmG+V=XVR31KSQ`{RdFnX(*rDEnp68J7o1A zf4Fz_XmRY^v6slP1FQ2*Ej&DVJU*Vie2X(UeeTTp;RjEjI&-e)+Ydk!z|nbxhe(`X>ILNxct2P1u${u&Kr}ubH*g@tTC}WV+?nvjbZMTF_G(o;nJNLBiu0og60@pHy9CMeyH{01`j~NB{{S0VIF~kN^@u0!RP}Ac0l_q(`>R${_)v|Bcu-{(KzzeW7N6aN+B|DO2I6aN>){}J)O zNBqZ#|4rgQO#H79|DS#T^}hd7-~Vmjf3ENUr0@T*?_Z00Ot$xC3MNOayJg)?>uy+g z-MVYmUA69tb(gKXWZgyUE?9Tox^vc@weE~{r>#3>UEjJB>)OORlac+aXIP_{MzDVWjM2SWOKoFdaItlv^=%m{~uCAcD*9V zOw%M;qD4)UvV>eZG3SseD3_GSRTF6?;wVbGs^NY}00|%gB!C2v01`j~NB{{S0VIF~ zkiaDZlD#+}T{06-KK@_%r++>u-gJuZJH;!*;?ZI88@G7Ky#`6C$&}5goW?AV zL?$5LbOKXBO;b?`Z#~U)+~}&|sg~`znOBH!mAYJgt+|<($;2vkxk6i&mdJRYQirR! zRmmeGtJLL6Z&h-MXO+6#4XsLqxK^pl9n+?C>;mQ=zt;K3C!czk_W!9t_>DpMniD?b zgx_((H;3U1!|;h=_|PzX$qk=&!$;ikZ(iqaB3Of@>q<2|qg=!S8vLZBN(pGLMaCd4 ze5v4K3|3{G){tgiQYg?P=rX0yV8e89sS{S!Ssgb#SczF(>p0~!<`wh^Jm-)PUNLCO zc~V2-?z9$FupE~$i&G(KUdPasHw|Q>k7Y@@5-bvVq9e_Mr80-}5-GeUbJ#1=f~tsB zw2bRCgZ8JcbQLU$IIf$Nn?9(7wkd^v2F|OYO{Rp@ERq%UK?|y?8?9<-&I``IiW<;@ zWc5iY(k9hhr#uekBd&DC;1Dp;4ZTYVCnuPOdG9)d)a53vd?kW8okCR;(}5)=C_vjt z1$3UK2jz`Q>!emqFe^YRiefn3grz16J@jXF4bYOjR7NRE%b?TzdN9qI7E+`&974j$ zHK0{yfR@D!-jqm5#hYNNODm22zhr7kU1tI{-C zwMt!DvsR@kvSO9Gw0NybK3U$U)S*>uRhp0`tJJ0CY*iYQMXS`Mb!}A|kp-*Nr3G$P z+9LB-sY@%}s|dlbGn3ZEQ>UmJCf2(D^k3I7QR+;9Yf zZ3ygm)1(R2u^9zd5yZwhEQf-4QR;@JxsX|KL?{VSAB4s5M~L-A4fCKp5oVPX%ty*v zm5mCvLg%qw`?B%g7t!e~kZe{-49`#u8ZDC?cwBCgD!2o4Aaw{rvybXW!fS|H;|n)w$x^ zbHxkuS2P!J!!_nuAtZnVkN^_6=?IW*8=ZF<(YHqDi{!|DrFS3ow<;}=t$j)zB7;_? zd9rDhx~>zyE1wD<_=)zwGI1D<_=)zwBvmD<_=)zijncD<@q4bJ=RRR!+G7 ghsr!=C9Jb(63$vV9m@Itn{IH16-EL`V2{9m0RCuOuK)l5 literal 0 HcmV?d00001 diff --git a/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db-wal b/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db b/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbC=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?50jD zvW2&0RxhNtX^ikTjN#t8F^RWk4D(iviM$-O0GGH=nC)LSq{dh^BzZ_XI* z%^H(5YsLo@)&EhQ=hGV+`|%F)Xt zX~JHs7NOfG3vxK@li@gY`eZK-NuSKb(@*|i{^?&1i`U)aM{e=bsCZ~p{LU-x_pU%v zYBFOpDrc3b@&>X*$88SOD>&ndLHg)YOBts*tFp50%&0s|0;|;L>g!aRAycc==L+pq z3dqDN^|^{Wm8N8DmHJ%iok|npTctjCL#NW1cvh*;9n-1gWB&0goqv4#nRkf)j}N17 z52IJy=qWe)z8k$hik=%qkB*}IN6`yj^n@2Z=tckVdv_DzMw2Fx0bZvxixtFrArhLm zEvF1Jr!$>#h{bWZ&LrIAB9@dxET%%Kik3-SLAM}Uu5>I_lZ9&9mgh~BsugOv2LkK;oF3#892~I@G@MaOLeAYQYS6Vpu2(W z@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(BIKlzI~h-BO)aZB}QM%+o5IOQmWnE;-FA z)6a6)OXY9^QqD@jMO?w-jBqy3WGMxMfD4K2O+!sG`xH)?R$PiSg_ESinLbe(`+wP1 zHG^yHp!Wa4=lb;jKl6*%#>FG!;xCip!AbGVwD{VzcswZnK2tnAQ~Y7J_||Ok)Lik# z{3VSP$d>IlB#iK~l9>xuNEm5lIn`ytDVMp-c%@k*^Ui)_n`~MoQNlX(gssm~0)Q)x(uRq8X#?^JSv+b+-e|7kyZ*pL1@j-DS!kBy^mj(g7t-qQjT z{xK4`W(b74dCFlXmbb738pFyL&tMLkv^mYwk_#njm1-Fts$f0~UQK!2!dRIz*Z~&B zXr0D75it0z;ws#MwNfsVl+m&^YnLp6)lwK&Q?27hHi(RsMpXXK6Zf1Lm0`aj&@um(m;o@v_fJW*0)t>p5`um8_{ z{_@WMADb^;UMRk|P&~JINoxVuOc2M0AOR$R1dzaWOMvX!*?FH4edp|)kV96fps zX+U~6@|6jL*G;BB$KmvpR0aBb=jQ{`u literal 0 HcmV?d00001 diff --git a/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db-wal b/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db b/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbY{_uCO*` z_0PV~n$4|+vxPrlp|F}uJ#ekRw7Rr$HJ?|H&rU9DZ;y{o&a(XAsJGk9^M0?p*X-oI zZok*84>H$pGd~@j-kn(+WUk$29&R7(-Z^Go-C0__dR@s=#^s~aucv3b2TO->Cr?vEQcK>K+ zdw;mBre(PECdB!lNgsW*k_ptq@^Y)yj`QDWyl9lH_;QvTYBz5_p?-61(h}F#*WY6N zvz7E?*`%k%_6ZOmK!5-N0t5&UAV7e?g9?PKmZ!syvoWfb$?la1gCkWBTAslO5FkK+ z009C72oNAZfB=Cg5V8=z|DR>gr$8f2cK5>+2zUqt2oNAZfB*pk1PBlyK%f|bkkv!_ z>EX*_h97IxF#Ji(Soe`kfB*pk1PBlyK!5-N0t5)$FA$IaSJLT+UZvCtAAb)w=K;F^ zVap&ufB*pk1PBlyK!5-N0tCho2w5YfbNu}t<32^DhH!g+)S|XwTml3L5FkK+009C7 z2oNApMuGVM6LWKAEWFG$H|%IB^Yp8o009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U dAV7cs0RjXF5FkK+009C72oNAZfIwLV{sNHIhob-h literal 0 HcmV?d00001 diff --git a/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db-wal b/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..78cb650ef7bee2f79d228c15d486cc0bebcf862e GIT binary patch literal 90998 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 Y^H5&tRjk(nPx^)b{`UMU`AqKr1I;=G5dZ)H literal 0 HcmV?d00001 diff --git a/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db b/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..fca72f991d246e79bb6d7c1774122dc504ff2884 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db-wal b/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db b/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..bce2a9686162022954130d2425cb9e1ac0c8ee60 GIT binary patch literal 36864 zcmeI*&raJg90zc_Ns3x&8fcp)G-;|fTCsznY3%&Db)2WY!sh&`lx+-DD%fp2$PRf8 zZaYlcW$!Rl?LC;?rW_`iLLnv4ucaRjG;#dX?#0Og zF?UtfGR-s&2d%ythiTlZPqq@{7t^hb?KHk{J!`TaAHSTgXKoMn_AXq}G@>nM{G?`n zmb*!2jgo`W0ja4y8T$9XZ>j-$sNzo^WsXv8|9YP7v8r{H zSt^!)V~3p3lZth!O#d5eo6_+yAwLX5opdrYltV|KQL>HLj@>931dK~RWZdx*=0|?a zY~Blm=Z3xvdSvzA^Wf0q=>fO|lKadF+Mu zfJv7Nrj~ss!=A$&;S0}+q@4&~t>$|o6xa0GW<={b@#`lQo& z(;0Sd%moe2FVLn%2CYqt906@wlnYIqkT}@yHnF{X=Tmg@4jsH`{n3h^b;8^E#@mN>}_rEjr8cc>)brp zJM><>xx05@x!b$7>bve%Et~$PTg$Dw@1L|x+LrI_?w{Y%J83D}mOIt9I#<(m#vAFNP`SliE2TjqGJ+5A6=-(342)%MlYv|CzP z$N2qew70c4w#>3-@poUf%JMf-eoo3C?DA8)TxRV5t4+M4H=N12dcDq5p2kT`>nc`M zuqL5-omEssagoNg;*@qOdC z?->{Su5rwFj1#_XT;UV#Sfs~43?B=h4xbCxJ6s&yLIj9&I-bNmt9fTN|FpJ{=n@(q zAAj=E@jc5DI)x+%fB*=900@8p2!H?xfB*=900@AAl^1r#J5H^j32)=v5O4!?RV8uuZHJcG^#aw(7T4udTXm z)oH7CTP0^zVhuu*dd}7RKe&$X*@0dLTG2L;#G5PU5M~JofB*=900@8p2!H?xfB*=9 z00@A^_?hLY+}qCe_&F1?G~9 zIucYCbwhKh#<{AvY>H~26Rp6B*T+h-0cMS*t>2kxofG=1s2pcC%_y1@frFmxYETz#g>9k7o%=DQ`|B#?n rn&)hosq{DTTcvrr)2yR5trnYM4YHNiGqs1 z;3z^##lHZeph2Rfg$P7JO>w-!Om-7<=r*@0ob?^wktQ=6jeef__#v%#*S~MS`II=? zBig*2w2PPLX>Jfrd;h)bo2pespEvk>wm?x`-_#VDCF^WaWz$(%?4HizpEIyp|41Dx zj;sfZDx1zqAJ=cl)jlZeJBuot&PvbL@4lpsM)`Dq`XiZkw&wqJU~6-OZN!I{P2<}B z?t%5fyE}XPnz^-8)g#l~tcqqdGpk~=8rjDqc{}pj&hDK@TE`=!cI39$s_z)nG|CNj zcu6Gxr#`iQ`Zqrcb|ICy-=wVrZTGTH0SI>_Bgxu~+~ ztn_jH_F}a+WUFeIrDyARU(xdXSCW55^6&Nh6Fu*8?RSk$ti#uh`MG*o_P{)H&Mz$LqA{EPLCiK%7_zXcl7ccn1@s~!rq7%K1 z#AD_s6$@z*)(wpsA!u4hK9vz-#-cJy>SpPj{vxD}BvQePfLD}-MJyw+m}X3*G>jXb z@*pgOczL8-?o1mFpBO$fe14b=Umm_Se0x|9w}*G#Qy9>dfajea&0c$8dxQ4BPTRHH zuGMzUwrjLqz3r0IuH65g_n7yz_ng<&f)IBN0>n7kpTs=vS*Jbwq_>8t-L}c2qmMs4 zI_P zPd?Ho7c=9rC$bKC^MOBnENstuaFsnOP)j`3^P%dW0z%7!pqR72}^uAD&kc5 zbxqSGinF3=nBd`fAi}Z=SXt3Htz>3j!8y%%nb07Mv(yh75r}fU(w&B}odtzRLSM*y z!l`syuuN>G+*@J#BC$3auhF%bcK*X8)=mzeQ6|(IBler s?z=6^^?gL_Hqt6*%(6L6|3v=ri_SmZ&od9Rf&c^{009UZxq`r(Ceke@SmES15+lpsKRc#QaUl z_8P^@X;4*JX;}X4M{IHN@x$Hl2Vbcy=l^)Y_Fz@6hNJtI`EGl2Xs!)%X1&?S)skfm z^0Zi5xAJt5FSW+g1tVuN-Ho*uo9f-`L6&T*{5eg&b>dw1crJhRU^17rR%~pXIH6@` zt8#SPu-+zb)X?5mTiaXApmt5Y|F2uLg055ioJN)Ft6|&!IDh@we}m%lG^nbqG%^3y zG}}F@byQgzmVf&x+vofIx4D0Q9plDmkFl?&NxSRNN|Q~g_r>9|%6&IdkrFDEx$s@D z5dF*xgctRTNTqop1IZSSe=;2Gn#1KFlundOPo$nIgkL0yh?VaMr*J|k{j49Uf(@7Z zZkj}%lL+bd`@+v7DdJcu5f?$0t0d|NiK598$DzK&N<>OU!jB7I#DN!yEOb4ZF^O|W zG0u-=;ZCxUQf6)z2O^UNb;XsDNFC1=MG?56=c*{l;`7NOPJ+}8av{AmBoi5mzD#1_ zg+&ktu9vxC!P@Jr*L&8ha*M~Z=Pb}Q%Iqm!US>fGzBbmrVkEUr!gZqB{{ zbL;4tJ^M$;TeH{d?4xe`@bK^h#otTa9Yp&OfB*y_009U<00Izz00bZa0SKH~fHT|D zrytuCrg479pik;JAD^o_=^eZV0SG_<0uX=z1Rwwb2tWV=5P-m01UTb{{^|8iih95O zQ~OQ%QN&q5F)sul009U<00Izz00bZa0SG{#fdZU$4Snh19g6zD|ChP0rh$m)5(FRs z0SG_<0uX=z1Rwwb2tc6W0(Ac0(zhSFtNY0feJMa~h0kt}P+JesFa#g~0SG_<0uX=z z1Rwwb2teR+3efrgmcI4!0fk{(yv_pvoF`>&nR+=_1hRqv1Rwwb2tWV=5P$##AOHaf zR4CAXG9G_qv-gYlzVO~hj-g17w7W)`foQr$nNe-JMwuaUx}}bQba|;3d6^dJ{*Q(p zdd{MYKkC2!V>}kokw2b500Izz00bZa0SG_<0uX=z1RyXU0UCd_)w+rcFXp3pF_vN* g`Z$Zt>CwFyJw`7f009U<00Izz00bZafq4l00SMDazyJUM literal 0 HcmV?d00001 diff --git a/canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db-wal b/canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..a1cdfd6d121a56054e3c337cfd5efcc4ead05043 GIT binary patch literal 45056 zcmeI5U8o&b701s$A2auyx!>PkxkT&?C3VNyd(X$-Peu_bWBa6nQUqtu?7?8ulq6XC zqE#RIAVqvA2vv;qsSi~ON|7Sek0PZ)m4ZdVj}}WGT2Uw>wMbk$xyeqX(@fgju8Gne(67znNKU_C9mZ`pvJuOZ?t^@7!|U?*4iu<^j^{efdlG9ktdj{c{F?zB2(` z-*>cUk&U1o*==C z_@ljp2a7|e4!uMU?OC61YT?n*!{TuE@-4%`y{Ar`9)0+W$4{Q>4UZkK&B5XDXsw%r zM~1aNS|9Yzu9>&Cv?bjTgT{CfO-cuekZ>u>RRENdO+x?+k)-);0h9-h@s+wF;E~+Lr zT8cPMdP5scPLJxx={qH5YH2F2s8%Yc2`eiq)6{^l zC`+SC$)svkS|P+K)lDgN%uAXic|sH5LKSN`ZAv3*o>VoLd8^X$_*1qe$?K_uTaK}e_lgaXAXL9T0 zDjXM-*e?XgU}tw%$nb(Uy5M=|z3aWdXU;tM)idv~*xRz+x!14vuHyEQ01`j~NB{{S z0VIF~kN^@u0!RP}Ac1#Dfb>Q~`|;x#+Ms`ZC&$UzPpaN!NAPV(00|%gB!C2v01`j~ zNB{{S0VIF~kU%Q|(jz_Zz}3 zAOR$R1dsp{Kmter2_OL^fCP{L61d3-jPL0A{;a>^Z~Gtg5BbcO{zv>z_;>oB_V4nw zf7HL%zt8`Q{~zMNLHyT={|fQ{O#By#|6AfeOZ;CD|0&}CnD~!F6~P;S@pfQ_g6G}= zYcg-!n$+8}Ch<0{5#EM1+*`MXd280h-YOWTycKJtw`@)BEm@O!i`Jyxf;EXZZ;kNg ztl{3QHO!l_CibSm#L5e-k>13b+&edE;!VMCBK3T063??ncq41LH?$`92G%gI4~8p` zSOZ`C5boI0bGO3xKMcLi-ps;eYJG{Ujz`-EwibiA*|qt>@=AYW`WhTwGU`-w=*Bukn@X8Bso^H&BAkl3HWgz~9$0YDDut$! z8K_`fXD}gCnzE{7=$lkDJc%=!CnYFAg<>k9^slY|%Nw262^2;TJqc2AEGk+iEQS4o zdc(4=Q!10Z)K)1@%dpd|ML6tI1vwmasc;T<=jDs5o> z@oQaweDayg#Q!G;(YFWDYs2W7Vf6iB^yVmfVH7<+iXI$AFL}{ZUi7dR{lo8^Cc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG57g4dO15H5I9!_0SD%PL$ErC=hJism&W1E@bQVFguEt|g0Qo|xFM zaJkH3zhnxpsT|gdjfCt1X`~c&nnAt#x-wO`B!#G(lqaB2LM{6=FYSIcw8^wohQ$g} zLbzB%d3zyX$02UPenGsVTFQzxCWaKqgyFE(LYh}i9)p4?6UdE*r&KeWk|6F$Ba%F= z({MiLvSKC3q>aiT>*Y%OEGZSY0T&d2LXJ2DmHK%9fAJ``l@s3oQ!c9Jd{%Acv`&WZ%v%Lu+zX@wA{)Mb?4sI*bfjl@`dBQ|dB$XjPiW`TvVQ&1~g_^Z%E8y4uPK=l?JHw6~QL x&i`NX^jRw>eE#Q>r{P*T;qyO~2?md=#9C?Iv~t>)^Zz&PO&WF_2_S*q{{S^CVTAwy literal 0 HcmV?d00001 diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db-wal b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..652654ba89d3482131634d99b1e91a6039f06109 GIT binary patch literal 36864 zcmeI*-)hrP90%}onzW+@aYIFhAVt?PFV5EdYnr>dYw;B{e@-Ci+-Qs2oqG^3@*2DI zLh#0Sa1`HT{!W{gO{Qd9vjqA*@asv+$w_{nq+ujW&d(oT`5Ieivof!<*_%|SoUzXz zjuTa@Qkzxy{J%gD9VbkY)hPy9P*qsTc28mb->_qqe_I_ZYZPe~R25dLn7>BZKA?D? z1yzNWisj#Y%{DjpU!C-R@twkQUg3`G$*#5Ao4nAqqwz4+_L7L{2Zxbt>v|FeaeJUg zK@zna({|3JJ8QSG_iiYUJ|>|*meE^kKDu_P`gAFK@^ZG6z84=JUfWRD!d+|fq^5uJ z4`f;&%h7nmYP4QW{r(3!?VyJgzq2TEe^u=GpXRU5{TmeDvY@K4QpNlmS+=KCt0=Nm zEdS;{JL6{++o&S_m)1AulT*gNYZ{$&Qa$j8hB~99Td{O4qi0#daeYtNhG&Vu^b8So zoxW{`u4#3Bw*L3|?fgVbw+!3&Oe+XQ(02l1hfyGc(2&BT9(_NMv27YG-E!P8cDt@G zEZ^=5TbhmtjBZc3j_LKKWxGz~P_v#d{V?uHVL5Ir>~2IG(sw-3Go%?wBMznGvF3nn zZ!gUR9aTr5!}A=8wEtVJ$F1kBomO==9b0l|0j|x@>0Dn-)zu&Rs_@4AyV-nspBEPw zUnu@v%G)%o83GW100bZa0SG_<0uX=z1Rwx`B?)j=*VR>tCWTfj_o@V+-m6+tV(10} z5P$##AOHafKmY;|fB*y_0D*-7XPo~3pRq@aZ_1nCSt9DKyXxe+ z0@C4mMxg2NJj2=0`yaU)dTudD#jUsf?hA509mVJF9iayZKmY;|fB*y_009U<00Izz q00gcG(Dk1N9=o_gvLZ8eTy0sAJ&iOW009U<00Izz00bZ~7x)9Adg2fO literal 0 HcmV?d00001 diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db-wal b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db b/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..db4d0bb79ed71922c94349bfc01dfd2664a42426 GIT binary patch literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&&?vBBnULCcA)GpooVcV|zqIZ)z(lR`dmU0~X~? zV8w<#Td0s&@CMwEl~kBA3Xh9roiNPt)yE zLSDYu8R%X&W7OgGWC4-v42UMPRCLFoy4>3M@Z^^Nl!T+xISih;N zJ+I=~I8>Kgo3r}M4@s@oYi>8c(q?WopXtQbVA)#^_wO=uV|#PYda$v+xlP#WdXm-{ z8ze&3x-1ccq-GCi2HDK#>sv?9w1zYNZ01^jH9ayXGvj4%f5~8a#@@NDS6kcZ>hhY} z_!cqLHckEe-(~6mT~zUH9C;qEIeY&P>(}T0%PQWFLv^{ed92?aSG%iv9eK7ntH1o1 z^m;#N?;Y)ZHhOQ2UY@o8H#fERpO~ZH)w>-T3nz$MJdE28_dCMlLWqF7!twi_+jgaF z5vI=(d*zk&xW6(wUFg$GxA~j0EK}$U(eY)>`(BcAKM4izJF(c7)JEG%=V>A7s zW|k>!wNqCnl8Z#8^WCV;JF*pVKMiG&xKSY8<1_uDMwTg1`yWNZ<O`}C92ER#&4R5^8cJBS7MgGBJQj6*KGz)AZua69ez*y{e4yQEaQP`XxH zD&5il0--ICfNix}j^o=*cY$r{&a(~Oxi-~ZsE&W7aObnbQ8pP_ zlaYNm8qF#0_2A&(wTk0gal3{sLjVF0fB*y_009U<00Izz00bZ~BLPY*rayixt1yjX zFOJjUCsi{l3~3+$0SG_<0uX=z1Rwwb2tWV=5SR#1LM?sY(G?Y};0pkBUT%t*=wJW= z2tWV=5P$##AOHafKmY;|SPTJ5Y)gOj@P;nOWQE=VKu2GRSqxZI0Rad=00Izz00bZa z0SG_<0uY!Z0rmO+@c9Hc^*&KUe-)sxMh~9@RM;M1!w`S~1Rwwb2tWV=5P$##AOL~I z6riMH=|?YrQBnN;|Jie77gHNmK>z{}fB*y_009U<00Izz00fE=Q0q@rtJkZytM{u> zwU}MNR%anlu_hN!Dl8kC+0e*_bTXu*Zt11xn11x5!OS9`07>aoYw65F3ppSF0SG_< z0uX=z1Rwwb2tWV=XG);_h%_2c8=H;qwDEy9&Q$HQDYkA+vr=-MO|uGe-JE8Hcw?jO_|LBMivM_00Izz00bZa0SGLNz&}c5LNNdU literal 0 HcmV?d00001 diff --git a/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db-wal b/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db b/canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5d476810bc50e09728796eca13adc64e83d1a704 GIT binary patch literal 36864 zcmeI5yKm$~9LGI=uDv`Z9t9_~i1P|hdpL!6m&?A6W0G`H)rootzPxm{1}la@)>^4-0IySKDXTC%R?uGners%aY4W_o!La4JM7ql=kHTgEC8 zWeb(=xLcazJmfs?TydUtW=`mE=SAmL^~Vs(dK0j{Fbsm!c9l!)k#fv-l#6X!x-hUU zb;NB`xy&|{%WYk`$R^5#a{fK`|eHUe}E0w4eaAOHd&00JNY z0w4eaAOHgQCjlZqKdC;w{DZXBKmXr-NA~`tji^8X1V8`;KmY_l00ck)1V8`;Kwvcl zWd4cq_=)i|vUDSt6E*v?5ajr z)w?P=uM*AoRO&fXzVu-bM|bU!cJe^T3g&{Cy)p%@U}WeL1V8`;KmY_l00ck)1V8`; zKmY{(-vr#(wCVKC>HhQ=GX087Z;|P5`t&<}`nf*+NS`hzHs9lIld~|cX%w)8vLFgo z4qZX3x+zn^dBEGicUjD{IFu=fo4As#(pt9SQA)Ea%re=$$^zz(>bA*}tW0Rth@3K> zWV8$-nKC#jMPB7eP_xo^d+lxbMxPAFzTPK$u}}JBCidR=SN`d*jpB}3 zd|?(pTg5G_Sk4)+p1lyS%ktdk3|*Mz`ETNON`21ag-U;sQK!`BOkb$Q?RNvU|0(T9LnYttNp--? zU8)+UnaVh6^h_D2vQeG1^2aZxt&HtdUbvk#+0GlkoNi}sCwqGrZfF|)EqDB+Vt$Tx z)yNvEgW&>po;XrvA#JUA2asDFzBK)GUI4q>nqA=!|(P3#}AcIj_e3832hNe+ZA0u zaHXwO*l_~3`tNn{^oudtaGW4;yuKsi&{4v3Tt{?6=?XXM_-*C3{m8Z%?IDiZ%5O&^ z^g2>_ekeukI$hz1LFn7I=O$4?n{~a!qn44dy|6DlY9T_}z36wGM9OaLs6et>kF{EF zT7%Y&xuB!@1)4n1L2L3nXF!wZIi2YE*Xxh#&+D7@`G<{`r4!)B?3&Ka^HE+WB42knxYqyqQq!D) zi(udjO5v{8rGzYFx@y*^Q7hK$ZQWS3hT@1ET9pD?kizoyX!i~6e$=|Jv~HfY|1&o=4j$>F&+6?ch`24%)N*(nTii{A6|{Q36(p%2bKg$5 z*CR|FBL?NQ%_v+O9WK=2rL+2*vMiH`Qrk_#$Z|c$w|LtRWD=WOj_rp|91FMQ$fL)U zOh2feW#S>XlYmE-XthI`DG05em$s}#q+T5Mk{}43shPf0Ez1;mLU6~kttf2E>LTu1 zVcM2kmx`X_yF3xTKQ+@YO0!JDNk!uOiIs|0U~xNWTY;B^masjar*YyqqCGX!&vJ*9 zO6N*fN-L#X>R%wVB@!?V$FXhCWU6ybU3D!}Q=KrW>bTthmCEJHjmn+M5*3b8sII=$ zRikV&GA1MQXf#@;xYxtO!AOHafKmY;|fB*y_009UIY8|v9m%Z79^q@-@BspsUqA2Repr){LhOmhy+Lkl?| z009U<00Izz00bZa0SG_<0;fu#{D3qXj~m;Kue9-wHcnOT^C`AI(^-o;n`IW{x<1Pc k$8~L%*^BFRrkRQ7gMcg$fB*y_009U<00Izzz<(g{2flneg8%>k literal 0 HcmV?d00001 diff --git a/canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db-wal b/canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db b/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..661c46b92a46b90d0431ea8c311a31a95c1d1e5a GIT binary patch literal 45056 zcmeI5U8p2S700J~X1Zsl@AvmNE2f*UvDWUcs_w2QR}l$q@}zHD9q-&9xCsqUHcn_qvIc)hva?sm!UJ-ixoFX{EZ{H4238EZCY*Wll`CZMak zPxTD4A(WGQ10hO=ssAz4Ry-)@_X?PO+YV#>`%v3yC|}qsVD@c0Wc43^ zw0G=Sas1rz=gIMXtMhd&JUn%Rok(A}VbH(x++F8~AHMUm;j6L-Ly zpY1vDo_%xvpB%skGz;Z#du2aAuS3@UFV^4m{qs3QCax9n|sAM}oU zv6p)v@jl_*>V4X~&C}i~?@sS-?uakk%S($3^K-K^(^LLrJn~#vA-E?S&19|4sBiJ#`J^|J|?kygxzWQ6m8)fCP{L z54$y%e0lqO3Kmter2_OL^ zfCP{L5;(x&Zke~S<^KbP(>zDo={yqNd#Q!JpUnKq?iT@1oe?|PC690$9 ze~9?sA^!cu|2pyi?f9=a{_~Fid&hs;@t<(~pE&-tsK;dI@=C#E+qzrU-L&q8b=R%C zX5Cfmu2^^3x=YqwwC;j+=dC+u-C66-Sa;gGQ`YsZJF%`!tTP$eXFcn>)*V`RVBNlT z9qW?IF6jk3CiUEn@cR$mWOZX|o~-%(S!Z!(dTVafTVL87Z!ZrP+!b?^$Ubjm)Tla1 zs!Y>HMUW||mWryh&ZvlUCYrK})0*$|L7+SmKmter2_OL^fCP{L5I; zb1w{U3GWJDBH_)oTmy#w~l~SJNDV3Q} zR4Y~Gx=!kZsi4yuLg2+ZO6xKew9HI8VNpZ=UY03ZvpkW4XN_PYa3fvGO0yW=F^eHf za3iVGbxxxu(Ted#<+TciT{0yHgDzQ+gMOC`$AQx&dvQRzWG0?`^8fNr|FU1aHYk2H zC|(>E4-Sjpxy60%HAqTLrff!KXc$63PH0+{&=BBrj%h9{MMc_FWd-d?E66tAl6iWH z_*SV)>uXi=$;2vkX`!u36Ee0+U0QLg(wK~_Qm56jHcl?_tWuY=q4k)C#I;IY&X`uE z0p=gS*7?ULpLv`9|FM4f?SA<3AbfHVet!_YHVmH~hK~%x`-b83ZuqzxKH!G`@H!6@ z!CIXr(A%n%W|4#uf%AmsO~YsmdEsM~F)orQSdB%dD;^2TvI_Q+vZOkRN*FwN!=#FY ztg~Q+#qhF(F@?*zhF)AJRMu5Qp%sc)9&Kku_gcdv&R7(zP;t~!{>J;!P$plYRK&FD(tmI{0n>sc*WT7u%ER`_~ zZ(0cvr6#q#u7a72mnD~FOq-;E@k}I~<~mZeia5Xq(yXq6>8cc>Y@q8+q{(PsRWX%~ zs%Q*DaT6sKE0a2y>e5T&_^-H1%2Z~Db^P}~*Jb?wnOD3zDjpsce;F4KjEkoy#n&dq zV}9}Xsp6rj;t$isx2B6HXNuQnuWF`1Hte_|U>=z1xPj|ETtJ)4a+ql)j53jnjFl>` zMcz7YY?5`Wq@ekxqU5xe6`aSpfY!^J8cv@^G`vz0K8;qTRkCK4y7W}7O6z3RDs}12 zT9wwwidE{;SSA!iT)@zoYQEQTXU6{N|{0MDVT_nDC#Gz>y&k?C`jP083;Lbn+4c(U?({!wM%) zd0y*?X$X*m?Nrqe09Fl6BA6ya+$X8l5Qt_;Qwv?HL~9vraSiLPDbHwCCnnB@5L5CR z;%pVGrmA2H5%XZPYO*@#93tYlgh(}l7*uPJR%zK}u#?EsGT7)cI}g^o%)BxF$M_%D z|6v^mR=ePQWM(l(DmYVR3@hH(e*J&y^Y3l^|LAP-(p>Sqx#HRRt6B>LsEvwWeGH6xWAe&aHOZ3pHG>7Z|Z@ik> z$_dy1ueiF}$_dy1uejRV$_dy1uekfHl@s3obH&|ot(@@wADX9{amg#0D$&a6P_F-9 Ox05uiI1)etz5fAt+*RBF literal 0 HcmV?d00001 diff --git a/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db-wal b/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db b/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db-wal b/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db b/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..adb9cbae371d305f5220a58fa0971c22efaf9045 GIT binary patch literal 36864 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 VN-wcqG>yuCJn`N6*RYY?{|~Me1tb6f literal 0 HcmV?d00001 diff --git a/canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db b/canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..39218a00a22815be3eada36aa49dc467a94df622 GIT binary patch literal 65536 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 YD+cd&v~oI->;E_GAPp;y1du@Qe__O3g8%>k literal 0 HcmV?d00001 diff --git a/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db-wal b/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db b/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 WMX|>kuR%!hV;Fn9<7+(j`2PXpjjc=o literal 0 HcmV?d00001 diff --git a/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db b/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a880ad8a5faefafe1c48acba7974c3c23c2a11d GIT binary patch literal 65536 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 Al>h($ literal 0 HcmV?d00001 diff --git a/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db b/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..1890b4c3f0e51e91783704eb9a16e9698e8fdb5e GIT binary patch literal 65536 zcmeI*&uSAv9Ki9J?4~6Ju|-9Sm!M72!?c_1pJZ>bXYmzuC%X$lYfBnzZ}vevc^T$`YDYnHlZrj2NS|4*RKak5AI9?z;U{=k>0e z>V8_^nDh(B-n8G&;k!Y0`mx_jhFSX7bU(XutLkK{VEkgbm3x?_({e6 zlpJTH>M%PSo{5TiU&ns`yRKQFhwHgWlltwxf5+svS(>J>DB1UaQvb%R+Dp^gEHX+~ zf9*(I$*Yo0s!0E(jVkDVJ*9u~Mh+i63Xa-%=gl@2J4@Jf*WdRyq&0)@dB(%}ms~ zVt;>WCJa;_frgytlW5j|YwPh=d8W-w3KNi3`$OM`+$hT)|K{fAi^;#nn*J=CE)%Z^ zAbE0R#|0009ILKmY** z5I~?r0#Zox|NlZfD#4uOY7ak@K!7PAfB*srAb5KpZ2q1s}0tg_000IagfB*tUz?}cD*xL_1vl=Tt|1NLu17znyAbw} literal 0 HcmV?d00001 diff --git a/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db-wal b/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..b3a6f34d23e84d760d0b4bb13d31d56aeb02a7b5 GIT binary patch literal 67695 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 literal 0 HcmV?d00001 diff --git a/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db b/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..31992dcb3519ba44eb7887a3074de966956d641c GIT binary patch literal 36864 zcmeI*&5qJg6u|L&+XA8Z8NU`9gULV)rU;bJ9lA2ahp?qJ5}jc(5GSsj2XTRK;?9i^ zp%ZsL1l|iBa4}4ngr+e5Z*sVu%+2XNzm{fbhxW(!FES%;iFrHgqaQERok$@*zCRx5 zUN>Xj@p`d<9~=*aCQGU4MxnacTC{m$%YVtly8gW0S28LlQK&AqwvF|hs@m%+-bA6g z*xHuWpM4?n`Ce&U`Xx)T)%;&4P7TU#xp}&0nTO+}N$UB#;b<(Z{b3O1Eo%_?Z}VL% z@CQLYJsa6rjyxP5oj)=)8(CkDJn;6zb8}i|zwDkqGAun}a&7c!G!FO62WsUbVW@SQ z`u*Rv)CRh#;&&8rZm%ud|7Z2<8_t=d^v_cj}Ew)A2g>isSq3e$DebjaIWEEPaHVWIqi1 z-iP_YP9Mm+rKvQQnVOwi(+h&W6S$R@Qx9sc({}xuQ*DJoEvz;}&uy>D^h`+kPo^O3 zxRrLtaVr%yr?B31I(|!~>o*!fyH#s=tzcy)neB>P?tbn`ZilxJQ(q}yn~UAhHkONW zv8cAcZQr#Y+fVJ4N%+O?2}o1_QLme{7E7tcQu=IZJ|?->>2&&8#p;&a)L1hD2q1s} z0tg_000IagfB*srY)C+g)a?93R^>B|WKWLE*_Emd6-F8a5I_I{1Q0*~0R#|0009IL zSO`cVP5rOecT^<&@n6kkF)bDlKmY**5I_I{1Q0*~0R#|0V1oiu*rxvK;R6-PfBs*5 zEoOrik_rI?5I_I{1Q0*~0R#|0009Kl^?ys>e(0g5kVc|c;N{tUfY>YuAbeDN&w4u9pdVaD+ih`*hJ!h#~KN_*N3c literal 0 HcmV?d00001 diff --git a/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db-wal b/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db b/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..82268f25a181780e35f143e486e84c44c9dfd307 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db-wal b/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db b/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..de65492a6d0dd14321d752503d1ac3f6193a1ccf GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db-wal b/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db b/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbh)e;4fgSCtLVbwZ*i})J5CznztL8zvpl{M$ zH+_gU>aGt#XMn&a7m%<_l7FPbIAU@<=QFX04fd~}-(*JI6VrCu&wgB`JC;Ix{&dvS zy>7;|-zKhwUSXWnuY3OYnxcVsj9uL;{7aC z7hBt~`m?V^KHn)0i+^M>wwiBr;#9BXmb{ZK%RCq!j#94<`iDbd?e)VbZ&|%C_>gZ~ zVbBZn>B-3YV&upE;Ovp9$;jGbqg#V7gJHB++E*(d2t%#Y z)PMhNOKqULD*nzQ&h52fum4H?df$Iv#gAF2F1EIb^`~dm9;;qQoNdGE&%P0z&Oh1t zE<15neT8#N^W?2L-G6L(VbpTV&6eYq%YjpiYM#>y8m`mq*6U%jQLX!pP*{4uHOlVx zyZ-KU7p8Z4?HwtNMW(=wx?!{8JIx?and)WF@msaB69mm})%RQVhF3o?Q*kWiB9qsu zdVUyoozN{eoLX2_({Y2UQ)xtDHL7@#?>5iNv?H=@k;&Z2JkoD}XxCaGZB{Dfaw~1< zu923yYpU&U+YjyM_DlO(7k|@=lcs)CubZ^yOR4!%`gCbJCb`G)c>Gnx`7ODrv1SAi zKmY**5I_I{1Q0*~0R#|OlYkVd$?=J-%4ZtM9vqjGGgWIUj5G)!fB*srAbS}Y)d00IagfB*srAb_CoBFGVPgEF_ zFQTt8`HHFJ^b0a8{uaX#KmY**5I_I{1Q0*~0R#|0;4%Sq{@>DN+Z!T@bdIJ zK$lIL=Mg{v0R#|0009ILKmY**5I|rh0V!-#UwZksisV24zqn@WN<}aj0R#|0009IL zKmY**5I_I{1TGX%_n*k+9_L=jwBLcrWOpZ-{63Q`O}5GW_wQT2z|OE) z`c_sif2P>vj6Hw!VrWW}tXYBSj|Fo5V#o}cLwTjjR5X^V?rCiOKe=KP|DxGf7ATLa zOhsdh`)Ux=yH`&FDw{ASV{+>sT#e9rc>KD&H> zR6ct=EV7MK-&@n=Ivov$vg*g7BT#m;o8aB^j~lvp0>J?lBsdcoxCte(BR zy0*4wMOze0YVwC=Kh2($V`rmW-&kiBwIs~(zhYAdou>S;%1!oH%l7|i{N}s=Eakte zOhsdwWu7WudVU<{QCw!JUS(%?e}jB@DaO~L)Q>W)3#pYC%Ru`|CMx&kATG6E z4x%zs38QMdOqG|UQh8o3gEEL@n#WYP2t%F3ewf9Ys^zLIbTY_flIK({^dgz1fhY4k zDf}!;!#D~V=ewftXHj@rsKbyJ9+X~2ZIpq`RG82t9mH802T|y?CyMSJ=DK&?k^70e z@3{MhyI(B#f6M*Ta+^E~eqr5xQKwt_qD~)Etr|N_->TK3RjWm-R*Sq=i@a8gyiSYV z71ryW?_KU)@BKobV3D>8aAE$aH;LOjbI#6Or#t&_?$hn<*RQsJnC8BT*Z>GX00Izz z00bZa0SG_<0uX=z1P&;`nKQjUVXj9A>+r5Y@3q-{`digrpWr1>{t;5AOHafKmY;|fB*y_009U<;J66T_!G17M~+Ltt&X!Vl+u1s1X>n@IF!L4 z^=RN4Ka?H~z_S`DUl*y@uXUZI&+CkYL(hK{X6QNFJpW-j5aIlQ=>Csvq~_N?T801w zAOHafKmY;|fB*y_009UbRROyG)9IY-oWrdbN41B)kIR`}VR0-o=Ci|T>i6#Kj6eOC zeTZXFf4^0juPeaCt}(AwHF9^2tA_0v^BUuix2G@a?s=#O0SG_<0uX?}(GmCxI@uVX literal 0 HcmV?d00001 diff --git a/canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db-wal b/canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db b/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..bb16cb204ea236f9ec4bc9fab7b0046cef986be6 GIT binary patch literal 65536 zcmeI*&rTCT7y$5{c3VQxsL{lO9(v$}0jW@sTfG^c!qV2*$iD#5c#;S4z@vEc;zKAe zf-|Ma1xZTSu%^FBKBk1(uk-z;UC3^C`T65pn8_Yy=k1~&e>+Kc9J1`w$Irvmr&c-d ze7#;^tN(eJC9+zK&NyOMSQ{@-VfiOaoa%3;*UC(clX1kZuvW(UtFhYqG2V?Mc7?T) z)j#_tYc@9*juw80g~Do{>cq9-(#q1>>3m+@KRP(6z5K9uc$DQkd;LK(&xif3_sve; z-x~It_0h=o<;eZLgR4i@Mk7}*NA7la23O|HtG%U_)8~~ujX1e?_~r0uu(PxqpZqYZ z#OJK0_kSmk3-n+*7im;~+V?+-@qHYzE3B35{XeR|KCbpS_9=>NC98k7lWlGmS+Cp$ z2!wF@wtBu#n;)#M^j@tEdW+rVc6)KPJ?JiOtoOQ$ue+~WYa4^s>R`Q{u#U#fYZ*k^P&>he{QaT8A@4VfkycILWt|%Xgq0@c(SH;TLPhW@yjRFFCN`i?wjU0 zJ3IRtJ@sIJV@>{@>HnA0pVZ&?W9+=1 zc7F9?c|==_ZL8ODzC3tY z{NAU!uI2ba*wek(3U#~dhI-)JzMe$AD2(mMH3N5Q_C>GwnOD7c;ia$W1ux~zsoBe~ zc<@yl&zM2(!jOj4obDmhP1-y_|6p*LQvF)R4;q@>M3?)91$oU2H%y&9`#p_~F!q9c z7b%CA^naC`4j7MgF!Qnabo^gh}=LjTm8BCV>dTm@@rvPosVfpw#W8n?y8!~Orr zUAtW)+j%!GU*b&Ry;8$ZCUyXdyqR)L@%cuH&%b>w z1dWUt{ay%uo=Kq;$-)*J@^XluXTZ6@J)A*TN#S1h!P35NiyqWUzSEkt%V=c&;$?p;XdN!p}Bn$W7kR=d6 z&jO&;8zZgiSeHM}Nzi1IPQD7DpE)){BilSc!_|;hw?di0pb57N-vU6-GMQRP5^`)mI}6@$tIUI2+-?eBQ&zj19a`R#rA|=jCU`3SRU7&Epx}jnZl_v zfSyeOdPc>A(dm7ew}L3LJtHZMK+hw0(NbgtJqLoG zReb-`ct}vi3pBZf%1sISraVDEGA=|TYbL*2fzWd)mm*nMV?$mxA@m#&TD>*Ws>;e$ zu!bg^RMrrL?v4r3$TpAA@HM0fGhBojw0aB&Nx==n*MQJ-%%<)(xwarzV-5(d-fKlQ zWyLC5Lz7J|?`nj;ZcKGg+D3cowu4!4nq|94Dh5eH0yv3&b7JCzRa#!dkn5K~x zX(mY$dZDKqovx|dfzi=@D~V`myJH4{)eYUqDJ-&q+y}Zs4Zc;+lQYaI<`|VPC7j{k zLH{?>x_O{0^yf2UJyL+)4DioJU#O9GFpxaZ7iyp{q~089Rau-$7HG0br48*1-8fcn z2-)WQLXG|fA+7EUWfq1e+%kL_eW3<-GHfIXxwhmf^f;lB_J!uu22?cJWy`Lmf-PvW z$z=`e3q5_T-Vn0Q_l0V&Ew(50x}FYMe^?&ZZj`xa;!NSx+2e#pzArSVa7d2IzR+nF z@*%0_!sfQV(7VR#4nggFXQ=jTsqnCMUN3ZpYQ2UjCHFxuhPEI6qTHu7a}@2lUJwO6 z-A-&8k`wm2y61VZo;Z#Zb$r+Bbi+c5ZX$QlRv7)ivtxiXGH3F$fYHsAO_40@vB4GKm+D$gV6=LBq*axbt6&XHHmR%vjJ_}i zNF&=kM#I~XCd_bAUL(CIT|ZJFDOjV=1EZUa(c7m7*@9e+W{S}bwH*Bf#b^`mCKW5S zhG*t68rdMN_S#HJXu=r%Uw!avH_Z|^O`Ivz%rLsS4Wk?CI9eq}-@*a|qi-6-=>ME% zwRgEd?mS1=j$JHbUN3NTt=DM1nAv_G96g_Lw41oyAnL{(ex_GLBQv6bIZ>i_L&FYw z2F-+JbqhIq0oD+WMaI$dY!Qw|Hx+}M#y_iy7ic0V8617fP>%la?ok@KGx3$O)G=w{hR}o?hfe{e7Z{~IBni2;#L=|bSO7}T zD`sg;R#R52qBS(xFVX=KY@3zV+Cw%Df7i&6T6K0;Nw6N9hmjmZl*%yEa(5cJ0xw&3b{QYrRJ6#l*G_mTqM%-E*wi53NWK zBio{nGZ-#?rXeI8!)v2Ggw^Op{-$i%hG8Y37kME`3WOOh3Fk zo`&Liny!6&v~TBWy4Gv7UhKVp-Df*(F{5d#W5=!^1v*Vv7*J%IzMkV-okWj)$Lxg^ zsO|-JAx$sAdqsPZ(exr{x}})iv|Z6rv5LD%fhHIDB+&HPooV`u4bi%kD+UGdwTYp3 z^tZK`GAfdVO*UkfG|XcWIIZ3$X;o$ADp*64O)6^yPQP{+E`x0IIE~YhCd^Rdv@kL> z;pX8FfzykG(;WjzLar@wG;KB(fz#}@DtTIy)sz*hXbnv^xxAfm`ob=N8rkM?y7t;) zn?f(f=@$T}7t7o@ai(zU45t?daJr>xq=!nJKF5M1HhpF%oc`JjD_?Sf5lCiUPzOG8-~R*c=(AP`mUw>p^+G!IP6Al@eCdstRWhV zjHj2t(~FAXO3H(o_;e$u!bf#QCTTa-yptA`Q*iCE_N4hT)eP&?;^*iU%U9D^4&1xnn`^eWw|L!%1!cEZZ`FD zA1x~PY0$P-W?r7@G5pP&U-NBQW;{xnFAfECGJSAu@}wG@N)*>-%W1R$ z$pe9rWduglTP3Y(iHn`gA<*Pz$}SCz+*lkK`PZ_s5oF9bhWB9Lbx5ltBbgDQ2{#eH zgUHA-KWj9RB;?wXr_i&;Wkg1nat|9-ghn)3&Foq#*n%dTT-Ie-;KIgKv$@hd)Ld^~ z*L-@DUnzf1^K|n<^HTGHlCcqF%U+B3U}~?G@(x==FYY4mM;CdyQ{v`{Glf%U&l;Bp zyU0t5`p7D~$QM{@bdk@F?jpafY%dw2=ljUDdk=GLxi7C5`pC6jqxE85`;WKCKN(p~>+K-Sayx&CnEEp%?JS(~6%qrtvt@WElP2r?eGN^|E4s(^iU= z*{c+I=tV97RDGc&ReyiJ6j-ASW{ZCWRfJiF(dcHaIsD?*Uh@Fjp6SiFgHEy{s6lHCaur zePs(=Xp>7U!_{FavPQOfuCBed*s9Qrx%%;6mdCYM%G^G2rf35)u3j17>gARquvW>{ zVn`0S`dlfl{@yH`VB`YT^I%>3cd=}Fy#Us=UZeG5Ui%=xdNl)U$8rtNaRc2+Xs#x^ zN3%BZcLQ`MHj`cuyWOPID~z?T!5X5?$iR9PV7;Ok;WWM@SG+)zJGfkc^=;+B`U7Ry z8ig=f{~gGBHN{mV3%hJ^MFd%|f~?isC9SHgTm@@ratoD}lJ!la$oi{g;2K%y(HfqI zG+~Mwt%aeX2{#k(09vmyS{HqlYZYiso~txyt;uRu;ICN`kZY57l|$&@y_OOyk_X^= z4REdAFlkly-Xi@Hpvf8fe+t((mw@ZfkLGLS&CNIlguwTZR?~H6YG}d@#altwYfRT2 zBni2;$R)sdQ}ZxtEB6Tto9WtdF#S1==!%t12%ML5662GwTDZshpqE^0k3PlhAAcY zK`-XD!@%o(8D3ME+Uy01t#_T!(QV7_==2dUQ;&_rvz@3*AM>&bL)YmzZqaHOvP631 zy$^W3rWoTi#>t8oD1H~03%tI#TfBbzD8fcD%-5d=U++ty70JRf8(b9;yxs@CR&SZK zsa~&d7QRCBkWG#(X^R+VZ~%>qqW*A%gDDUH~FyfbAZcW#;x z#D@PNt!C`Z($It(i-%q*_c!))5ZghLkZVgOQ4o7S7<=Df6uV-`)?_th#VT4ulT9w~ zvMh9Ar?(oz=8Kz`o3C#E+>VruY}soO#IC(o$~$Zgy_oARfwA|OxsBpX;nZ0WTYN<( zoA^gE_C5t8uvIelohe(G|(UHXB?S5y(CO%2sciw5qal z6|AAjIVvlq>@&Ne?BCl7w2^%tv*CeA6Xv)mueE;3QR=|W#m@q>4=`rC+vM7UT#W<3 z?EQ*4Ta(q46{~0sO?Woo6ti#GVe*g+vwx`VK-$PR&)K!x78@0MF=syuoPD6oofKyd zaQ1<1vF!a#WuUE+v&CayaQ4M zb-lnaBfV=m^s1vpuR4a79qMtCbbOjj#OQV6LeM?{?;QZ`g8=OVifK+eSgg!mr9hLr zxd4FnU1Njx#}*4?+9-)h`~4v8gDJiud4RMJg0$5eC#~vU+2X2vp~-nlNlE+GU6S@= z#juV1xp_iF8$O7%8nrXCKof2-UIo-X$f(^#l8|dloDbVB|E&#B7 z=~`g>pOy-E8$~f~{|0FLP>Qff7S`F|>WH}ZA<(vZ>!ekcm8)P4O)gMbDQ%zKJ#D|U z2)I!IH&DQBcp=h+LF&l1FgG;eCgWwm?L&;)MT4{t0k_$IRr0nbt0^v{sukoq%>`bT zr7mpl0=FM8B5vf&jtkzd9akzmYz@7bx4(Hs9??Ej=6;GZ2YCC?Hr_s{4!BkFws;oY zSF?5J_`Lm%2HR!G0`b|+0o=8l4-u-rE3X%TyVh&8UW{z-2XG(G0e2LJo!E=?Bnaqx zykQXQfkpqdjhoJ(H3oqDFo64zVy4p$7b~+@DbVCzE&#y&+-n5x$A&XE z%3|Vv6vTZv#aJW{5cgpaw|euWRoyFVT$L|0xs6g%;yyPPaX&H~x={i*=|FDyA<}B( z&I|)hxY0;}+=m&ti@wo&7|1OgSRr$3vYOeoRImlPZsD?k+&AqGxxYP}x{)<|E||Oa z++v$TFJ`+x=~H6+a9HA&iZch8`|vjAKBNx1RWi4DEZkSKb=Ng9_a}y9H`Hf82Xxnd zKHAS&FF<##*J!;My6*>cAIYHGi$Z!3=2&_!=+YD<22Jx9bOT54^=Q<#okV`(`b9%Z zo}PXJb^yAM0J;w=#yX8(1*~|%FZw<%7tnq8wL|ycE)R)yqcEoKhe6#(Qj|sV0CgV$ zb*r~eTGh&|1Wj(I5>x6vKQ47YGz`2^1UFK^Zg?WnYV6J|4o$e(cp4h=6cO!~^Y6L`88bpje@Vs@h)K3j7b-a7!^M*-eP6qB8Hv{;$FN`WT# za{&PFdnN+jZ@HSiQ5uu?Ye3#dQ=CQe0C^t;d8;>2TGhR>$5r`46CU4@lJ|vcAn*U4 zX7#r%D1)0Rpf`LGX*GIhl0g%0IPL{{A0_m*3?vD;w&W=^ru!(+`^fN+cV+CY$!ccT zQo$B9xs}TTdY>K#y}xobeIs-BU9flUyTw+8Ud-N?ugK%tN6Xw;ai(zXY+UzIu=kOv z*_i_i6!caE-&(1wC{|{i6lfwI7WdU`J$C}^{V&a{2ArTQ_H@8^?dio<%j*UBuJszN z7sK~w`Y5O!%i!A#Y$rCl#N7^kk=;(>o*w!=dau$=j7}W;o^2J+SaJl`5UqzHYeCa6 z90PnGRSb99v0`QRDg~N6zy$!l@0}EUe|lvg_Ko70|6T_AK9(Xal7)pfxJqJt_c747 zdJCmhm6fYt4NdN#vQqlK?b_)3@j(DbA>6P7zu}EY6Gq`a04??GB~k}&I_>~|A7lJB zx5>3742EgxI#>DS03=%kUXXgcf*UnpPTIe-RhqTw^ zaX(I<35(QUlY5CHaqwGdT9DvI=aWxVAyoB9>(;dUYIyx7)HKB2e;?l#O=~2Rbrh!r9#(8S4vUVD4}aK?4W13 zlts7QG(DPEBMRsXhlx$&jcG)L?s;CUCywJp9sZhlH*7b|BuPRq^mKaPov+d8Q0*LeuKfwdhtaq!K++ z&JT=8H%J*f^15ax@!B(n=Q=d0hffoH(5GQ+w@0&An_*9n13QW%H}PZ7Yfrl_MUVs9 z?UCK6L{c^IZJ)l`*o(s0j$AWv+gfZ}y^c$u8yGY{AK`DH``uokdqKw}8B9Cwrt{Kj z^z(d5{|BA^aJdtA7C+o$We6HSd2z$fdfCUgm;E#&n>3!JM?(V zr)D#bJ>R4+TzS4zG`Q>;$6yW7d>FD8)L%G`ZuT+7y*TZ7u`+v=0!^OB1)!UK-vqna zKU&?^(?)sR&koVgKAv`7kt|HK!F3Y-?BnQXt2a?vRav~C!E zYNM2VM;rc#G+~vC@{;S0w$yy|>u5(2E)TsbKKqWp1xHbAZ8*@4(>4Xmb9_AY3Jb zi-96w@Ovi4;E!#`a9AJ@;kB=i_I1_^5MJvwTCZ6;K5jtX^UA-Wg@?YIW1|eET=Nj;li92wS_FFG7;p$oLbs^ zmQ$H1b74*kS~JV3OeDH6r>54(zLe2fwfD-^QoXyEO-8I=EY($jY>R%MU!; z)?kw~j!Y?;-e2{#{`h_RjE7@LhGA=j2Xg$A>nK#YyOSY?n+lhw?wrGhPJ za-PdVjP2HIin0A!KFo&v^Fg-SeTxkXy*SABfA5gTwNI3}!{SWg-Pwcg6GcI`yN}7^wDk&43KRSGnD z0T%!ee_-Mu{++e-fj3HI5GgGB;VAIl$uUC0HE%Gps@r+ozJnpT}1L z7Qb)8EdG@Y$6_U0H@W{K?YqVZWZtrn`fF#zKy0psh6K~Fnbtju1eK$9180q>TjEIn^8VEi}1 z<0z78{07kY$rN#sJV4_oLF4MJlvY*BRlypX@TVeD8ozULH2z5dISR_-IJ^>RHI8Q% zhbG*FIKc6fjN|D$H$tv0c?w0wPXfo+j~`RY(f;Lxk?@v&zQmE_fMY3KLR9&5%NG@ zyZdN&XT1RAwO*t3Vj#ctm^@B9l>xaC22mVRVBGQDShqX;vM#+4tNWdZ#?OUav*#2? z$JgP#q6x{OF@WvT_xyp~>A;R!Zb|O_a$0NJ2SE$|E`a5^2IRb%b2l9hz_>@+=_v zDMoS^NkXnIaWri0f;RGC{X&J+%wG5M(yOn$NoC|Akk;&C&W{DD1T@?Vu$4lCrLy!Q9e{+@^OTCZZg R<|yflKl<+M>u4nR{{!m!1Kfo?_7>-@r`ZPQn?H#>2)1N*Jl6a`q>r`7wyRFs`QvBPcJ@(vdU|U^+e!}G<3|h)wX_j<6CrI5e(!THMjxx={H0;Exqn$_xrZ?46PB&1g)9Jf@oVa0Ew>zTN z6V2wU=2>%TE_8HvfriX8X$_g@4rs_cx09Lwot=j}cONoWu8n}K&ewUlm3`zdL%F%R z`D)^yWkWxfm0@Za0|E#jfB*srAb}etE2H9t5kLR|1Q0*~0R#|0009ILSX%*e z{$I%+KlCKaV8!R}a{e5kwbf+c2q1s}0tg_000IagfB*srlvBW*|I6$df7c}#o|L(s z-CBZ?G6Vz=KmY**5I_I{1Q0*~0R+}dVDkS*)@#U&HkUwy-IQETG(rFY1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ N0R#|00D(;r_ycOn-M9b% literal 0 HcmV?d00001 diff --git a/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db-wal b/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..c445a08a7640882298b222ccab2b8b77d5cddea0 GIT binary patch literal 41748 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 NyfE6W{G3I*{|^CEfe`=z literal 0 HcmV?d00001 diff --git a/canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db b/canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..d6851ec2df5610af4d04cbb7932944b1ed9e87eb GIT binary patch literal 36864 zcmeI*!EO>k7{KxQ*j)%)jT%inXv`kk#*lzeD1{r|3{N4j5Q(KUg|zWxAH)NX;?0W> zp~RQ)gfp-}(jb8}+ugu_l8;%+Ftgup=$7nucYpr)CMoq)&C0wEo^Dg!ic;5~Z@Q*7 zB{8dbTrbe{Z@S8mIXY@V=qj`lOiyV2Z`rZQ-!q?;l#Wplx(cntF@H;E`&h@vAaoU4 ziCO;X_sa9?nPKL)WJ1e%uRC_Sxniz7KD4dN;nm1_ciF!hD!bSB+n#NA{bt9j*?zO@ zd&z0b(`Cy~{lV&%&a`D|+47>%Yp?9nwpzL3_;tcIEk=(9Uk1Z=FL$8_AE<;L(=xyR zHCs>66CHno2y?z-_W7UYZ?^rOP-*sQOZ``-;o&oH3x?;`$(1^WQau!R;`BKyhlgZ?( zj{ldaSCH`$KmY**5I_I{1Q0*~0R#|0;NAkF9NQdzOzW@`(e9Oy>5-~?r$h$`AbPv$>iM0YNAXmm-Te?n%8ZEs0tg_000IagfB*srAb`Mw z2#89GIrZ@6gN(L*5Sg74v%V3pB7gt_2q1s}0tg_000IagfWX!Q`uM+XEb6?5t3Uol8eWO;qm7_1JffB*sr zAb`XQ!vXOwh+|eTHNX)J07B{KbsDp4CiEMN)op1)H zR|F71009ILKmY**5I_I{1a??J@BcYI-r@ZAH?<@7rtI(JlQ{wiAbaKcn6_L;;Pbw%uu&Xa*G085wiy z^&t-u#D{nw{c999?LTI&6&K2dy#i)p+hJ^f4_Z47tiST zr9M?2b1v^G?4Ea?KKIsp4leH*+dc2e@2=ibv)?ODL@#c2`(}>|Q|InGcfPvʒE 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 LHXI2cfzE#cvw>Sk literal 0 HcmV?d00001 diff --git a/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db-wal b/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db b/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 T)4t6A->?^H*l{F)1bY7iq|Q|A literal 0 HcmV?d00001 diff --git a/canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db-wal b/canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db b/canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb$VynAxXf6Tpo=oTjw8?gHDka3!}`^+|FVpC@C z9uH#Shi%IaL*G6$(+^6sOmelUd{@Y$b`)?o@uia`EZ(u~B#7O(9UoEMuX2}^N*7Ak zN(-es>R%wVITA1p+qSHZ$yDcF}GXQz{H;AOHafKmY;|fB*y_009U<00I!02v9-|b=}bw8LZ$F0CZL^ikRqN z009U<00Izz00bZa0SG_<0uY!F0ZL3m-FkRKhQ^3q`r5IPLhMtspir-Nou?Y z0uX=z1Rwwb2tWV=5P$##AaJGy$`47S@uacQ_(mJ=Y2!>=oUHh|G0jZLbvDf`$aP&z jF~f0Pn`ZXnI?kq?Y=`1q5P$##AOHafKmY;|m|KCr+4w*< literal 0 HcmV?d00001 diff --git a/canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db-wal b/canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db b/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5a880ad8a5faefafe1c48acba7974c3c23c2a11d GIT binary patch literal 65536 zcmeI*&rTCT7y$5{c3VQxsL{lO9(v$J0z#lvZuMq(3i}6QBmV+K;z=LG1CQd(iw~i^ z2+p)6Tu{=4O`Gg*lCRSyUuXOMrkyss?e^Et?_nW(nvL5{Ke;(g_bp`E=T8^I)TdS% zcP{@g&>LI~vqV;l(V0Z-3Tu<;DQx^H2Tt`j({p7Z#^oepS6G|J`m3?p$1y%kB6fwf zIjev1UDj;wuAHy@2`h!wTq!?n$|?W^UydUAexS$lJGe0rYchsT4xW}XiRz5Qk< zAM}QUW_^^|y3PD}e0FzcZIronn|ahd+`DtkyxL#eyn0>9Q^w_^voB}odxvXBapPxM zC2q5tUjLmuPSBHbPSU9UwDv!X@naIPE3D1g>wi>#eNyeW*rzD6%~}16oosiv$a;-k zfItXW@2lfAZTan>*KcpPHdp)Ic58KOeb8U+w!5v>e!tz@+S(uN>~HU6d0I;^7Y~m6 z-GlM6nwH_t%5|Loh4j%!E15t&Y;3Hrx8wXb8ZR0pE54lNhT6@WPpIEqo3+IC_4U^n z|7<1wST^fvv3&vr2oNAZfB*pk1PBly@Sp-AtL5qN<6?|zWwv`I!stlVgO+D70t5&U zAV7cs0RjXF5FkJx3WO}g@Be4n^EuE6v)%nL2Lc`f0RjXF5FkK+009C72oNYnAY}EB zetP(_nBk`yHH?1}Gu3@06Cgl<009C72oNAZfB*pk_Y1`1|CMz5p;sw&#>d~o&3S9)id2Qv$OBl>;`c3NgR|`b-npR_pbMK`?%e^TaJ4GZdF%RfFdj> z5j=uGyhCqQj)x&i1fa>dazz3jW{;K+0SyS6N zUDMOud4FU_Y)@@v)i1NYzh75=GAk?dmuB+M&-Jt!t-n3<{*ToNd3Qv_C&$GT)Q- zEUu}^iXZLDuR$x~38`7oUGAsOXmbl}^C|;OGDjM@=By5xZLrO~>>nJSr%eA_#t#~bpJbQ&y5;xRxG7Mrw4D$ctS^h|e0lk=-abKFSK;UVJ0NJ7E%P(> z;jiLn?qg^|==W9d^IQR?NX{g?nxDq_c@F$6KXQwr@@ty#7BuNnKAZXZsXHKOm@V@& z_TjIJT<%+FLVWkehx7gIxjGdl&dk*0{5;3`87*#}+cdYHWc>W#4hR}jm-!j{@K*&j z4=!jzdV!y@4}X(q#s20O*a85gKO80F5w1nz{pVr$G}UzrO`Q&lgmR=w z`DqNG=K;|2Bey6jzorRqL6a`!Qw8W}jf~JRTLx$qxnf^JFT%SQKAa!dp0875;>;|l zIY7??pywoybkJ&Dg;<$UQlJSvmMuot+{#ART)6qco4=)v%+Rn~CTJDaVh@$|0zoUi zhU-Pxwg!S;-~{cumJ@_gPxlim(rwR;^f0gkJ&k*Dl-RLrhOV#&dJf*m?i8G$7eLVS zlIuT>h6GLd15M7bd<%j;StjU5M}=sZCV8I^gkB&vHIbBg;zWMQ451f*(DFTz6*Di` zl)j-!m*qDAp>G-yqG7g-(1 zYF@Z0d_$8i<#i)Mdm}HECB8o2xqPx1 z()=Jh_>I4s@7Bh~+uGRrzO}K9LK)w1a82Xwk~(hziP|N%6wV=!&GtR^2;4|bp_6dU zBG1zBUB@+gfu5vn7`yHE*jRRxwTzO`j+59;gT(hmSw3?f)+JBVrz%aMPtJ|>NCA42zW1Olv`CGN4w5Qup+&TXakr90#_A zZW*aH1heI~&|?3hkfz!~+{@5}0RAt~7FsMC7)Z_}yPBWI9w#iKEhIm3i=y&tn(!7h z=~6y}+CsOD)Ea`>a$876uGp8*>t=Sy#>4q>?ZrBECeF-)nmDSbneF3V4V(dGyt z0<&d|h8d(~Zn&IZCwoa+JyKv&5c&NHFuGB&=_bjpLb7H97%e|?i=yU*o5D9V=~7;U zG5X>NAPuu+j8>5=_9yfrjQ-C)__Z5#Dovc3-3K^EHwuhiWH*Ibc^oYhqtB4w!03}z zjQ)>VQhS>p$X(`W71&}C%X)#Mm0rX3B4+y|aP$)AXfsXI$d7#8=&<=z?9k}wftAK= zoQ`9Lq2)zxEFRjv2ybLJ3(nC?#pXjOMIB_RnQ!;sxa9l?N*0Z|> zC+TI7^pfN{Q0vbTDAs5EDbVCRnFdLp6_NBe7q;0i4f7=Ntw8BzVpIo7nKw>Q_F13w zGEiE+H?m^p1)I`0H0iSZwm|8h*(OZGEZurARUu*xX_*@?=hvzFq;nmJ{N4$a=98Xo zlI$uZYc2z&A@)d-tE#f1gFpjORLZx6x8{?vR+_mrPpx1h}bs3(oN3NapI2xkXX)!cE~Dnsh0zt#SHQ2)!D`g4r@o<8-8{$mK#p6T;~i0H<4Z zDo&i4smXD=RmSNi8!;`5r)A>wc@h|X(`UEB>3^6bjj=xdJWf$ zciK&@SZavecnK zeWf;1!)zI-5pGCRSi(I5P3Ug@8UXc5L8(a2B)giQ#(;VSKrKIVi=y&tn(!7hIZ62d zsBg{IrF?4ZSuL-1TkB%$-WK&wzpC}4`ke=`TPA81x?*QSFPabIq!Io;GS&PUzU@*B{g@3LNKNh!SsDV6VoUbF1KH=z>PTnoG*KeBngs0Cih&bt2Q ze782XX4m*0h-hOQsHBbU^#N^cuk?;@k{xYqlU}NsO%o&aZ725F6Ff`UwJ z)VMsv>i-qVtr@M~YmncVrt=L=E>U*fiAa&?)>8XY4K)a)98SpqS<1%r4)n(7$gZiFV(G4e8WjI0*D4M?tZ zjI5$#M1JHJMdjBt;Vo!#it@RZXSRHsxMSqs>-LSnFvTw3gHf@Y3q0r>dQlU351PoU zbt+GsS!p7#lG^TG7ykUec=OQ!`^C)Ja{F?$hv_}B|=Ayu!ydWEXj zK-H^~t3qupzv5|rLzBytDX98lO{)IhQZ2AX9;EZ}e)uo0F<$M6mLXmPR?BxuR?KO7 zr1%kZS+2FPI;sWM@Io1@5pYOTSj{~RO$e(~VD(zTsz|P2^%}5Re&iNK<<~UfEogF@ z@&Q(Nx5Vmi)+1|JE_1aCUa>o&7jg9yzm^}@UaM1m;>-$HuhD&b6IZXw8OA4*tFs|F z;Og_WxcWQuyBdtw%ze{rx$swySiuT zfggH$>|23p#C{Z6;x&m^;f)Gd?*dq_Nv;evs+6bvfhKoSz5wex>Vx%r>##L4A)ya~ ztalNzidHAy1+td!ldPCi^$O(bvRrGD^^0n-HO!XD8WD#yMb_NY(1ghP0g&~s0#}h- zA?sZrYx$8|6qR4ogtwr{8OjG_eR3FCf29sw!*m&~RrHGe3B8ExJ`J?qRi^^QnH99& zbt77@NnvZ5XnlzU2U=gKi`Jj2L)VbK%+@NvhX*+61-4dt4cCj<`s$nVhn! z6T^)3G>+MfsO(L1HWVaCb<1{A&kFs}4#Y!2))2iFwq6HY?~+^{YU^TUCY1tB?xGC9 z)|a-$)?Zy7+I5XwNa=OJ^*T|jXt~>Uz_om*WW}76{sZkot}aWh4cFI(;x)|D-3X&W z5OPRUaLqjeO$e?p1FqK#VnuQVuGi@X|26hce&iNKWu=+U2b!Fv>;TuNYQXj9hx0XT zQ}|*)hzeh^U!fP#^}9gV>vgJ7oLQmk?9RQZ<9gSs6ug#6*Oy7~>$&R9i`$^<-y06t z(48V2?@g!(&$S-(UDgYDt@IkCRK5>-5w9HpUhn33?b@B#G&_dQ=5k^)Iyt_f`$5NL zGdd+!2FHA2cMf1vo?lrQl5@^`~}Nfc=QWcS!aPqc)W?j&Z~3lrB%J3Zm3>vcqLg|PR4uy;$Y616>I zWhRvZO|DP|AnZFwAneaJx9rA7KBV<5y0G^UyNXuG-9tZ=gY2Jtw`9d+C7Ip_a&=jj z+d}NuZVA~iOZOunHi8am3bDDHp$Q@OvtO3)Z|*6$70DIE-UGyzAGt+Q`87>=3z}qi z10eR9+KByUTT?cyQvjnATLrM#rO=DG?g|)tPn~KMXI2<{&y9?|TMA^$WbEu|@AX{u z=A~^j_LsKCY$#7Lj&5uf)|p0Qt+Btc(YUE`OT%pVjh|_p zZd`0!X*|$~8ZT;GYrLZI+QtvHEkGM~>5c@Af?bhZ!R)=j zZ26&E6qR4ogtwr{dCCWveReyT{ei7W8|Ep3!PzQ;#Xf~z#MwUy&fZ(6CdHW*&fYta zv-eDYyogNB&K~<-&sA?;9)+{tzZGgjdJ1xYwhHp$K~8!Bw3S}N^&-&r0owaGXnUa< z#CBxrp%VnU?K^BeUDG#pBaK|sNIWmHBOz$-LG)HYdmli1ujFb`+b33LQYp~n9?Afq zefP+q{gIZiPa8Rr+TRCh?<0g2t*pBbq%GeuSurQ&gMoG-7fo|kkoIkLN&9{2ha@f!jS|cp7>_|`2 zv=gvV+D5MN`WTNr3?VuS9Sv1-(3;#HnJkQzYE&l zPZ%p&cy~W&TfS$qVou5l1MNbt(=4^1?d~>c`w0qW@+9su_N4%|`Xrk&7c-PsXah1YhYR1bP-qQ{VVCF_%r1w9AxDOD@idN=50OFSKnyi?U^1?v7 zkn0RfEr|Q%_K5qNgP|Ly={^qRM(`m`AvgC5G$G_(19BfII2Oqj zv&X`HHJf+uh`B#H7`vf9#W|o`#rg0!C%pjOO0VI15p>@V=ssA2?l_7%i684}7@E2r zg^3LFA1rD2l<|DvHH^g-?(7M1U(M!~opSeE2cb9Qr$7gIt3V$f z=%g3GTj@1iFM_spfcGH|-l<`B{9ZsKOB~kQZJ2D?8YlF1KkkIA*W2{sEoLS;fatA& z_aT7yLCMvlc1Wzuq*9>C{geT~`?+HQ?>F7Z-pGv<|1!w?5JOr^v@+x&khgs2WW}76 z9|qcmT(`5-g1k?ULf((x2;VSH_a>k>0uX5my}4hY38D9Y_c^k8sNh*7SJ3+q&|7}| z7DeUPG~q31a+&f0dSBcDdjHofslVxiJSdF8-YSeYNwn!d(2Lmn+VwoCeW*^wiZd(h zeF%Nt2j`X-Wx}^s>nb*hvE%@w+YD_dF+9fI4x4@3PLrM<1wA&@+f9v5k_5hOiC?5V2yay2`!L}9 zkmL$dJ1kaaQYp~n0m=aIeeby7`%`O`zHekll7A8OeVDLTw0h)W(6@Z=WW}76BL>=q zT%=+_-)Bao?=MsV9M4*W(4B2D2pcMLQk0Q@fS`*6XuNUq@bVc@s?04|EkuW77<-BCCk|WhgspnQ`aI*5t#@MBVb5@x z39sFZ6E}6(18m(eBAYEbn6g_u+uv>S0`S{}O=-Recm zmhTyQ5E`*=FlFr6_smY}w-*iHb=X^f0eb_`W~Fy~Y??bW>gh>n$4Ts_LE`)E1=nT$ zxgp!_vo%~;>6xlwUm6^@B)>WPv1 zwiA2oTCKL`$4nyEvGiW(v7-#Oo@3~Rj^69BSwrkJ4pO%mGN7@a=hON>=;DVp{0fV?lAFhnXT+>bV&d1*t%ytt?bWK8`^L{xtXmh zG;v&&^+GdS=`~z0YF4}k&Fmw*nQgeCY1&4pTZYB%IX#OigpRHEl3p)}Tt9L{@!+yU z@J6MXeFV+y!;(Q*J0ezQQYp~nd6WT~+4qgHnf;?(n_Ak)k2L>lw6l*;16H(<>=CrH z<+~><=A=9^&@SXU&r*wa_Sw z?IUPt%a7oqsQj8Hyai3N8OzbozO>_p_SZMJwUJA?rL6*4>{{qW4E}U5_>nr*E6%Ji z_>rLu4(<^bYAh)-89W;(0tSEX*ckk=%@__3lp$Qjx;S{sdI7?fUc>d8XNUYm(F<4U zhkHkUe(S!XIsbZwbgy|&zFQj`vybl~n>Mzwa@yElchSc7w)*%cn$pHLKdd&kB^}1M z0-H9r)snS!-Y%`PCcAJR-8F3&x72ZrfGu$0>rOB7SU+Bmbv_4 zt!iuBQk~vdp`{gVm0POQV=J`O(pI>oI=#9=OHHlCE!FAy6n%q*I-eIAoC2g5o zs?&okwA9d+N|tK$G7Bv&Y7K6wPEWMZ(t@_gE!F9*7FwFu7PzH4J=#J`bJ{$&RHxTl zXlYiP|+D+(tFKTP*lA!VouXN#V_Il%eClY zyM0GpY=2qqWrI7)eQXFrq^UkO?s8~CeQb}TkL_sDafRecAKOv%vB?kNqNx0uCcFhr zvein^$98!feQbYM?q)+a%2%@(F;u`?*qmrvhZ9}Zgq*9>C z3n&AC_yc1H@o%jc54@2hss1sL_y!@aXvz5vkhpvYWyPG7F9zC$To+ktLE`6jO5z{o zFpdn$D2_lxnnH2z8)!l({yCudM!~m8uAuk^P+Wct7e(dQG~q31a)t5%ir+aV6#p!z zapY5GaTUs9=Rz+cyf1^rH|kWfIJ3gy8zL4z%GT|fCXCBu@#m4?VDbCL%;Jx89ET6e zFs`C~c(j*cT|4Vyh*_LJHg|~l4SodX#5yqu4rlc zW1w;Q9?FWD%QU5L$VF2!7c_o;3^e{B06B6f<2XVQX$r@=yP*l;_$Pql#|p+pas|ha z0mtPBaZyx$O%vXNCfQmi!124rhvOdykt3rrkE>V~dlz~UkN+`v{8*iO7H3v?{Mc|F z-R?;k&pe-KCxCzOF)h5PVuF9W&KYq(wnt%9&}=t-f%U0j`&5e4McAR$d3cak4dg7wc}!CCY1tBu2Kd7^5;(o z$iK8Z>mx^=r27Xz^=k`4I|{5lk7C-eKvW(YIQ_SesEa$D?*X_?ovUl*w^r4XOrU-XN* zD2-{w&;JX==|x`@WK9*lS*WVAGMk>t`d_f)BL8-AuWYLr%|ca`l{)6Hsci45csmPK zRaR=2f9s{#-#>Zr?)h)&RhIJxciikB+K1lQ)U{8;!D#R3%^>^qp`S#Lzlv+YeQzNB;;QfB*srAb3K#Go5eD(0LiWMLKtDT54-@aKH6)%hc0tg_000IagfB*srAb`Ny3aIn{ zM)CNeCq)J;K7W_<=K!s(CId$R0R#|0009ILKmY**5I~@w0_yx<7SH&*uEFr6EcNWx z8jO@7AbL1iUKre0 literal 0 HcmV?d00001 diff --git a/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db-wal b/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..06ee703b883f4a69e0de4c71aa2f9b4b1b97f692 GIT binary patch literal 59464 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 Q#;Y1H)aA#&#B}-p0dfs_b^rhX literal 0 HcmV?d00001 diff --git a/canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db b/canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..1dd12d24adbf6f42d2bf294bf73ff222d2624345 GIT binary patch literal 45056 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 literal 0 HcmV?d00001 diff --git a/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db-wal b/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db b/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..821106add49bf1820449dfdcf0a3b0c731f53724 GIT binary patch literal 36864 zcmeI*-%is|9Ki8&)^21=j1V=3n3zS`f)@q0{@Hprxi-FnwriJ6Ma)>lJ9!W<_8Q!I zVd9PNAX$75{B?i0Fkr@@qpKGx0k7ov{Ikn zA9j;EDYK5l1jclP(sZD<UXL1~)d_Z_SuFhqo{Y<_HEp-k zj$|l~Dz;R$`l{NiUYiRY%`Z^VvrJk=&$0(ds~L7Dng3GhVd-gUvo!y(*)nqi+L#{G zwR!d`fA*@7{K=n%a(a6DRpR23g+Vd~1Q0*~0R#|0009ILKmY**5V(?nR(Ug7izrGM zx#{}EmAagJV?8=oHTULhhyVfzAbEUCE8$SInD-p9?eX~#=J`4c_5I_I{ z1Q0*~0R#|00D(IpAm{(h+X{7b&DL(0RPOk_cfB*srAb literal 0 HcmV?d00001 diff --git a/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db-wal b/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db b/canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..53ca9e6acf3edd0e35893ddaf2b267b28679e549 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db-wal b/canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db b/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..fb3e3fc515fe54c10975b11cf2202d522b048c7a GIT binary patch literal 45056 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 literal 0 HcmV?d00001 diff --git a/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db-wal b/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db b/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbL^=RgNHn_&q}k$q3{o--k*HyfZ zLv@L@HLE}WTojAl^0@q6mJ_S_N+-??DsII)*|N-o@!=%%>|l5}7S`S{2#c0A2zpVm zV+FlIP|Qw8HWnk_3`ggW%uGkt7bExmz3|+emf5ekCyxwEkCOcPzDoZmReZN0R$%&0hc0`t`B@wu;Yjs4lU#j`e5bYL8W~BgwXA_2*xRZuh6` zev;iJtNxF3OY`KVIXixAwcN1pHzUvK`9Z^}*Bg=JH~p65_iJ9{MQ*F@wS=XQTa*0m zuJRn0No&58nJ;C}mS$tpdptco{h;FFmfohZ zW&{vG009ILKmY**5I_I{1Q1w}fE1bO{6t>mGmUg7$K~`))rtxu4FU)tfB*srAb!fm?$I3;DgXPgwq(9pEFgdY0tg_000IagfB*srAb`LM1*FKD`lp8v zbk39~0Oaf^F)OT&R0tq|00IagfB*srAbMWPt>-L#>Bp2OfTUdNUOJn& zpQs4|1Q0*~0R#|0009ILKmdV61=Re{_V%mo!|g=ZLh|JVO6D?mI4&8>+`YKOY|3)z Uj6whb1Q0*~0R#|0;K~U61@9E^s{jB1 literal 0 HcmV?d00001 diff --git a/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db-wal b/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db b/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..5e76048c1da97ba8e55b1b35af138c70241c4645 GIT binary patch literal 36864 zcmeI*&uSAv90%~3o!!&~MJtMkAVr&{9;VG^_V2BVcoJVhXa5XDt(CN>H+%CT^pL9u zAD}k{!HeJ{C_(T6#B-fV(jH1%w$^R7^gA$_{Mp@^-)FL+yJ`0K^~*atLoSeU*={Ef z57TT=LS8(1*)y#v*0{m#!2)UivPTS=qwDgd>ZY_WxyDPtbW?e@<$Z^HsC=|0sU***~l6$4S*q zWu=bsHzv_;=+@LKOU>eM-X)uKlm2F#$2Tx)4L1n+%$VL?2X-p^U9&F^<_jtE*b@N{ zQ__6ok@UQF!Ahx^a|sQcv+DS048RKjktFLmm}z8f2;Tl*;Q9Me`nU-TQ9e{YBkR z)O}0cKbHH=a^G8Sm3zTIY`e|MOiP=Und3Gq^M+|#rFyhV^=Osqk(TO_mg9M&? zTCGd1>#c>>Kg zJ-njp8ONHjX=7?f;k48*jP{EJ&qDwL5P$##AOHafKmY;|fB*y_u%Ceb{@*s2AG&51 zpw`rm{YTwzUkAuMK!E@RAOHafKmY;|fB*y_009U<;J*pz@Bf*(^zsi~>6EY8Ppwi{ zp#5*LV?z*t00bZa0SG_<0uX=z1Rwx`(;}erPmJ@AoR)xV9cP=#P9$=bc|1>K$o;UB z@Yu_`JW^4h)AM*<6c#!!N{LK8ZCWN1j=ugQGpXn7T3r7@=OPldo*)bk0uX=z1Rwwb z2tWV=5P$##AaEiD^!cAg<80$1etK~tr|*!1c9=QC;#el&aC_LYq9Ppaj9{FI-G^m)*sX z7mfO`4-&+OfDpx%Jmn!uKnW6r_z@&Th!Sv7@FT&HheQ;DNDQ)`+MR6eN;>IHGCPym z(@=BH%=G-b>et;>b*g*r`OUAtOT6A(@ACGB-TC%<%>AU-`|_9WJ#MVooXZBkzBPfO zy7zd`AR9tCwo}0D+O~6gc1`~}g-!bpn`^~`a(<_P*|lvyw!aUpordy-odRapwtd$A z@ke`y59deD9(kS|*|j#`)WXB#N7>QzgTw` z4t}QRz%l#g{y#Q=6Eq9uZ#!i-&(}V?{x7xP^!@Wtp4=&5c5T~_?RR%tdp}rHc5~Zj z?H_-g=@6}rpR!G%oK?|li<*WctRxwqTlA7zJ zOqJ{nOdoN6eD}#x-+j5eFx|_s+xlc+m2{NEqDg8RSDaB^NJbTBimF0s-3S%yC~Z}8 zNZ%@DDPwVwHI&y;26d8>W=WILEG-yUyi%zatxAMAR;gr(hP^AwqDFvH3?gwUX_ZDg z;f+YksBBg05n`1@qnSw3m=;X}b&3;7HLu`{j%r<(+SIL0>BzwU%h5Aj|l-Ydj=k$8V5-UZ_QmUvGS?-#^-f_OhB z-lH&!Klq!w9mf$%-9yF*cgq;=ZW_bf4Pz2_-I&;2GbVCZ!6eFEF(z}Djgjt>F{!&~ zjBpo>VeY&!+?_Kfac7N*-5FydcN$Er+$m!+*EdGG6Jt_$Y>aS6#&Fj&hPkdWi90kV zb_d2pZXZmfT*sKqCC13{vEF2|G})fqIyv~K?2L3}mJF_V!z-TqhPT&9E?zwM z)r)VjnQ2+?^6&S$s(5@PfCP{L5A@9@#c;4rLJfAKKd7SYKOR zSzcOPn4g=SnV#||X^yA3wBd>PQ^(uK;_tkvBdEXwPbZ2Sx%&00|%gB!C2v01`j~NB{{S0VHrR36S1o z+kD2~U!h$6{C{uW|F@qbdoXEZtB?Q^Kmter2_OL^fCP{L5^|2pyiN&FXy|3~6KOZ;CE|EI+NA@Lt3{&$G~0P(+0{C_+C zD~|uXn>V% z!MgL-owM$&b!V(QZQUvB`qrIT*Cy7PjO$=t*T6bXGzI7ezk}EFh1=}X|+^z8W z58l+q+-QlcP4{P=m6`FO`AKhUb<XFuuJPhIfRg!Q*qD-dU$|NIhAcb$7#j1&tij_$nbXr3Q zyts(cx=aNvrAa3&YRKQqq^32?5+%571QUT96_tX6$549-^WdLm#er{$s;4H)M>S>Ekn0UJgd~@ZfLF3khoT<%N^6IG{F4hH#-0L5zcy1Uz?}ksf;e&4Y53lnu5v&QwydFi+-$FuexVt0W zP?f^B2}>n7FhsB-Sk00I?sQoHm|t9lBV-Wwrklqy|jWm+kf1uHCO64KEZl&iXi zUc5-Cs;h{?RVZSeF;&NPuv|$kk}7GagyF{IdM~L?bV=(B64@85%yh$oB_3BWhzJRX z;3XV3W>jY|Qt^~$brG>5)-qU(YxsmBp;MZ|ZZMujkj7rYVQa`9pGJjjG#9}_DpXT4 z!Kf@XRF3J0s*EQzh3xg5@u-B%-@$y<$U5U3+8>utuL$-kimHJn@3N7VEJc=D z3ZbKvRwZ<*fI6m`sx%d8Q^PdHJiO{E<=qmvR2!IDcl6e{GUK?&p7>${(J}|1h0@YdU{w zCVzeQx@HPw!;TxVfD4pIg2D}LZf8}}B8f`4@OZ$tH-)~%9;0X7vSr?sk} z=g0)i5?NEj?bC>cS6ac@XjNJzYgVaCPt~flLRPI(m)@*ZX_>58r7k^QtI`r#wn|-k z#a5+7vSgLI^qj3q3uMtMb?IGOmFCHURqE0Mw<^t&d8^c=mu^*>BXd@%OHbaaG(%>s zQkUMoRcV^cSfwr_LaWjgnYKz@MvYb_ALsv9N3pG(aQ;uBSBGial;Wzy85D0Na4DmWw{{*py(0!1!h z9TaxeMZzc(nUJj1aV@f7ix&{XrCidgPGCmOA(T_RW;E8ZZYl^bdCY^&I!$2h6XIEj zWX)a>q-IS6dliyFz{_AQHVQVn%+7=LE;Db8|1ti@^?z8$f%^;YM`jjtl!iN1#jq}O zFHXvWp=v z8ucL$62ymq5XF@|`r!1 zL(Mre)AR4HUw5C=Ro(NQ-~9T!#P7}b&MoKd?zdNB9wNQom%sGDQETneKWFgkI}_0L z14nxn*$CQ^-3DgQmfgd%XZlwtZ2N!Eo-01Ile-Pfo-O;a{{!gl474xoHZXg(?6dxl zKiWHZusC$$&@1H7p7r^r79JfvEDmRx16eHB-0deaG&9`!z>r*G$}+_m=mVx78dDs>9;cc7JHsI5~a%!Q&^)J%{gw zjUVszVVeVc{T~^^0h)vMx81gv$7`RR|7ZJeWB&rQXLlQzJzMr;|GnMbJ_Odbyir@ zmLiUm-q1#qljFOORps610*ehAM{ZjuL#M=68yU#yxtF9 z=?A~>2QT!4XZyiV`oU!n@>N)2vUA~xPYyVD+qqlL-E{7TbJv}_=G;~1t~htuxl7Jn zbnb$4=bby}+*#+&ICt8)fpaI$btm>@%Kg-LuIJp5bBE3yIJfUya={%R=}jiflby+} zldEuCP-4FjAcLLVT_M8@-spnoo%gQy{+>DW@K?{g!(wmCdgp$By>}J2j|7ka5z1kZ6W7B2k5%(0d5!x zAOR$R1dsp{Kmter2_OL^fCP}hjY)v?ydC=)e}9E`;Z^^)eGy>q`%lJ<#Uk7L4dE7$ z01`j~NB{{S0VIF~kN^@u0!RP}+++mCcl3OJ)?e|r{SW$weCA94BmO7+JN-}lclp{s z>fh%-;D5#c5Aok1{_Dg)P5eI-|7GI;miW&T{};r6hWI}w{*zEe@Wx-f9hjluxp%;t z%-gmm^|q`@yiIF_w_y$U)~#XQnl-Vv3Wh0f#Tw}?Ta$ZB)@0tIHL15?P2$a4BfL3l zxHoGJ^Jc7xy=gG9@&aq5H?b!7&P|$lQ}CTgJ>Qzd^Q;lx$Qteqtzq84n%L`u;mRY{ zz{fs>JGS)Pt?>B|LvOP;voM)jUm~mH(e{C@#b9oBZN9&}GT4~D28Wl7I@KJy@lP}C zAre3WNB{{S0VIF~kN^@u0!RP}Ac3n)V0?QoitdQ+k6tCw&q?$ciT>4(UhGFt^rLU| zqdyIz_q4q*sF_ZA2Gw=5T*oxwaY@Tur8LudQ>D6+4HMx+@r21-X`0lPph=u&RHsT( zBg+Kp^Kuo}NjTP3-56afDtHBzcB{CdItbDwDj_Rw+))u+ywXIP6jdIUIDUa2)o#R4)!mm&(MGPyS#1>0b_tH;2WKhQ;Yo z@z|*NomV{UU4x?3WZG3!&NInMl|V6OuI$;sfV$8Xt$CiNoU=TO+p9bi5;&zUXJ2b= z<{p_ir7mY^o6?~(WbBl>oW*TQw{4Rtr_|+4Z&lhNzEkRQHMA;i63;1hxnf$CHn9Hq zwXQ!t`OIbF|I>r$+k@z}Vf5TE`u;F_a}>Qaik=)r509c(yyzJ(den>l;df3G;W{J( zts9q;{S7d)w9<~yxr6|RU4vHpQeO&r&ahPT%#`6=W)oYJ87k5oa$Q{8EvAZQ%<$TRlue{8fAah&Ye{2zR-OaA|vU%W9@JTX=LWn4TuE?$@vUz-$92gTo~i^r#nKg<;0 znkk-}E#8{DqB{k$>GB54bEYdeVUt9`b;YU-t{q{hE_q(6CdqYWTJy#n*>Fm_1l&9| z6!ajz$gHBWNd;v|s*Gsj2Cn#4rCGA>l)6N!R;3xT=9IcbvsR^Pvg(w&M7&m|fUI1k z)FCRiDox0;Q|b~qTb0IS$tiV-uB}Q_WYH;giNLK&K3Q-|U7~cWl1Jv9QkO{Hsx%^V zPN_?@Z&ezSS*O$`BeW_F$c$6!k~LbD`gs3;@hG;H6W;$*E~@5yR&C|9PKNHx>@xCh zRazqhr_^P1-m0`p`cA3K2)e=Zb?*P4_oK)C=)Y6Z%Tv))Q_(l4 zI*$n6(*zU#F%r082!uN@1<9KxO{fv}F1Ui(Qk~11!px>J4NG&WvhaY^3g#zabO}F% zSxITfdK?CI5E)^fRMom{bhs@u7^;E}oug(|Wn=f8kxT3j$8zzWjN00y#KmthMrX@gj+~~Z^9ewNQe2E;m zSn2Y2{jExiWcwne4kLqBr3JF(l)8)_T9xK;{{P~qnXQ~~{{NDvtF4@H{{NDvy{(*Z x{{ND<&ssU*`#+bw4cE#E-~XW*JXkhW15ce*`~d?1Sidf- zJuBnMIAoVwTd?}e_erhRYwk2Z(`IfppX$U$f7M>~4sJ7jb7yPcxVJgj+97Ox5GOUp z`msoBT^5UeTr-DDy4jLX2iwOlX$+TivL!dd_2k%`OpjLWgB6XbCHBv3zu4YM)>k*= z%D0Io*Qu+|f0xM}bY8}napbwb7VP~$tY01bFUoj34%y|_7O{SFTj_x~;ab zT*A~bV!ymLh{Cne;X)l=y3JpdWtp77Pdbj@;jLDXawirR4;;V6JwNRvY0z;*98Ash zlj>O}tJAjJz;d~tdUBgYyTyec37)jmz>WMQOw;L^ep4;W)bUa;w8Mm3q2+TYbsR1% z5%VYttw0D@B=+=7KPb&IwfsalwiR(Jid^pap5Vgs6P|>fwr#~>oVcB-)qO8_NvU+M zbfvUXx~2XFLR%sM(`dI_E!SkKb4*=zo~fzMHmT|?x&JGb%at3IJC!9W9HmfQeW|NP z*<@r)M&{9Iv`lfYhlhtRWlV3yZ5q}L0SG_<0uX=z1Rwwb2tWV=5P-m(1Sm0>`uVXe zL)VHuIZlVaRL!X{q=5hgAOHafKmY;|fB*y_009U8}009U<00Izz00bZa0SG`~IRq#%4R!0`H5nSy3%vkwH0SG_<0uX=z z1Rwwb2tWV=5Lh4q`TPIy`2^S1Hc?I83Q$<1N6!H&Yzwer2tWV=5P$##AOHafKmY;| zfWUGJP*O3}qnAI)DE|8Y>^ZW_sg0^2009U<00Izz00bZa0SG_<0>uc(`6sH?tJRy; zyH&qh%qC#1^AM;QlanVEmJRi6sAWSs8B$U=)YNlK-uc0(Ug)fi)R<|`p?PQ_2LvDh z0SG_<0uX=z1Rwwb2teRe36vj@M&of~tMQdK-qFUXs(n7i)@M3vQD?Kvf?U^Unc=vu i%`$s&oz65f@q7@F1p*L&00bZa0SG_<0ucBQ1pWYh(>;0s literal 0 HcmV?d00001 diff --git a/canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db-wal b/canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db b/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..eab9509dade49f73b8979e557e67c27de13dd9d4 GIT binary patch literal 45056 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 DNHAPB literal 0 HcmV?d00001 diff --git a/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db-wal b/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db b/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..e2345710ab44adcb7001c4d3620c393fdfe0ba6e GIT binary patch literal 36864 zcmeI*&u-jA90%|j|Jig`AX-#}DkKy^yefxD)_=wx-vUBCAzlG&&sbVPn<|NDZ{)^9 zl*3**@Bq1igv14jN1$3E@c@W(_|2|Ui7H!7Tb$h}-;rh~amKUr``C_>*GawV{>$T#5{Ul-(LUw0Ue;XsQ%g2K9ARio&SsY z?eG3uRDbF!HNBNhjDOHYdqS zEzWidrHpCQT2y6Hi!6<$sI^H%Tc)+v6PdS4vzyQVW_bG8pY3FoY^zCGiit8>WU47> z5NSl(w55v6ERmC#&305FYnj<`%PbXHX-ZMnc`k~oOl6kmRgqTIO*c|DEsc?si4vLC zu_)V0iwWi*pk<<%%d&lF(es zN@NMmjQY|bt(0PtmsO*hT$iPCkD{$ilIWrqBtyX(8n?=6UNTmxY#U8e$=Gn8jmMvj z5669;^BCJvAo6vr^TxDv^ebhrfx-yYC_44Bq?AQoE4nr!&*e&qxXYPH$A2`sJ$iq1 zcjP!nbh`=y+_!(!+rooqUxmZvCdLQn+qw;FYtGKT`}XXGWo=W#6GH$35P$##AOHaf zKmY;|fB*y_@IMJ~7B1E&?8=1iUEUh>Mbqbt*Qzf13ARB10uX=z1Rwwb2tWV=5P$## zAn-Z@oN?d2_4)?=>%ZoI|7j+#6AAW(00bZa0SG_<0uX=z1Rwwb2tZ(!0B4bJKYIAC z?Xczr0PggOnN^WsI|LvA0SG_<0uX=z1Rwwb2tWV=s|4uv|G?gU=snwkdux3Ko}b?b zXw_t~9Rd)500bZa0SG_<0uX=z1Rwx`R}!Gt|A+S0%TK9#;f;W^t+m~okaMS7roK{~ z*a-p`?#Ci0x-Kl(QH94-8;`{N&U{|CxNlwRkn5wSx60uX=z1Rwwb2tWV=5P$##`VpY~ql3X4 zgSYX~i++4JYt(SD!V-Em=X1#EF&^D}mVf%k;1Y9CZ8{FUjd?-<0uX=z1TImHm4B<8i8O zO31UPTYXilqKzuN9xWi^tv*p?hK%kwWR+VP@1ESoKjy$H|C)NQlw|CTLsq$!Soo_>Pqdj^&j0nmM!)5>yxm2nuMakMjJxY=8w0{t*5ahb zSU(nNt;=H3k89?zXD93VWNq`{p2o1JoAq1`SCRwAWO~$cb{90JdhDFpe7-qIR$8la z@=c=2Id%2Hv)z`piag7VS7RfJkPdMZYQC`UEdXa$#yL6#-g2AB8>ts zCQKb8cFN0ZQMf!hT&TlKxA~K@Y$V}$j&McFQ_G3D>v|4fN~4g6L14#;2pmg9hmQ1} z>VJ%6dvO$rfP0oDxGM+cVeF^8Z8=VuCSKqq?L$ZUMYU`s**Ohj5%Q=V1>8-1nVlsp z-m&Z?h~2myAF)k8D9uLly&&$igAR8s$CXY=#D(vBT#oLCZOaZr-#&DkzLmSAR619> zQd%h8Qhx%W%#na;*tTVLOr|Qw)K%q~nyOrrs;Vvbf2DG{a-(v)GDnFc6{@RW>Z(vS zX&IB2x!)S~DeiS|Z|{YS!%K0ShM6G%0SG_<0uX=z1Rwwb2tWV=5I7+LN(`nhKbB?a zTCpd`>F`R`2_=SMAOHafKmY;|fB*y_009U<00I!02v9-|b>Gn?8LZ$F0CZMvikRr2 z0Rad=00Izz00bZa0SG_<0uY!F0ZL3mef98~42@BBD?nj|j=msM*!-9n0uX=z1Rwwb z2tWV=5P$##ATX~2^7{Yq`2^Qhf>bN^|Ns5x0L?2l@`3;aAOHafKmY;|fB*y_009UT zBtS{UP>){zD5LoM|Fh@F7Q}&RApijgKmY;|fB*y_009U<00MIRe{{pCnZ=CMQoSENkjnQ_Grk(xjwrsHNwaeDovLHMJ5~VTEc_t;$o__F-ZOKmY;| zfB*y_009U<00Izzz-bjI-zSa6qsB(#3vIlmjnkS&f!kd-rdcVu&Zb!fxvq;TRyeLt gb)KY7r&^h~Ksihe0SG_<0uX=z1Rwwb2>e@t-<=XbHvj+t literal 0 HcmV?d00001 diff --git a/canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db-wal b/canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db b/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..506d9a841de7a22291543262e22b17a8f170d18d GIT binary patch literal 45056 zcmeI5U5F(|6~}MgkM6m*=llC>hZWOJ*jQ^fuo!#1%?W8x!%#ORK zq2`>K+xOpHzuSFIS9Q-lzy8&CiQk*=onJ24-CwW9JV1KAFMsL2@qe!WHuf(-dwREl*|X&!_TSs>?E_$K+soyE z^?&^FUQxV8iXV{TOuu-jU+iVy-%*>4UcPm3{#?DOX_724vZhH{HZ&2OQ`O{(a#1z0 z(Ne^5(i_?sae92`iK@Kwe7LaT<=8FjWayMQGg8U4rm0pHO`5uYdCF6BWj*hHJ5p-((?GWp6}24EB?0s zLH~%)eCdD0|Ac?L|7rgYU;D@Xd;I(SulWBa{u{)9o%pX1|4+m}L;T+m|2g9Sg7{An z|Hs6C9IoQ8|Ha#3Eatg)$ePUCwkGwqtVz60YlOF94focqVcwcGv9}6_DR0FZ=`CB6 zdrQ`2-l8?Bw_r`;&08b9IcvB#YYp>etcks8FtPFiYos@^Cili*MCMIdlX|{2iRW1( zypc8B8(PD>fiw;#vQ z2K{S0IZn>qsd|?k!M7m+B!C2v01`j~NB{{S0VIF~kN^@u0<8o{kL=hdha?RB4{dL4 zZmh4Zt}HJtF3iu(&P)fB@s#hu48gw443LBJP(&*&d;tj{0VIF~kN^@u0!RP}AOR$R z1dzc0Cjrv)cI>|%u0gvv)W70Hz~1+doc~vvz26XS0SO=hB!C2v01`j~NB{{S0VIF~ zkiZQ_0Pg<}?bi=&*?yD0{a1i%wvY?o19Z*y05^;TkN^@u0!RP}AOR$R1dsp{KmthM z`XoSllO6jVe}92?#oPWD9}3v}{*xW|J+gbhHQWLcKmter2_OL^fCP{L5Ibj)gO~cj@A|>>{ov_-@RNS9AM7S>reJdD;-tZ3+qqlL-E{7TbJv}_ z=G;~1t~htuxl7Jnbnb$4=bby}+*#+&ICt8)fpaI$b%k{%Q|_<6b3NydoI7;xz`1?r zl8Y|sg*&$N+|BU)4?}OWH?uIAT3;foI;r@FdP?o|K>fb%m*f(!aL;FK={OCr}tY^dv~dv8ZU7uoU(S zDi_PTPN_`tQd^}sEyGT;7U8f<736TxrNVL8?^3-uBwZ>KPd@oS^{1a16mJfT9}SCF zM#Uqe;ui z+RQyNaY|i|&^DzbXUW(pbvcULly2E3Q%0AbMSQ2!T<@kDs5o> z@%^qpKKaZ$#Q!G;(YFWDYs2W-Vf6iB^yVmfaTGm1iXI$AFL}{ZUi7dR{oU`JCc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG3nmDiPK5H5I9L*?zXmQ}bSO2I@b70qi%22eF#!V0RSTuTNeWRnDNjJ5gbMU&UfTU?Xp?EF42u<{ zgmAHjqVz(*jzipn{epN!wUiZYObjWI3BzHng*304JO%|(CXgEqPpM`$B|+SiMkIM! zr{R3gWyMO6NgI_x*3%7DF{Hi}@|U z(_Nx8=Kt7eDdIResQEwmT$lX+GrxFas(5Uw`181Ucw9U`DZVx-o(zh=O&5<&7r&n= zzBN-kJ6pUpcU4ykWYgshmgh`YaKI*sg7b=18Js)9P+ju8R85lW%CzQJoulm3*?`l)6OeRwa+jJEbm>yj5vL z=A2TOXy2+dB(qMbOGao_8ju;M)Fo@QD)sUD|I$%xD<{1Er(9Icg{<1jX`Kw+k=bSB z-Kw-k22QEV=)6^FmGqrbml1rc(h4C?smmz8RcSf6C#Irr zPIVp;yr&5!d@~ZbZU}@sFa^n*CQYaj_A0o7*;1X$n!?PcG7U>}sj~2p)C%S&VRQ+9 zgjq>x$9fzFbr2b0o>bMkY;?FSGZ?CZ4&^+C(Pf+osFt= zv;Xt|)1QBT$Nx{v6|c@0-V_%ulie+7RmM{N*zW9tx5}I%PDmkJ+vy#ltM(_;4&?m*4SSJ>9Y+F4p!Z++Xkmo_ literal 0 HcmV?d00001 diff --git a/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db-wal b/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db b/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db-wal b/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db b/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 ZD{;Pp(|D0_uEZ-JFEq|w_B1!n{r^v!ly(3B literal 0 HcmV?d00001 diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..9dfb95da1bf19f1207fb8d09632fd6fad00711a3 GIT binary patch literal 36864 zcmeI*%WvaE90zcZpRvPZk$4Z;$5C_g2mRFf+(^^8C-DIUSQTrWf`kPeF&zX-OYMsQt@4x$; zc*Yguq@Bje!+FAOVi+HOaBEXX-OQ7KpZ6CK&85l-*7G0e zeZ^D#VA54sSX;&UTWYqCs{Y=jtFW-PV)OT3F$RNjyg&Y#j2AZNOP$!+Tu;{1!)vy6 zbAR{1dFkfP?!IAf?KE;=+nbGO2OD-HHk*Nayd>|Ie1B)}-b*^iOR{ds?P^QjGpB9U z>&f9&)7DEIJhJ!E-oD&g-&QN%GfcHkOCSFmw%S0CtNzQRFLHaW*#3V!e|_$MLiMjF zU4@0URh+*&neA;Abzfv#vHAP28D;r9DZe1)k7oIqSuS$!56n%R!#AyyWA$2H6*5n< zkVc}3DHCxgvYH=|Z1gHpYJwyUP@@q~KwaP{yi^ zvMefS#aT+jIL$=WiiC&t)J%U8tIO0@B2ANu(Yk4bN>?{DuVhMP8y0b$Md~;0v`lLz zF}q9&Z&F@`jAn7zQpT&C7MaLtmWeuHA?Gm)Il+0;z`_#1}jJ?1^-UG-k@#$M#*-pk(W`i~*B)fRArCE^>xVIo(_rY z>5#du4yo(tz+790*tJxMLf6!fBA4jE)%Fj9CxhpL7lYNFE?(VS0>nDqp2R*IIcFpH zbTn7e1uT4Y^y$Y(_iYPUDN;fJ0uX=z1Rwwb2tWV=5P$##AaJe%#Bgl=_M@-5WiI#P zI5~c&>RhLfl|cXk5P$##AOHafKmY;|fB*z8g#a-~pg(QYQ~&z=JaPMUt&!9F04?nmV8sxC00bZa z0SG_<0uX=z1Rwx`izz_V?I-oEmw!@y`Jeyq?jw6KwJ|FQKmY;|fB*y_009U<00Izz zz;Xms{fU16>HhQm>;0_%YX6=7yZySq-Cxd&!CI9-5S(2F3A(~ML9hF**A3ln=yXH7 z8(Q7a?1toQNQ_~iOV8QrJ0CsMw_U>_){@H45Wf{IV;Sc(&I(m7NE8Jv3RN?xs@t^S znP^nGAnYU%fB*y_009U<00Izz00bZa0SL@1;J;yvMsJUHN57HLH)M2&jQ%i3KbWI0 z&Cw_3Xx?lOxBM`WO(LUI6&J44MAh|;>X3>mYiZaNys8q;rO1XeT^$(qqBtpvOjY5n z<2F~7eR)d@E>&gUNW`hAc)=n$^n@zen`Tu=WtOPw##vp{T&5vqm53slSDXtrbaN?- zs%a7$F{vsS7m`sSROR9%PMWr^qfl}-bY`iPJhW%2f;_Zlsc<|rXQ^I1B(qc|4&M4- z{poM5@~&NeWtYD?W`my{qc)&q+%8jfB*y_009WhBk&&r;B*ZD literal 0 HcmV?d00001 diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db-wal b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..41d7d5dd4a90362aa2ccc4329aab9f5391482f14 GIT binary patch literal 36864 zcmeI*&u-H&90zc_NjkL>ViO=VA)yM^Y8M+jyJY+?Qk^AHg?|(<>7}x9FAo2`XG@< zOy8%hrR#$vN?UzBi3UllKB?u7pG|9NyMyG?a>k^b7(btu(|6N@gG&qQTD;?oAJz1a z;l9j_kvtk5u^N4nrhfnXI!(}hir;yZIbRh!{wL#C=l%_fZ+TEwTB_ps>-lI;C|6Nt zs@V7&d+d~-R;*KH`Y)_)&c`Q=eb+QP>128o4sCTt$+o<}NgXG0OkqcXDTFJ`UN;HN zt{r%O+Uo{k>aq2|&x2>5wQS24PT*P&RTZIc3f~UQ&=sC(bv-`{)5vkHm}Of%DT6Rc z9Mcw(iUm@bQAEX@u9Kv3Y+KS5R4lT6>G`2$O5f>HYjJG$q-U8TjBH!>Lf4H1YxG&C z^QtrKEX)NB%`edAMJBDyiyQ%MUgU71`ENEKHlH@PoAY-YH7h5;wb?nH>ld$#i&u5^ zCw~>v`T6-5imOu^d>8~E009U<00Izz z00bZa0SG|gP6*KTe_d@q^hAw@*KT!N0zTUZ=uXID5D1Rwwb2tWV=5P$##AOL~t z2+;L^uC`u2t3a1HFSK`S1$v4uKmY;|fB*y_009U<00Izz00dS`VDkKt)#@^OTS%Z? zXf=iQf8^@Xa~BV(DAaa2h3Nhd^%Nf@2tWV=5P$##AOHafKmY;|fB*y*EI{i&b=-Eb gVAPdp&cJHRO3V{F2>}Q|00Izz00bZafyD{@0f%ni(f|Me literal 0 HcmV?d00001 diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db-wal b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..694c0cfaf5aa37cc5fb252ff3b54d74158dd6943 GIT binary patch literal 36864 zcmeI*%WvaE90zcZpNYd$;&EVwg4jeT%M?Gx_T)rCh=&Dtj*LCFsMxlvwqnJJl{j$X zFIW!c$ccXe#DNPEN3KwTIB@2$yvj_I))Lz6IxD$}+V4oynO2jZJs&^RIF5hcfA=}@ zjK_>wIc?{^F4Np1hVkJCH@9@Fi#coX^WFl5yt!p)GDp?Tc~wnkWxjbji@#)GJ^!KJ zS3Fe@=T$YGm35rIrDprEs_)IKYC0=xHvj%B#&DQV4kka7NoRAu)PbF?jd&wHx@ucD z4)zY6mu~Ft9T@iZuB?W(y(No!xM|B`OAg(Wkx4W1{oVb$k91B(vS#Ft*sksx)3(Zu z_~?ph>k)?!?SHg?P;GDQsD1_nUag9XPs2jc zI88&!B$JfKbwRTv4tXJqEMtLT>vP0m|N3qzuFp;v`t-6n`IFd9q&Q8=G-UzhNyRA3 z1gAoTlEyI;Y0X$EqHJNLJH%=tMNyhYtc+;Eql&U9j_8!jn8qSYf+`LY5r&H*T{DT< zM4GaisaFXaGG03{fotmDrY_M9SKHtBpYWgcU+~v^x>&oV1c-IIJ&AqRbIyA1 zX>X~Z9SlA`{`BMHdzKCsijWY100bZa0SG_<0uX=z1Rwwb2%M_`F&tZe{Mc93GFN+X zoSb}8b*|IL!XN+v2tWV=5P$##AOHafKmY=lLVy^=*LNHB)LZ|4&vVt)fR$YZAnS5d z#HHBsm?Q)s009U<00Izz00bZa0SH_s0b;nm{_5e=s;W2suDS*=yCGl&2xRsJnH4M< zi-Z6KAOHafKmY;|fB*y_009VGYytK8zpWoX^o*V+G4)pgR#wRAbAVR123RlzAOHaf zKmY;|fB*y_009U<;9?38_4rBs=;fbOUH$$4&2wZgrZ#2;0SG_<0uX=z1Rwwb2tWV= z5Lk_X%0Dp}JT-W3@ZumFygGPi@a~`->{Wpy9`0erD_%|~ChKz5M@gL^+2Xp+T zIsU{PFB|Q_#*chnS5p?ol12ebC<~%cX9yOwlvR-m&I4Wtqdtpy7KbXeZWWhmR4Uad z9;GxZ!z@$7%Pe4{o~)}Z$%=%Qm6%e-lZ+NYq!Rrmg_xGpB#^8awYt(Ua@9)$l^R%3 z&N4|^!X+)@Xi5{F@+1sdT#I_-w8@k_vfE@q9$9TN9FNR4*^5V{O=e>Mt^ehp{?^Lx z*!fp>{;QMUcJc??q8H;;#BZ`Zx7kA%WqF?bOZrWuHhb~HNdJ&t6RFLfzA)0?#A_n8 sy6(0hhxO!`xJ{%sN6f-?`V0BT&pZG4#W+$i3kW~}0uX=z1eOu_52uQ8oB#j- literal 0 HcmV?d00001 diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db-wal b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..1ad7e4f9c3486a1947b6ad59aa1aab9d86032195 GIT binary patch literal 36864 zcmeI*!A{#S7zc2>Ns3x&8fcp)G-;|fTCsy6P2DuTb)2WY!j{B|lx+-DD%fp2$PRf8 zZaYlcW$!Rl?LFA%HsvtE6bdPU{w;mD(Ae?!ONfv|onJq{@fEhpre#)V-(ICU=8PSF zJW6z}OJ!Q&>;DA;b(AnoW>E~XpsKKv9iGDazhcKa|AszSRw&Xes4A?KF@J-yeL(R( z3#tk$CCk6|nys(zy!x>Do4bYOyu=+_$yR5}9owd{KN_ZM+wX?a{--4LN0EBFr=kO9 z?o!n-%|r!pV_>QvQH|=PRd@Vi+RE5Y)P>twlkMdA<#ao9JKo#7a6{7ww>sk|74x&d z8>QALIv5?W3hl|zzyAZ14$wo2KUoxcyh?WdPx9B-{xyp4Sx{A2DP#WCEZbwMbre}j zmVa%Bo$!;A4XQ~08|$0%@iAjR41+E@sTue~M_*CW4YzN{9qBqEkkS#-Q?~G&uqUMB zcKcyJ@VZgJR{y;Yo_;aX4KI%RvfWX_v1M0C+i45mZ~G!tQQ-QXXM3^D(v7~1WykON zqAk5p$f!$uh$2sfJttPGA2^Y#XtUUNZ95K?P_Clghiw{C*HNP5^!%VLUDpd8RvWNZ z>rHFex-l1YG`~QT=Q(Iip63i`@;s*#9shd$as7FHvp)Z@(Xw;`+?ZX{xq1G|I)7Ew zfAW{1oSmJ0rMSG5VUQRD1Rwwb2tWV=5P$##AOHafKmY>Q65z}-^;|@a!l=yVC$81y z+>QCDv{!OkE60SG_<0uX=z z1Rwwb2tWV=_de z5up43Tra(RT7n^Qo@?#a5{wi>fB*y_009U<00Izz00bZa0SMeJfywhn?$(eo+FSz7 zT(c>({v+3qo;!a?MXtV!*@*MWQ+$f)9KAvS0uX=z1Rwwb2tWV=5P$##mRNx1f2#P{ e#WJ1%7G_(P@vtLj2tWV=5P$##AOL}-7WfM$(BeM; literal 0 HcmV?d00001 diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db-wal b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db b/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..df314ec0ae38b8802b5e81352168d6acb8c78027 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db-wal b/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db b/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5bce509377bb233965486c8e1a0206b26cfa9e8d GIT binary patch literal 45056 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 literal 0 HcmV?d00001 diff --git a/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db-wal b/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db b/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..a58eb732f879a9c394496d695425ce919aa48069 GIT binary patch literal 36864 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 T1Rwwb2tWV=5P$##E~CJI&ssy+ literal 0 HcmV?d00001 diff --git a/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db-wal b/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db b/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..5e5c8ec73119c6b10346a6d4da5148c2bd629728 GIT binary patch literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&&?vDyG=+jAQQtVu2za0>>8-(Nfe_AXe}Kya9{y zCa_||o-I^JEO-NMWhO~u77YX`mP7iFbTU(EbnNpvbt@&zbY6t!J$A9Ub zQ$ij;crwtvZpNs?>z@Vs$&&%mWR{BVI8;|y8y}v+^8aIEU4KKrS1KxY$Dz8y+9K9( zs%np`xHk^f71kE4{_0KAX!KThRzK3!!fHO!iLJq!x90C%W#*%utzGNJqs^@y!ZtRO zw87XQ>1T~DOZtPPVGn1@eCGYl?ZanU!x>vR8U6|cvky29Eb)^CrieXe>PMYaX2 zzj~YWdS7Vo745w@dM}J#k+uIdH?{Wen4{m-tD!HYaD9izQ77Rd79NkXPQXPb`)=Tg zR0aWI`W&%aUEhqO_0j1I9+M z9Y=822_iR1q}O)U8Er~+-zfbplbgvj2vVNOcF2Vjc6jKg5toi1h%8B6S9Ydm`d;ml zO65f5TxF$lMgI$gwnPH9<+_d|ZKgZlHg(sw4c&P*)tykszg9b2yHvYYTcW~I3N`f~ zb=@eNjI7DXJ{XPWl=r&7zyD0d^j6-kVapJJ00bZa0SG_<0uX=z1Rwwb2+T=<5{v1N zAFC=%quh(*bofctoC-r42tWV=5P$##AOHafKmY;|fB*z00+diofA8pw3Rdz30JJ-~(`009U<00Izz00bZa z0SG_<0?R2tNzKxaUjCq>{O|wg&yihDZBzvT2tWV=5P$##AOHafKmY;|C`Ul8KT)rr zuV1cTuXpO@>;kqr4}qFBxp-1z`OwUVMn0sIAtg;qFFnW9qaRK6Qttg9Gp!Uf4=vMhc0-ED2PKGW74+B#CT&!^a?HOorLO*YH5jix!v m3dc=jmeq@!RL-(8@q7@F1p*L&00bZa0SG_<0ucBQ1bzYK9y@^m literal 0 HcmV?d00001 diff --git a/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db-wal b/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db b/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..e7b8097d7af9046aa57a4f00044c129ce02c19ff GIT binary patch literal 36864 zcmeI*$!^m?7zgkfZ&4gpu^p&T5KV+492{?nZvk;Y5f6dKi->5Os)?vL(HGziID|KW z6Bq7Wp+e%o8?cp`#EmZvq*5$L>3^iJGnK4w{QaD`l@ohDet1Jm-<39cMG~EFu zNk8v8j%dM?q{W7oi zJddYo@GiHuV)d6FkZQHp7&X4oMs78q>BMTkX*a#YO-0@v?Tyv@yMw(EQMLzBTve2Q z#FA=PiC90XYLhM9Y|CeZ;mKR7lP#TW%bj35J~5{vhfVu%LsG;R<8#B8!%@85+~JcC ziNxoW#rwaj@B?&_$JaFSJYFmI`k&M<&i$8pyi0?3xwTcSUrVb!;Jt`E+ltj+enfh` z@3i-p_C86y*HSOf+W(uIs)vu|>3en4W}P_nt;C2;zhgM<*fe~fMMh-XEDRDBCn0~& zi*v-dyfp}et?B7PoL;((A5_UQwd2sVV%s(>Cx{Hk_Z%bW_@Uu>opuzvLBu>ZH`8w_ zXPJVw({@7FGF&g>`(%ZY5jY)Ycvk2z+l_3~wB}~|MWrm0-*N4h9kz|cYcsx2JPC7x z#ON?HcFe>L-N>7p=?|q@rZ8qM3%OHbMlHjMR$}lyWGyRj>@cwBX8Kv~l2YkH z=~`){bVvLPgtkTkn%ZjdSEQzh&edemIhrIoPotu<`SI8FtNJbduD(WvqZBHOKkA}U zWj0c0Bkg!J-KMyoM@L7mc+79b?HXo=00bZa0SG_<0uX=z1Rwwb2tZ&-0+gtV`1rBR zLzarYI8G;@R4u76q=5hgAOHafKmY;|fB*y_009Umfjirixn+Z}6b9M8vI_MKwCTGp4BNF)sul009U< z00Izz00bZa0SG`~Z3Xz}|C8qv+!Pg3N!$uhSfj_!0V-?{Ffjxm009U<00Izz00bZa z0SG`~Jq0MyRq^QM&pe9%{(try+4a;$RS_=<4j^iLPWrIU7pZkj{pb)KszboFX3mC{el4`#>U;HXwEmvf&s6QpDYm9AvQlzQS!5ODn!Lyg h$2Dn@)r)JmnzEb&j4Tj<00bZa0SG_<0uWdmfxkKZK~Mky literal 0 HcmV?d00001 diff --git a/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db-wal b/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db b/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..163a9717273142021e6b461ffd3a3db07bc8f5d9 GIT binary patch literal 36864 zcmeI*&yLbS9Ki9Jwm>NUjsFfBgULb+rbw4Rg&TS@#D}o7-ALSBHVbj%$$bzH_$J=G z_z=4B=0o5Nbm6iXNN9ldJIRmfW+%VSe5N$ZbZLKl{~|Nuj+mCqI{tB$>Rbx(@xxh9 z*SZ+fir0S&bi=cr&}1nU?Ko7GSc#`6vHUA0*5l9XV>lLX zR@m)@`She^ectk`s>I4Rjz1lb_FUCEk}O*`{_Jbf>HLwM zud^ zzU%tVe&|m!sXo9xX9goMKRV*%>>l%AT009ILKmY** z5I_I{1Q0*~fi($8k(#VeWK}-X*zDrCoLs3|)4)iB00IagfB*srAbz815_ z5t0f41Q0*~0R#|0009ILKmY**)b)Q$-+t(^rjW))ufWU8`v5U52q1s}0tg_000Iag zfB*srAh1>eDbl9C_3}@hRc`jC{ZhJarP9(pp&)<&0tg_000IagfB*srAb`Lc1=RB= zGMQVM2l^fWlxr=JHuds~mo{|OOiveEq$rsB(Q}r%_2Y(@f7Je$dMeMgo+Ji`00Iag zfB*srAb-m38%Ri8kaz@8g~S6O&g17c>@amGWy>0AUr(<4$FcMKB&im+jlX<;%jej6Hco%b z{NXgk4rlDelkL7KO|r%XZvQP1r`vsI$Q;V6d8VSYly9EW+Mlvv6aS*wSLP@W@=Qf( zsfzIniuNq!M|q~Av{bS9>$lm$!kt@>Z+_!pX)&MThMoShS`LRTTdZ$w3@)rZ+{o6S z_7lC8r4QE9Y?Il~s93b^ej4`{SM4NRN^fm# zVntgd%W8PpvY+c`*}&P#Hn%pJMLh{~{IA-yfzDC>k>@hESH<@KQT*n;{{rO?d8VSY zRK@sfd9*uJnp|e8Sp4<7Y?tryUt;&W-Jpn@dyGGB%| z@nq0VQW^VUB;zoS1HbD>QQBeW559wZe<=n_EuF@`=V|Gux-Eks?8rEvMxsuy-AF9_JmbzV!`sjI5>6Xr`(MvK4qfob#Zq!Oss+J|5@PTNH)#<6M6?tKGqNv|vu6y6zaDQ_5BX{3$ z_qXMKwcK}>Tjo*lA8j{9ksNdKOfz3atN;Wc009U<00Izz z00bZa0SG_<0!I|!%o&YOnDGcuKmY;|fB*y_009U<00Izzz_AI?=l{Z7digu$*?<4Podi+nsjiIM z9lG4B_I#;(Dv^E|N2#X2fG#781OW&@00Izz00bZa0SG_<0uX?}lmayW#CZOZDVIa_ zG6b5U$OuT&Dl$_~lNXr@hpzu9%+zzXx%4BS?WB#I(_BQV3|F)X0SG_<0uX=z1Rwwb z2tWV=5IEfeH2zboovB^KPcKfxe&7fiVeuTx%=zq$Mq3*9_UE5|Z=c{C)TcrF_+#Ya nz?|3Kc+Tr0qlVR)^BVJyS7%!s|2~QqApijgKmY;|sJg%(y^SFC literal 0 HcmV?d00001 diff --git a/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db-wal b/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db b/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..87c71353d2eec2bde9fc3e6b3ac0f029769de52e GIT binary patch literal 36864 zcmeI*yKf^!90%~7ecEfD5|4rtGU99@=O*lHc6KWQLOfQ`Q!=v;5#1#@B@rhoPNJaV zFF1-&Qt>ZJq4c>nsXP2K8ZP8+s)x3{S;=O&VOMgq8oI|@vUbb&cJ}VQrE|Px(r&pew(5Jvw5@VI zKD=VudW(aH_CDC#uea8>)!=)Esm8SQ`M+VS9rUQGKh0{F`)kFH|Ks)RYyab_emSeE z>8z~c`rX-TZ>v_!9Id5WG zMomT&#u}QlI-@+4Q7Q$?lTe-W`WkW2zp+z_8`H~$zPxNq{vh_hA|-Lof;gs0A~;QW zm{Y-$lm=1CrD$Z#f^u%8--*>m%0(T7ypAd7VM>!+%}&%2qoS#*l%-h`M#l?tY{|cl-5mnx+>n3t7-7wcwO&GXDzY5j<_x&gQXZ;ua)m|=UcP0U1o$OCypZ1*7o_o?e zQ_v1JK05mN!=w9_4hBU?2tWV=5P$##AOHafKmY;|fB*!}Re%_dt>1p^t7@6cy*W;f z->Ev+3gx`UZeG{XD=j49N7GG0PYlV?qD| z5P$##AOHafKmY;|fB*z8w19g5-`0;GdPc93nEI;#ODp8$IY3LB0S1Nu1Rwwb2tWV= z5P$##AOHafTucF?9zUrcz5Ii!%m4g;`yAPesf|@Z00Izz00bZa0SG_<0uX=z1ePP9 z@=pu~PYs?MTpRGgD}%QO?+nVp_Fy@a!Kg~W_fPMF_-$exzt{fOYrAgSb=t1ocCEH+ zwq0`CCC13tspo9<{D&UtJD%wpmd?kughKj_Y?6dCMkAi9bU`xDX`ZW`L85HZoN-yH zbU{m)7>0xZ1Rwwb2tWV=5P$##AOHaf{LcmYuN&j>TjSmFFJ$}`8Q&q}-^}rM=J<1S z{E<06pT&**x{B*Cl_4$DSY_i4%YaJ38yZwO6C!4;mVC6(-GNb0sszC)7Xht#9I0%> zWl6I-4QL`{7}l9!OeP~QtLt1;RZPRARym3DI-ydkoWyYyS4~-lLCunpTZ+8SVjj>? zRw|Z^IL#|H&8Dd{6}ir;G#fdKWJ(^{;R0EZN7f=4jz{Jq*^5VHk<7&YoBzo_{k2ux zwTmz8;%BG0;}qv}1gz#L#BZ}aFLH#=%ksQNNWYD=&^@j>d9~LJ(rY6va-`3j)8vSF sZKOrchPjdcCT<&Pkuzp)q(6~={JiszujZMDSwR2-5P$##Akd}2KU%_bAOHXW literal 0 HcmV?d00001 diff --git a/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db-wal b/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db b/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 Aga7~l literal 0 HcmV?d00001 diff --git a/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db-wal b/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db b/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbZ8*C#zylPuF z_ID4Qmu~Fr?i=>jj%)_DJ&{#A*tBIekpuU5B=1JPzq5DukuY@y^r?xo2`v)weUT|RLivV@xN)S4fLq0zf9{gx7V8O|Ht#!=l;i4{d!te zv$V2~^LMASy`@@Rms!?q{{Cx5S^iGSFG%^LS$<}g%bfdtV-x4_P3z=Xy(+@6kxAar ztZ6cu7Y z7fIxTR}q(##Z^j^mZh{{BBycM@|;I;9i{Eeb-F`H7m24V%p{9x6*sMlBm~WyB&2Fx zQpS?H$eP)a{_!^r&wIps(!1h4?~T34%e|Mq*YzJmDC;fY22m7-x$EnuaC^GRTu(Qt z>*^+P9o;b3)=lhMs)<6^)Zaxe(G6GIKM0-(o(*0I)_b~GyM+XZb-F!?eb#f%dhTg& zp`c3`e022b$4B=pOIRpELI45~fB*y_009U<00Izz00ba#t^&kxZ2j@0uc~FP_To4> z{-o+$r;mj}00Izz00bZa0SG_<0uX=z1TKXDF-V~AHtMN={r#Tjs;dDjy9z+o<)(;B zvE?yI2tWV=5P$##AOHafKmY;|xJ&}Xa0C75;nS*`J>PTn{QxVv4S<|HAaj}cF;@sc z00Izz00bZa0SG_<0uX?}xd^Dw|84#Hp=b2ch^Ze1SXm*b?*Urb8eqW?fB*y_009U< z00Izz00bZafr}|X)axhptCxRLb@liEckhwCnA(^X1Rwwb2tWV=5P$##AOHafKwvcj zD*r^k|5X3E{)_#r|7!o8{=5CUzujNW%3!HVAPCN`f&^V+ouJqK)a$x#*LAwC-F2<5 zYj$07)+NR;(5dHa^~{Io65lo*qqm~FKuE7Dl1M}ir&49~p-EgZDq305B(3VG$hd41 zj-3Po5P$##AOHafKmY;|fB*y_0D(mX{5Ooz=ifUe@G_LAG#p0pL+ACB};+kiPh~q-k_0TP%N@Q^;RKDRt zjglFod9Ih(@>(_`E4XNe&ODithxR;KkcZYh8IFhMJlTtfWS-2#!CU{!KmDy$-m%NC z?DAKqyzP_^wnZ<-Z;_zO@;uKTIxAoFHG}wFq~_Yv{BNb?*G pv({<+FLAp_^BgfVBmIs1^2@`hr9;2 z9VYFvcNnVn9?Wjj9ws`4LQ0@tOFvv_?E3d{h>$~)Uq8RmHL^}7Wm@OoUZpyvgdBf7 zNmZ>%ZBpUu{{>=xk`hH`$mr!EtI|q7J*D-3#g0|}Ew!(#$;k4MRcWP)`D-%U2QuF0 zA*<3##qw{wCYzgkuRd)5re0||uW-jkx?}HnBU9H7hl6Zm_uW7oeoFh%Q1G`0TpSU7 zUsf$$PkEfQdOD9&-l~sVxuX}8R@!dLFWt@$1U;1TCyz4ct77~AIDd8Q-;nV=4_TE~s+fO0&-PT-D#|Ps z%fGQl&gfai234m2jrC3G=#-EjnkElAnI1<2OC3?Nt-y=Du50&M;`lLhd@E*w6FAJ` zu9Yo`2D@Ez7bk&Sfjxv|Q$J&u5|M*^CQEBvCBv#N{O03WXU3iQi|o z?29>0V6#wo33C(2bL}`Z6H{##nWo@QAeb+N&zvA}Sm0Vd>w8_R8-`K9O+gwx(&@bE z3_3UFf{qp!XwxE-)}}@FfHp0%JIVQPHXk>iH@BOM4;w8jCqT97F`eqOSH|pBUH!>l zg>rFm@m0qBQiVZc3=n_-1Rwwb2tWV=5P$##AOHafTuXowLsx4N4H;T(x;}BOE*EZ0 z$LFdRZjOc!fB*y_009U<00Izz00bZa0SL?ypoGf*|0m?pocEXcV|u&G56esyp9KL3 zKmY;|fB*y_009U<00IzLssJTzObsncC>=k=r<~5wD+C|_0SG_<0uX=z1Rwwb2tZ(k1?2iq9hY6K c;tpV7wPh8j9XUe)0uX=z1Rwwb2&}ZgU%UHq)$ literal 0 HcmV?d00001 diff --git a/canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db-wal b/canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db b/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f1e4ed2862b5b9d40fe0cc7c93512a35f5fa795f GIT binary patch literal 45056 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 literal 0 HcmV?d00001 diff --git a/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db-wal b/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db b/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb$ZOg4zni30{CV;85NK zPF%Qig$juSZ@^Y&k~F?_Nu?UQ;Xl%snMkAYd_O0yYCE2fAKuUkIY-82x1PK`O7)5o z^6bg;p{{i?#uZ)<77)qvA<<-(iryqtm0OwYp4`Si;=nrphW@NnRBTN`Rk@Wi=5MNO zPpfz|3037*N|t~1E@?FSi<^sI=wfa;|JMUs!zFJi++JYj)6MlQ>(1k~jZMN<){?Zr z*f0^Y(PN1iCJlSkGst>AU0dI~r#0&7XFXR3E9stNGBaNCwyzmX_t-kM@nT~$U0GUH z8{Z&?+NP<$|2?L5&{-8&UZ|EdT0# z((iw#{kOFL$>_f}`g!Jl=-AZSeqfHjs|%qoMAw%wA9zX1{Uj88;KY)Lk?=cS?1-)- z2-8QCt?KexJXjtdSoA@oxA>c~Y^1J?g%iYW9>yJq`(5F2Aw_cs+SD+yqYF?||54Y4vT4hj zw(Q;3xKDAfJ3BisRqS7in;NzZ0SG_<0uX=z1Rwwb2tWV=5P-lj2~c7&efhDf!ZeCK zIZj7cs*Wi!3!u{ZoL#3f+AUP+>E`h9Lj}2tWV=5P$##AOHafKmY>sDL{#B z=|?YrRzcMb07Yg=jdt5{!Xl@DZ9@P85P$##AOHafKmY;|fB*#MQb4UgQK_7%T&i5F z+|^KM$Rtd!hjv#f&L nG-p}ixH;2#k|v#LW#R(muxSWD00Izz00bZa0SG|g-wON%+k`?h literal 0 HcmV?d00001 diff --git a/canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db-wal b/canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db b/canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..ed238d4d3408b7e0323914f81fdc9c0a5eaa3a09 GIT binary patch literal 36864 zcmeI*%WvF790zcZpKC9VBJns-p+$68XwwO{$K%I|fDjK0?i?9=Y!T5URT5Egq7nyA z`~~F@j-2=xKpeOrapVdShy!O1V<^f#%dKYKp5SB-bqzwf{M zoOs3+U z>*oIMf%DSMo!x!I-rAAPz_vGK)ebgnS#8RJdpwhOGvD9YyZ21zcxKYg+!kBSJ#*St zz0MA=nzo*C@W|drd;87S`nKBmo?)tOTKf9mu+;&2T=icjeUZm&#m@iZ_3PLECshA> z(p6YkTgCOelhxi#ljl*Ls_la{5lU?Qh++VY%7aUG@Y)P1^3NS7&&SuAB%Q5MEr?Ngf3B25{U zP13ZYYFNwV)J%W+8;0jS<~`+I^0b1fYb*VG|$i4L(k{z33$@Lcd>u-ePT-pwUItkdI3?6Z+`HgZo# zb0uBC}Q|00Izz00bZa0SG_<0+&gE7;d1ydiad$zUNpy*R+qnkG=#1a`KIuC2Sd+ zga8B}009U<00Izz00bZa0SH`d0rmdBtsg)1tX?KD^;ZFw*2w8|fR?rg*f0bj009U< z00Izz00bZa0SG|gVhRxT_(}cf<)2hv{^$R@=g3}6ZLA6c5P$##AOHafKmY;|fB*y_ zup9wZf1=-iy8nFtdOz#G+JC42Zolqt_m{IX*s2l;g0s6IL04EO=yiYVbwjrsI^EFj zhE_K;yCFFn5@Q(X(sQe^tGd22qDhi7 zS~O`(RlVSpv#JQ&P!4@jL{ZI)l*U!9s{iIZqs@w-g3oW;{JjsGRRF4HV$`m{`Igm_)1 sS+0g@na2MRx63rk6*DcyJScpg+W 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 literal 0 HcmV?d00001 diff --git a/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db-wal b/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db b/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db-wal b/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db b/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..9056bc374c340a989002586c3594d88c6ac4731c GIT binary patch literal 36864 zcmeI*O-|cD6bJB`*bYjhs-U*2P^BtrNkkU|wkQ6`E@fTy3avk-w56aBL3iaKUHBU8 zx~SAm?@$!=9`sG(u&AIi0S80=BRwV%&t%?jjD^P7{`K=4Utz0kT4r_r?NzE{&e-9{ zqk*bbsZA?<{l7pM9}SoyGbs9bP*qyVr>C_3uh_B5zoqt-6^bkms!A(W%wMByA5gr{ zgR0U>#qw{wX6x%auRd)4=5A>@FLB4lU`uYfV^i1mN5gDw``s|v|1^k#Q4+u1i<1MU z?^4y$^+6n_t-czh_~mpveLLOTyKqBYi?-zWNlpJ8 z>?WBpN)AQ`tVW-tso(#;P80Ny;!hrB&R50u|4IJp*uO^cJrAl%D^<+Do@aYZwTd!J z#qw|LuoHe#u|bvTe`9@fK0apbho;d%C)2}VXsIJgwjrgAtjKpnB-2!ME$NBSv@MaQ zj^)}`;suePG~u?kap-&Z_*V#8Ti6>Q^$8KJF?uAHTta6 zdD9toZp;N8%`edAMJBDyi|heyUSxNo`ENEKH=j2*oAVDFEh{I$wb?P9>*ueG^H+8C zCw~>n+1c4wipxtC28l6100Izz00bZa0SG_<0uX=z1R!uN0nQ9vtwl5_wAyTa;#ytK z-I!0#Rn6TT4Iuyl2tWV=5P$##AOHafKmY;|xI}<6PXGVU*rQ9{U*wPZ?JhqoGF5yQ z1Rwwb2tWV=5P$##AOHafKwzN)oV7J|>ETm~TR#0yD-lJmzF8;_J`4g7fB*y_009U< z00Izz00ba#F9hiPzpidS^h{;LYqxq^0zSJB(7ljF5)gm@1Rwwb2tWV=5P$##AOL~t z2+;X|u5P`2T7e;PUg+Mf6&NXo009U<00Izz00bZa0SG_<0uZ=c0+Z*D+^r#Fw1ouP zg;rDO{*PQedhYxo6@~gPXCuxhPw^?IbMy)U2tWV=5P$##AOHafKmY;|SYiQM|Ec4$ ei)Gva46L>+H1(&-44t*wT*I^ZoXlPl=^G zq8yhKzc@UPyFnD?{r9eKNH2?e?C^OufvUN_p-5zgu=RxrH&|H=&tUP-8Cd2&m2<@s zw!bjp1}kICUlZ9rDD0hu2{%|7S^oA*%5+-H_vSy6`CvK!uLBz!YvEdQa9P)`?d|Lv zFTA_GyQk=z+YO)U`bJZ=({;V6Hkzq<)H3c`UfbTeb4%l>Wz@CYDmVEZW9nMH79Lzu zb=hM7f!z;w_xR@8mN@yYqKb2B^7>!b#Q;4l?5BkdIbI{1|3~@Dd;g=tzFe4agOxGn zZ!WUEA-uF9%gFM#Ur~zUS5kaNitp9p6SWvJ_q)a>#=+~_@wIxHRZ*7mD5n+YA&pp` z(=5+R8nkg%Mlt7p*eJTZo9x?Hx9jri@r^~^G}h;T5WS1U!?eotD4JA6n9ptN=<38`E?#u35?%QtdZn<|IDKr?0fa9FbW~ZCj&ZPU+>Z)c}HM*+a zRkg0Fc2#m(731$Xk2y~}SDc{|LfjP)Alk`z68*GhoYu^f+6uaM+bItZKmPFW%yL_E z9Do1_fB*=900@8p2!H?xfB*=900`WJ1c+kj^6{fBOjB38I8Kh9RNaFR(Pa<-0T2KI z5C8!X009sH0T2KI5EwZDq7X;^^?D+H`r8xB6srL%TLmCv`BTKm#|+&A0T2KI5C8!X z009sH0T2KI5CDPm5+LIB6Zz`llfqX2`~UQ{nDeHA_8nvJFw?s{ku2=!coip*}3*>CFXJ9YNCI{QeST}+2Phx52(Z7$S&c_uV;%c!Ph zR0&Dlw#gdS`X%R)XNN*`xJ`px=<7-y;Y8{PbIye3ZdRoYPgq{3-oy_W&zq7{*0h{P zLFCiSPXZbW)ndOAYP>OTJj+j56$hdLONB6T6lWO~$02RYRxG1LZBY8PXOfEGh|{S&_nD!~RGyzxiQPr&GmDo-B4pA<>NC@qMpB6NuSh+v phGmiFhs5k6^|@k}M*0)_;}@+zKF%u-y#fIc009sH0T39Hz(2KAcenrm literal 0 HcmV?d00001 diff --git a/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db-wal b/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db b/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..99aa25254e053ec2933d29e4d19df67ffaf25396 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db-wal b/canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..2f82a6ecae98150d066b3256fad33ce9568b6905 GIT binary patch literal 41723 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 literal 0 HcmV?d00001 diff --git a/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db b/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f1c317f3dbf7fb9542aa472f3077d1523ccc0cbd GIT binary patch literal 36864 zcmeI*-)_=S9Ki8&+5(~YH~zcO7)-`uNQ!iADcqq~hWHQ`3X!;tWe^vy+=F<5Z{nRd zK7=mb`2_04JO?_s*$hi)K=wV!k8?;)e(mp5*07egU%z~mIdMx&+gYEyy-as3g?RV& zsIPn7jA_T~zXjUyQD11XjEZIws!OdUn?4#Yt0tsn<xPtHzQM zKmY**5I_I{1Q0*~0R#|0U`YZ}WG2Ta@+zNctoGozoSdmzQemV)009ILKmY**5I_I{ z1Q0*~fti35($v2_x}##n|Ng5rnXMKB1Q0*~0R#|0009ILKmY**5Llvs6j@VWdiX%+ zl&igHUrsNHSz>jhLI42-5I_I{1Q0*~0R#|000Awa&i`Bb_CpURZ;X|mftP3Z0n+P2 zLjVB;5I_I{1Q0*~0R#|00D+|mNMW1$*2~{itp4}^^Lw@~tw0hXfB*srAb5J9a6E4`B2V=Qj|>n=s8Q>`cbaXs@dLe3VsDS*lt5&4*-q`q6_IbH8X%Svq) zx>>T3%cmj|}3l6bCL2#-gB8*wj^g2z#s@KnUH zmld8b+>lUuAPRRFMeanY6siGXmW5nZ7V%UD1($B@s8u_@>!E+itTm-O^@d`nb)?>@aPkRE>tH8vMX zt97$=w>8%~MW0}mx(ZOH|ESlAn)}bJ{b!Bl@WZh`?(V*Sw|i_FdlS(B2tWV=5P$## zAOHafKmY;|fB*!}C_srd7@yGN5zM%_G3djZO$WbK9rg*{g8&2|009U<00Izz00bZa z0SG|gECQ5JrvLSNQl0vb`Sf44&_QIX(%2tWV=5P$##AOHafKmY;|fB*!J5>UVYoBH-cck}|( z7~8r3p!&W00O=P<5P$##AOHafKmY;|fB*y_009V`n}GWLpXpmK@8~U#`2qk+OWnIw zw-gBi5P$##AOHafKmY;|fB*y_0D%(-sQD*`^N*Zh9V}XvK%4oo?*^Sn@Gy$h96U}~ z@HBKo?gl{|rozvnOtg(MGxfAfji#vkKQcY_oT+d9NXI*ABc*CCBDX4AY!?C$fB*y_ z009U<00Izz00ba#c?Hz?Por_AaRZlLT!wwXVrqm%ScabS*&2+tw3hbgpZ;uK;2hMK tLHqn;r0l?)*J3#5b(vAa`pkKa`N!+i7w5l^Vv7)f00bZa0SMGx;6Fhj5yt=k literal 0 HcmV?d00001 diff --git a/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db-wal b/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db b/canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..73bf205a1c57fd311f203de2c3110a2f7342bd43 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db-wal b/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db b/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbC=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?50jD zvW2&0RxhNtX^ikTjN#t8F^RWk4D(iviM$-O0GGH=nC)LSq{dh^BzZ_XI* z%^H(5YsLo@)&EhQ=hGV+`|%F)Xt zX~JHs7NOfG3vxK@li@gY`eZK-NuSKb(@*|i{^?&1i`U)aM{e=bsCZ~p{LU-x_pU%v zYBFOpDrc3b@&>X*$88SOD>&ndLHg)YOBts*tFp50%&0s|0;|;L>g!aRAycc==L+pq z3dqDN^|^{Wm8N8DmHJ%iok|npTctjCL#NW1cvh*;9n-1gWB&0goqv4#nRkf)j}N17 z52IJy=qWe)z8k$hik=%qkB*}IN6`yj^n@2Z=tckVdv_DzMw2Fx0bZvxixtFrArhLm zEvF1Jr!$>#h{bWZ&LrIAB9@dxET%%Kik3-SLAM}Uu5>I_lZ9&9mgh~BsugOv2LkK;oF3#892~I@G@MaOLeAYQYS6Vpu2(W z@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(BIKlzI~h-BO)aZB}QM%+o5IOQmWnE;-FA z)6a6)OXY9^QqD@jMO?w-jBqy3WGMxMfD4K2O+!sG`xH)?R$PiSg_ESinLbe(`+wP1 zHG^yHp!Wa4=lb;jKl6*%#>FG!;xCip!AbGVwD{VzcswZnK2tnAQ~Y7J_||Ok)Lik# z{3VSP$d>IlB#iK~l9>xuNEm5lIn`ytDVMp-c%@k*^Ui)_n`~MoQNlX(gssm~0)Q)x(uRq8X#?^JSv+b+-e|7kyZ*pL1@j-DS!kBy^mj(g7t-qQjT z{xK4`W(b74dCFlXmbb738pFyL&tMLkv^mYwk_#njm1-Fts$f0~UQK!2!dRIz*Z~&B zXr0D75it0z;ws#MwNfsVl+m&^YnLp6)lwK&Q?27hHi(RsMpXXK6Zf1Lm0`aj&@um(m;o@v_fJW*0)t>p5`um8_{ z{_@WMADb^;UMRk|P&~JINoxVuOc2M0AOR$R1dzaWOMvX!*?FH4edp|)kV96fps zX+U~6@|6jL*G;BB$KmvpR0aBb=jQ{`u literal 0 HcmV?d00001 diff --git a/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db-wal b/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db b/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbR5gXgjx>|LerYV8L1NcITPCwz}E69R@V=nX$)t&+02!2IXN&V)1w7vcTQt!#?HBomm8bO^1_PT z_y*DBHg)y>?=g9RF3R{ijy#W7$zK1%`qjDrvW$1*kX>%AjP;x2YPV&tBF|Q``m2vf zzyF=~-_rgkt^Zo<=UMx)xv8=HSRcJt=Y``r!WAh`Ehpx#>p6TejY1valhEO=?+U(XI~I3i(Mc?kMu8U}n&~&y zvrN7h#NAHN<*wzpGE)+9;rkvBV&R7!%ML@|J~Y!0s%4pk?Zr_f0`6Is;I1r`hq0gX zj^#LEns|YebPmn*hte#QoSe$-hdk;;0e2H$R%Z!|cP%>!VmI!@M>zee_DH>cy?(oX zukP26JwBLFT7jA|c@xxFHq^7BmJR7-D35=wcC~h^cDGjA(y(JE7ofWOqplidlaVnQ znfs&BoZ=q$_V!-MIJ_0NYuGXbAOHafKmY;|fB*y_009U<00O5ZK#9TB$B$JRx>oGP zaXS2@>XZsY8VEoD0uX=z1Rwwb2tWV=5P$##CIXaDLw)u7iVRlp1pr!>FGWmrFn|CA zAOHafKmY;|fB*y_009Whh5#isL;dvdhK%C>|DXIUW;Sq91q2`f0SG_<0uX=z1Rwwb z2tc4D0`l|!;r$72s{Nsw`YAwRjqcwEsIWc2h9Lj}2tWV=5P$##AOHafKmY=>DL{#7 zs9P_8mO*vGio9(<)ok0cyxD|CRSpyg=wRC3a0HG8J zKmY;|fB*y_009U<00Izzz}W~?ACgwkP#}00Izz00bZa0SG|g-v#~x8r48G literal 0 HcmV?d00001 diff --git a/canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db-wal b/canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db b/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..b0b1ef8160c0ff2ebbe8eed7512407ec076d41a0 GIT binary patch literal 36864 zcmeI*yKm$~90zcZpSxb35|4rt3gUK!_L$(;_)!rM;$cBgiN_v`h)Z%xB2HACL_x)0 za1^1W;$Hw!&>&ILLIk3qrZ`^VH_0YO==Rt>X|t>3JJRGgiJYH3A3v0Mcm4bJn@^c% zJYt-*(>VEdo^Xp9#{2Kx+|*Gw^CaNwy#-`*bJNgd4)u*mr?9X#**y!(KWAb+|22KA zc+?Ljox;M}D$d`c**-}9ok^##u(o3J@4sZMt(D{b@sDi0usL7q#Lnh=yq+FjwXGZb zy9dq-H+FXS4SQ>+QERrn*~oTn!*1kev*sQzDY_-!-PybQlFspxNw?&7wWaQw)3)mM z`0$Ep>m?2z*!y5_Uu~^#)5`Y@lh$eJ^MAvp9rQ5upC)~g`)kFH|Ks`VYyYFvznpXm z3u~)5e|Iw5TNHI)WLvTM_g^u}@>f=V#>(%_@)NUMnE2BeRtC6YxDY`c^CYP<+NQAJl}J(^L}@0gR>mTzr)K({ znO&w>G^wb9glAFE(l%8&FEUBnl*u|y0wE$1OwDwMu`W|lseq_r`qePyNkQ|hR3v!S zHnfT~Pr_)r(_j4!!}A{U9`~+z&w67o^m6Y-?^XTB5ZY=BxPBN0Vc_;D1clqvA$L6; zQrFcXaUC5p*VZ9+Egd4))FE`44ubZ-??2{0?LX(Q_H?mza|tl(bbm7YY~-Ac+|$uq zNf)s2(b2~r9^JDoV5LY20SG_<0uX=z1Rwwb2tWV=5P-nB3NXX5^~;Za>Xy0Oo8#>G zm8x@{K2`<+2tWV=5P$##AOHafKmY;|xD*1+V7`90QIG!h@Ao{H?glLFE&yAVH$_~E zJ&#F300Izz00bZa0SG_<0uX?}WfEY9>+6pmK1rSa|F>PkS=tQ%cJhgu%fyelLI45~ zfB*y_009U<00Izz00hoOfL{N%_2Y-0(raU;{wToG8asUs(9*U5D~13BAOHafKmY;| zfB*y_009VGOaVrZpVW_D{(<`P-~Zn|NA_ZBV^$D=00bZa0SG_<0uX=z1Rwx`x}n_-t!`*` zLv}V~#?aTL=WKfZgV*mlw&5=AT_CL2$~H+dA$XJ(ROCk%1uqJ!^i$PsT8KK5E0uE921Qh7A^oHs_Ei(BFqI*%)0mbD>wwEDYkANV zqN-vcl+1=R-9s39xl%>dG%*hoMU{jLm2fGkl5iZwO#9(BoCQ3T4b?!F zQO1jgHlS@)P8E?=-lX}^nWa+l(4M6V^3V!rsBk}evA2CmFHQG&}sFeubHghWt!zEo|=iVUYBX6yJb`AYF{&$*JYaJ qY?!u9prV`}yOmToJ2cmgaf<^(xtk6yo!T zqk+zKD$FuI|1S`PM+2eBiYmHss4TM-AD+zWzhcF@|5bgitf&~rp|Z?U9{X>o-ab(A zJ`R;-mU7nr@@uiazWeIf`z5zB>+?OXxH#B$w!O&<(>NFn$HvYe6z1N37*$Pk5C;8f z*9?O}SS?M3aVX0|NgtCIzSIq{Ej2b%7z8i+R=#0(4AKLngGT!hyPTz3?$8znUW4UhA zwc3r)w;FcGYxUcWj^Fph>fhJ5vtwhtVY^PJS$EW?uHUlUmff-Zrt4YthSv)Ge&96g zJu%*BM^VQQL&vh+NEPcut`!8TnA32=ey?ZOqo%8h1$Ha)T7KP%T24dN*6UgA$g5kf zAJ}%(_M6SX73Hqj+)T}cit-~+lS$4*b^I%p$Cc-mtxA4&ojtj+fHdaUbZIV@iuwP3lJvpJv=nlImrmCuWk=L>UASKmY**5I_I{1Q0*~0R#}Z zD4_2DoBH)b&-6-Jn7^RlVv$>0mh<-j-CBz@ga85vAbg6*POMd)cJ&BO$m8tjRz|czs5I_I{1Q0*~0R#|0009J26qwFG@@8|$93&~CUc0JV zq7jgqOfmyaO(vPnM!o-0>Z#`zlT=)L-*3L58voI=_>d4l009ILKmY**5I_I{1Q0+V nWdSw*Q{u6Ulu_?Qbwx&7?!<9oClNpZ0R#|0009ILNKfDoKquee literal 0 HcmV?d00001 diff --git a/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db-wal b/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db b/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..42be01ae5929e4adb6a49a6d537d7d42af264c49 GIT binary patch literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&*(FMNF_`$98uCu|N?IfyWmS(VN|t9nblkIF*xlK7M#ZOXLz6wZne==V`iK zO2~`nJAKuwrj0s0o-82Zojy@yhK%kwWS3hTAD-OupE9wkzowomB^i6;kX>$V9_!a- zwdZ9#9f$04YjakA`2nfbdd)%e3vK3B^O;U;^jl8L+h1n-=3r~jxWBovH6UzlBTj0J z^<$CNx-1s`xMmKw>||R$+t@yOOJlgDn{Bxst|dq2WO~$c_LnrKw%9wj{c?MdthLtV z&bNss_o=Jbf0xMvbWz6FapZZt=Ir@DtY4k`FUxp04%y|_=COWrT-MAf# zh%j}I*ekDYMB(b_bfHc!-R3XKvP{D99N~(TrZ)s-n(920s;(oCf2DG@a;tK;vOtBS6soH?b=4@F zjEu?1JRFU-Dem#$;NX>v<6Ci4!=51k0SG_<0uX=z1Rwwb2tWV=5SWnwB?eO;KbB?a zTCo?$>F|@P85M>!5P$##AOHafKmY;|fB*y_009V01Sp|~`rgqM8LZ$70CZly6fx1k z00Izz00bZa0SG_<0uX=z1R$^&0+g7B`sv{f8B|>XD6lL#`ejUkGr+DP009U<00Izz z00bZa0SG_<0*fgiKmQ-zpWvn{k80|t0EIPrcpsp`W`G?-00Izz00bZa0SG_<0uX=z z1Qt_(l8T{jz5H25@!$W??jyUH+NcTw5P$##AOHafKmY;|fB*y_P>g_Ff1+BwUcFtt zSM{sKOaXhHg+RraTs*0;Y^Y~LEgRCwkdnHgmY!qs){ji5g)ZAjjj7fgnuQi}KmY;| zfB*y_009U<00Izz00hpIK=~nQG@dlJ8sBK+J#Cz++GkU2eX6S#bvDf^$aQ_16^`rL hG^-ca=~OEd&jtZmAOHafKmY;|fB*y_0D=EN;4d}VKsf*a literal 0 HcmV?d00001 diff --git a/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db-wal b/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..eda6fab1d2eafda9c716bbeb7e198845c222cb68 GIT binary patch literal 36864 zcmeI*&yLbS9Ki9Jwm>NUjsFfBgUPZnY>GgklpA_7#D}n@H4=B1%|hIGav#J4zKJ(4 zK7?+(`4Bh*EL;`?2@SA*C;2hm?BvJ%KEpOk3+<2ZUt~ty5tDY=Pk&scJC{Oy{BYLQ zy>7;&-zKhwUSXWoQCQWYui}Asj9uH;_Wn4 zmss1f`m--ZKHn}5ioawrv6}zu#Hnt{EqNDvmU%Kb9j0Eq@AU`5I_gDn-mD41srYRsJy*SsB-@tNpM53T?LV^p zRko9?dWUmM^WwER*?;VL&8infQOAkga>J=bRoC&|uy!xU{#gUZrOkNZ> z-Ll_w+;UlEiff+J3>#`j1GV2q1s}0tg_0 z00IagfB*srAh1>eDbl9C^zu)gb;BP3kg`%Kmz#PfGz1Vp009ILKmY**5I_I{1Q1xG zfV%%gCUYzEKwkrZcC7`{rarvlrw!dT(vyQNQWQ*m>p4qZ`cZE9rj62A>aIN3dXXp& z0R#|0009ILKmY**5I_KdBm~s)pZ)ze`=|R!Bq!&J0tIuKI~*65I!;oMOWm1x#Thaj T0R#|0009ILKmY**c30ppVmIsK literal 0 HcmV?d00001 diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db-wal b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..4341634938a2cd7cba58900af2928211eaa1fb5a GIT binary patch literal 36864 zcmeI*-)huK90%~3OtN(s#Xoou5u~Ua^kUjjwBLcrWOpZ-{63Q`O}5GW_wQT2z|OE) z`c_sif2P>vj6Hw!VrWW}tXYBSj|Fo5V#o}cLwTjjR5X^V?rCiOKe=KP|DxGf7ATLa zOhsdh`)Ux=yH`&FDw{ASV{+>sT#e9rc>KD&H> zR6ct=EV7MK-&@n=Ivov$vg*g7BT#m;o8aB^j~lvp0>J?lBsdcoxCte(BR zy0*4wMOze0YVwC=Kh2($V`rmW-&kiBwIs~(zhYAdou>S;%1!oH%l7|i{N}s=Eakte zOhsdwWu7WudVU<{QCw!JUS(%?e}jB@DaO~L)Q>W)3#pYC%Ru`|CMx&kATG6E z4x%zs38QMdOqG|UQh8o3gEEL@n#WYP2t%F3ewf9Ys^zLIbTY_flIK({^dgz1fhY4k zDf}!;!#D~V=ewftXHj@rsKbyJ9+X~2ZIpq`RG82t9mH802T|y?CyMSJ=DK&?k^70e z@3{MhyI(B#f6M*Ta+^E~eqr5xQKwt_qD~)Etr|N_->TK3RjWm-R*Sq=i@a8gyiSYV z71ryW?_KU)@BKobV3D>8aAE$aH;LOjbI#6Or#t&_?$hn<*RQsJnC8BT*Z>GX00Izz z00bZa0SG_<0uX=z1P&;`nKQjUVXj9A>+r5Y@3q-{`digrpWr1>{t;5AOHafKmY;|fB*y_009U<;J66T_!G17M~+Ltt&X!Vl+u1s1X>n@IF!L4 z^=RN4Ka?H~z_S`DUl*y@uXUZI&+CkYL(hK{X6QNFJpW-j5aIlQ=>Csvq~_N?T801w zAOHafKmY;|fB*y_009UbRROyG)9IY-oWrdbN41B)kIR`}VR0-o=Ci|T>i6#Kj6eOC zeTZXFf4^0juPeaCt}(AwHF9^2tA_0v^BUuix2G@a?s=#O0SG_<0uX?}(GmCxI@uVX literal 0 HcmV?d00001 diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db-wal b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db b/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..a25d7e9dc277ca5ad31e0dd07927e42e2e1eb03d GIT binary patch literal 36864 zcmeI*yKf^!90%~7eR|hCB_0JQWW?D*h6%H~v#*MP5RVn~l+36+Atk+7$_Wr*6_A}xc zj~K`8WSreR%W#tz#s}};*ifTt=J9}^cNeId8ykiqb7Wtibvg9bW{0P@_-72P@*k<^ ziYNR2tjnRdwu<>%GTR4be|Og9&|6!v{QZ}W(Wsp6O@AWO-g3Uwft`)Dcr87+YFpR$ zcJ`eYuW#?{8TRIO(~fL=qp7;ly4_S8&B#64GSORZiOu$oTRKNua=qny+q-v;XA8LQ_;`jePC zQX2EDY1@RRbtG!5lhThTmEQp&Qt z2$_hxCYP_GbDT_n-SE7JyvMyO-m~7+3%%TX$$L%xF@(0-0&Wn7j1{i02JQ~jkhz{3 zQrA^O;yP-`U0V&2YpEf2O*MorkweJj@ehK>f~SM$g4IqJkM2wY#5y^i#6F!lr!)6t zcBY^`YMO)A+NirIVL{u58c$TJPXOT)dV|$S*IAd#(3O8eOk?J*LvPfkb zBFm4c(sTAoT>nAW5z@~N%pd>(2tWV=5P$##AOHafKmY;|xL*NTe{?u}V))GPg<&>) zW%%~+onbxP8s2YM-2a{hg5Y!&B+!MGgMt37r>Cx-I(lmBsimi;o)SHM^FQ^czp={O zcKM}U{^FFkobsO2xBzz~fv)nr$O`4$D$j)YI?^JmnDZh{{~`k&X_1xAxseWurz0)& sxvM!ftf&7FS4Uc8#dPjt`WyAf&%6Hk1vpKS0t6rc0SG_<0%sKX7q*piCIA2c literal 0 HcmV?d00001 diff --git a/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db-wal b/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db b/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb5l-*6SbW zW5rYbaMD#+SX;&QTWYlrtNz}ktFW-PV(a%`F$RNjd@%l*j2E`%OP$!++F%>$(N){J zaj58=2${ z&6*~oN!}(j=W#~sG>W655V;K1Ij^514*l!9wYYxzbfKSKHphPvyUP^EES55>C<|jw z6PaeTNK-~-lQgZU8rE_-HPfHO>N1I3@G9bxvbaiV(z28mOyo39Tb}bMuA{V_n&}QP zyG%S~VJ2BjtGH=ZCLw6vBq0skFl8*Mi>#TR=^sM6Ohprlyv=ILA{o&n$r&x0w57aF zQqHPEWt_UYYo@*|oWjtZfA35hE_iQv* z(gjRDKK}IM<9oIRY!oRW009U<00Izz00bZa0SG_<0uZ=R0b)3|e)-W?-7=SZah#mI zQgxxr$HpK40SG_<0uX=z1Rwwb2tWV=mqLITB+&0R>ZyPI{hsHls{u>93P4unO%a!3 z&ts7gfB*y_009U<00Izz00ba#nFNU82Ku9iPwPeZe9tBN3czv%$mvI7ma}ne6#@`| z00bZa0SG_<0uX=z1R$`+0_ydDTi<@@8NEhg>W=~}t&y|)04?niV8alA00bZa0SG_< z0uX=z1Rwx`^%NlL_LKV7%Ri~U{P+KN_mN#sZLA6c5P$##AOHafKmY;|fB*y_up9wZ zf1=-is{dU7#eUX*wf|24-G1HQ=`ZKOV5>?X2+ps91YKdBpx6D>>xOPObh@G44Xtiy zc0+PLB*rk%rRQvQ{|C=CecNzIZ%OY0A-$?dA`vy5N>x3FCUM26Xk|r{w5p>bU;jAfy!NStsg!lt2l zmZU}1woLGNIMX$Rp(lzcs(F#pxT*`4i-)TIuTV9KYn~+{jtf!OL$`=3k;S1d6pw|TIK0$2JyR0vmC`!GZE73GR<_gY+8lxW8!t0W;q+C oJ*M%$#O*T8a>h)}^f&5{Uv&NP^*B?p3J5>|0uX=z1m+R=5AC3ILI3~& literal 0 HcmV?d00001 diff --git a/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db-wal b/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db b/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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ⅆ#!I&0~1 zKm958CVzh|-OD%uD?6oT@BW&4X0O|>{4wSdZ*IEp`A*vYw1*ad19y1Ys@>9 zRuk$}TG6w!YIM!W_CjB^W5;JBkanPYMmJU?&(iyWrm=UrnVprsWkgsQOo3`Is_I<;P45O>M^qic@PF916&EgGWD+q$nv)I9%wjJA!A3Blh zMiyJ|gspnQ#yrEAt#_iCeqXbh38&KvBRjU(tv^-M0+TH|7_+xrSnQq6y3Zyf(3&W& z7I&6(mpz^r`fOFg*ksccg1)1=t{bVbWm#dDUh?b&okcy4AEl|3}WrZ@OnmtA8V zQUP>UW+$*itJ4ev-Ei2os760vwp>S3Jzon|jVWV>uA_Hjx6{yE+hR}sdF%;5la=1? zv)A0|L0^r0GmJtz_9EBqEZ8<1&-K}Em#yK#O3zgFJ=0?=DE7l3GDBPU?aq8;8vU-# zu+!JrOFS5i`l{#jebx25I+H;+Bgg8@bxlum16CT1wFj*9Y~{tkv)Mp#pb@7APH0=5 zS$3&<-;Yhzu>xkxV1;8M>uRLMu4#o1yH=y4xFM6swhXoJJM1Wpt>@@FzNPm2?5!bY z9D1>x-E39Z&+{pRA9VJ^rB2*A{BRFfA!z*MOTFyF)XRPv%VX1aFkO*+%1bl)XzSGeztfQWksEqM>g4oCiKqdte<^p$NlVYZtQ9!mtsd7 z@rX3p(axO%O{nrXhmQ6U>cR4sls$ruw)h}UikV+a4O@`wJmrOs_L=cJ+MnOp*M|9G zPg_PW->=Y%82qVV@FP{4SDaa5@FPPR9Nfb%)I?H5GI%mk1Pp%P#2EasjTjCO6d_#3 zIzM=ddI7?vUc>d8XNUYuHVRi7hkI{&e*6BcJO3uu62AU}>276W%s#oBY|6yu$|)0j z+(nt#)9RCZ(UdZ=_rod^Thd{2E3hdOTP;~x%loBO)@0|tM|V}(m0Rjsn#UHna8;`x zIBXoR&j#mQ-%&%?@N_M7gTS!4mR6M2+)|a%SgxgIWhJ*%WyF?isjV#Mma2^EaxJx# zc5bQ4$S>E@lG4g8RT&-TT3S?=a!XZ4khzwc%3{G%g;8d%rH0bXEmawb=2}`%8o8w^ zqt#qX^U6YQsmh2p*V3FapIfRj>dmz@tIXw=s*H?tEh)-uZmG)XIoHyRqU4sUjIi@8 z-Im=pqnl~BVC+3>t!YrEi`M#Ro@du$!}qq&ZfJOPf5Y=EHi6t@H#wrn^>jA+?|S?d z;K*gjSqWJ88D#C9Ks*p6o7 zR!A-lu^q(_n|L2(MXk+E(1ezI$cET1PhyDeE5%VZWK$etLqsA?jjLG4F}AZi8e{vj;xHTR7YEs7`0^bKy=ai_|K61z z*Ew3Hg~gerLAImY46+?z3-ho$-Sv#Ji5z50CWK;;?dl{4+5UI2Fs~dgD2}qpU>_dr zq!&inq+Y}IA`t)HW9f0qdJf{IXL!DAnrdXR$v&n-Gs*+D1}2;2V;G^q7Q(bW9{fN3 z2%@(H;_CqMqk`KGD_=6J%@$ar>H@uM}k@y9W_Cq&|3$YC7$6j2;8i8P7gxqF}qRUpp-imwyn@)n<82a1ai z#04EH2}h?^)V$ETEdG2F94vnSgjxKnIgY~zMHrXSK0MlsFfR2Pt{0Kp`yNY=Q;y{@t~<77vT5|H z;~VVpPS<5~@byS%&n)P^7xuM~RU}*(KZ@ur!T2%2_`2X0QaQ#~W?CuG2b>O9LTl652JuR17>-4q?%oNJeWPst9sqgrYBtWzQunKY#q^C0`lVk z@?(PANaZ+RnQ5g!lWUX#fcynh0`f2KPR7WQClR>~B0rvCE|N<`ejG$D-c4CiNwiu% z(1aF}$cX&ji4yrArBIHXib#&QM4CkM-09GSDv@Ub$&VB3@)ol{4kQ;J$VoBtYpG!i za$TalFhYJ|GD!ZBl**Ask;!EQ^L-1wh{@jyCO=-Ksl}NkCO=+*$&b|mH{;MgL!wW?ym+?M4-iuH!_2TPAuTgo{Prf(*IyRI0{{dj@1aJTV literal 0 HcmV?d00001 diff --git a/canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db b/canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..676db905e319f47f2c5e027814e50de434d254dc GIT binary patch literal 65536 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%0AbMSQ2!T<@kDs5o> z@%^qpKKaZ$#Q!G;(YFWDYs2W-Vf6iB^yVmfaTGm1iXI$AFL}{ZUi7dR{oU`JCc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG3nmDiPK5H5I9L*?zXmQ}bSO2I@b70qi%22eF#!V0RSTuTNeWRnDNjJ5gbMU&UfTU?Xp?EF42u<{ zgmAHjqVz(*jzipn{epN!wUiZYObjWI3BzHng*304JO%|(CXgEqPpM`$B|+SiMkIM! zr{R3gWyMO6NgI_x*3%7DF{Hi}@|U z(_Nx8=Kt7eDdIResQEwmT$lX+GrxFas(5Uw`181Ucw9U`DZVx-o(zh=O&5<&7r&n= zzBN-kJ6pUpcU4ykWYgshmgh`YaKI*sg7b=18Js)9P+ju8R85lW%CzQJoulm3*?`l)6OeRwa+jJEbm>yj5vL z=A2TOXy2+dB(qMbOGao_8ju;M)Fo@QD)sUD|I$%xD<{1Er(9Icg{<1jX`Kw+k=bSB z-Kw-k22QEV=)6^FmGqrbml1rc(h4C?smmz8RcSf6C#Irr zPIVp;yr&5!d@~ZbZU}@sFa^n*CQYaj_A0o7*;1X$n!?PcG7U>}sj~2p)C%S&VRQ+9 zgjq>x$9fzFbr2b0o>bMkY;?FSGZ?CZ4&^+C(Pf+osFt= zv;Xt|)1QBT$Nx{v6|c@0-V_%ulie+7RmM{N*zW9tx5}I%PDmkJ+vy#ltM(_;4&?m*4SSJ>9Y+F4p!Z++Xkmo_ literal 0 HcmV?d00001 diff --git a/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db-wal b/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db b/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbk7{KxQ*j)%)jT%inXv`kk#*lz)3bei9&F~bmU5La|nnG-PvJc{cNAc#x zhfv~6c)}T2AZd_5n(c1jKgriw+Ud-GzoFA+x4ZlE$2ZBTr)pYeb@XzR>Q&9)+%AE7A1C*8heboBTcVUdibgMxm?NN*eRGbheLme2hX@ zv6YnNpMS4BuTdBjeoG;?oOilor&BsA)kgcabvd{iI`1xfR|92tdtuA7?M@i9y}BI+ zozTlpT2>b=KlS>{TRM}Ll|{>oX1BGpPun^x9gSXRY|~=+sDINRw7R7WJ$PSb^q7|U z`LEl0f}ZI36Gfc!m9qE$B!9E^KhyC&3SGrk(wKiX%Jx>*CgLn9%RgUNjYgdL(sv93 zBBKx1bWPh2!kQnPR$9fXe^M(}+JRqemYeNj%h%<&e0tKZ9xL0drNjJr@2q(~T~^I9 zTrd39^Pe++`cQUEAS=FKF8g}^UH66i#(nGV7{GR?E7t56jo9-oXTFu4Z6&QR9*@83 z_`@7soT<8ZN_2n#0tg_0 z00IagfB*srAb(s4z!3m5cBA{`9mt!>L8v*B5OTMC!WFS z6#)bgKmY**5I_I{1Q0*~fh`u$$A1nFw>ZDuP3?fADZ4xQWR3s=2q1s}0tg_0z*2#K DbZMW6 literal 0 HcmV?d00001 diff --git a/canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db-wal b/canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db b/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..3e9e5b1666ffcd5c29d43cec12dc9b285dc6b0fd GIT binary patch literal 65536 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 HCinjXc{KvF literal 0 HcmV?d00001 diff --git a/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db b/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..ff357289ba6c4631eb2f1b6c665628354e164f03 GIT binary patch literal 65536 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 X#sgQxi==pk*Lb{8ihuZ9T#ElcxZl$= literal 0 HcmV?d00001 diff --git a/canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db b/canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..85e7666d48167eeee4ca57061e68387ab787fd2e GIT binary patch literal 36864 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 SsPO`?(Ri^Mf7@4u8vj3~G)FxE literal 0 HcmV?d00001 diff --git a/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db b/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f42db46040f964f9b6a3b508f4a9b2ac77862cb9 GIT binary patch literal 65536 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 O009ILKmdVF5%>euC)_*$ literal 0 HcmV?d00001 diff --git a/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db-wal b/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..dcfe5f0971fa2b2db1ceba19ba6f7489566bb5a5 GIT binary patch literal 41772 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 Yqv0#!Mc(cTuhDp+xBH8~;NI^41GkS^{Qv*} literal 0 HcmV?d00001 diff --git a/canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db b/canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..e8761b37ed8d07e46f0e613c3a5d0ac489840fc9 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db-wal b/canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db b/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..ea7e4c5e8b536e3dd50637641eb2c590faf5ebd4 GIT binary patch literal 36864 zcmeI*O^?z*7zgl~c3J}X8s83X490~RVzKlMxS{c2h#$gEUm|gL*(}73C-)2Z4LsmC z(UTYNUUg&Q!EfN(Is+`dEH0aDZN>j24>Oxgp7!|_O141f{kvDRKrWDJJM3qFo}}BO zggkq?+n2p;%Cy7dp9Ofh+b5Dt6VaW8=u&I5!;@P66DF4RSLAc0AYwcV(WTb%SidT& zJuBkzEJT-D%US)!d!$n7)kpPDw4Pec|8-)m->@6r{yI~)M>}Kf?vufAMA+saj4F)v zLmpSUEad&LqEBYJ$;|D+&e1cq$xJ7ix#e$0N9JT|(6IN{6eeek&kUarN6}_uOKf~d z6tPWJzW%#R9H8?eKF=b}+rx_a}FK=4DV+X#yFw=LcB$;g9j)IQJ6qy~dPp!x_IvpMw zp>6ZPk9iaa;*7SSx^I*wnOad`T9IuVmg9%Q$#V?9-3biOYq!G4^+WFQg_(X9yQEyc zTE1DnQ*M=yJwBL_TY-``e-V^eGE|eHk__p5D2{)rbh&h+bi0(>(y(JE7oe(qQa({yBa(}2Ie+rOUqlfna%4`p?VF*9~0uX=z1Rwwb2tWV=5P-mH z3Q(eJ^47~AMX-$T06?{7(=@%+gho{mfB*y_009U<00Izz00bZafeZ!2`V)o1xx$sg zTH%(w4*=Q<3Fy-cDms(bRUBQFovkafvvevumy)U`m!4zd){lzHCQA`!B|z1s*7wP3 z_pn_EKmY;|fB*y_009U<00Izzz&|TcyiaPiN41^W7g~EuYyWH=+3k2$TV|!?DqCh1 o~00Izz00bZa0SG_<0)JWHH=m_JRR910 literal 0 HcmV?d00001 diff --git a/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db-wal b/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..2e174b2917f95e6b0fd2f5b1cb57add2a10633d6 GIT binary patch literal 36864 zcmeI5yKm$~9LGI=?s|DjJPJ-|5w|O}VS>jqepLj7cv#R=;#rSH#3eZ;5hp56qM+h0 zIEqkG@h^ZVXpksrAp%iQQyi}_lWbxM-5#65*(Ldo^viEH8vSN|AA79bu|3~!zxk8| z)+5$QIrX!T=W(}*WxfC2txe-iu}>WS-k*T1Z*5uznWt@IX4-XDW{0P<_~#64@*kRW zCD3*-GwnJntC+u|vwcw8J2TU+v$A6O_g}Jx!*a4e`H@UI%lS$N_BPk~dU|->b#CtO z9(XU@+}Yi?+^wBj4PAG$md$X(t>tDt^p9I6ZOeCe_U_%%J8mi3mfO{qx@Sz+nXdE0 zYqo1z96Yf1!QQ^wTHn^4?^(9)(=qdZ!_^1qVQoLntjpuIV(0&H{^r{MsJ1U>rd?-c z74!FJ+1}RPSeIqR^6$T5mF2Ib{EU>}+vO*A*=6qk8Jl>AuRAAm^?D>?mU3Cqw2o6M zie^glCgoJ9I-3@$j1r~iytzgk^l$7;s~abm3v+qdSR=%3BPD4hvP2a$ZaAYNR*Fg% zGn!_F%9AK#39sixn*2$eHd3tnO{%G+h2WBkIucYCbwhKhrn#!PY>H}Lq&17!Z6uzG zDrZeY}zxEA|KIK-dpT(%D-Zwy5C8!X009sH0T2KI5C8!X zSPlWLKQS0QF?eS1{2&{=Ja}vH_Fy{L9xP`t=v5O4!?RV8uocz`d+mRNw(7T4udTXm z)oH7CTP0^zVvRy0J?HBEAM|@4eTVqAXY{z1P)NVdQ=Z02OzSFER4^^glh;{AMWmH~ z;#zW%XG<6uxb009sH0T2KI5C8!X009sHf&V#y{%h8F{N{Lf{0kX>MaFl?_&0m} zojv~C9)DzyFDAKBm}{lnB-g+DS;Gsh##={JPP3Y3m5O31gk;Thw9x9ns5fmy5?579 znT+%rLLM2l;7SYq$~+Num1MCHqkwD8R>l;g8Dma%O4h1SS)>;vM&2Sy$s>0W737h#h{Ey6UPQfkL>5sd4&V5f z{`A*QdDkt!aLb>)@{U(t%o(tny^yd~d0ylUovZTv2kEzw7Fy$)qpLmno%GsBi=63m y$8?tjZKOqJ!@NjqHu2j?i_DmLktRpbAHQh*@ztDp7!?SB00@8p2!KGB1pWc2@NLxq literal 0 HcmV?d00001 diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db-wal b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..b0283abde36adc22a6048b3ea531887b3752c253 GIT binary patch literal 36864 zcmeI*+iKiK7zgkf9X9Ne(1bRWPza{+F6qVCnuAVvZj#H8S4cH036?f>uuYS@`aRl< zeGT8GQ0PtHp(%8*4CS+wdH@{f?fSPZeO`UF<%FD zt+hVZ?^Ct6D85+-b*;6Y)j#~2-MjbbtJldN{9$V~|Bn|O&i3?PviLIaU!EMz{ry?V zf)|HnwG#xh($+f%L1|~@&R{uRyogrQ-PwPBRK5IeHZ4x7@)=EjeCb@_axSxYu$n8_ zuMZC|oiOmHdwOx#3%)O2RP*qpIzBmO9@3MWSLOiz?Syso3pzUm4!M_UF4gF-0cpTBx*+h0%o+nNDIc)vB&^ ztduGeHs7^XX_U2*sBBD=m8KF!B`cBVxw29jof%D&O=}aYqDX|aQ6)?kS&^H97H+fH zltr8>V;JY}R3TSY=zLn*WNJlfBvldDiLi05DW8&7D$^`WrthmFijk;8S=D8K!E+FR z00bZa0SG_<0uX=z1Rwwb2wX*gGw!*sUVlo_?Yn&O#%A+f8cJt{FcHC z`SM->T~*3?qg$qSl^)g$0SG_<0uX=z1Rwwb2tWV=5V*Di!^g|@^vPX6!W?)n@E986s!g=nTl1H_D6a2E*CV{U1Fy^jtvKesp~K2YvlyITq1{ zKOR5;0uX=z1Rwwb2tWV=5P$##Ag~<)8h>;!xQPodwxfAHmJ%+{vxJ<^w#e&|F|vdJ T1Rwwb2tWV=5P$##wjuBjD-1uF literal 0 HcmV?d00001 diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db-wal b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db b/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..85cca793c65ae257340dc2f18587553fdf85ff38 GIT binary patch literal 45056 zcmeI5U5F(|6~}Mg+qZk}?fL%xX2o<9cCEFm`m5^6RYXFYJgJ}r!LIIVvY2F--Nld> zjrx!W3F1RQh~i3~@(?AU1PMYk1_=?O1Pls(WO2zuA__qy23b$-&Tj2WI_XU^JCoVd zP;<`A?fG}tulrW@IoXod#ytmYu`1Yx>tIZ2Eu5oGTu*vpWsUt}Xkq{{!gl6tpkxG%&li?6dxl zKHfWYs5pG)@XO@zuJ!q*79Jiy8XwKh-Qo;Ro;h`P_|cOmPMzsF_nfHpA;&phtLD%# zr&h=7L+-^jQ@iF}Cr-chn!}50CU(tx%X{=&YC41JXnbz7@0c~tPM*I1^cj86(R*Rz zr+axkXqs{vL+@BkMXV}X z^E^#CXL%O2D-lAhlH>^!xl}Z%E2ETVRHaf-Ey_g7oXe%@DFc;|`tXX3p?yx$VlqWdt}(GY zG={s5G0Yu+iGoUOb1!>)jpV|G z2fudVZ5DG`*1PojUhgVy9|<400n#Je=E)%eq5szA#`@ao z%JS0U!u;Iq%=FZxKORkZE@TL9NM?ZSmxm%+Y2gb<00|%gB!C2v01`j~NB{{S0VIF~ zK9~eZ&)qg3JzRmdwYk1=IsTuWnVXuP^dbBoL-_BK8}V^|a_Q4OA54(A*GK>fAOR$R z1dsp{Kmter2_OL^fCTn20l5F~n6Dq&F#AaQ=A!_6wvfx;1GHy*fEz{vNB{{S0VIF~ zkN^@u0!RP}AOR$BFbR;}c-wr(-(R8a{qz6!dt?tLZR`~iKmter2_OL^fCP{L5n>V%!MgL-owM$&b!V(QZQUvBPFmNu?%2Avu+DhG{?)UtYu%xB9qSIP z+qW*c;*wslZA#DG3g7>*wm!Qw@cLVGqvh$|#=_$K1Q|M0;}w5$b;jM?{o_j3nIfqI?xuiUh zZtI2N?cu5L6%zh}gpZK$U;Xffe)w2F{ANG=(;$3L9S;07ubMo{OB$C6RP5C}rHVxv z&7tnD&~cKdbsCJzyi!nH7%BwI917`1T2K|Sik5MmW-_hnN>{;1#BtrEJb_BRC8P*a zP=zAC4Q(0i*Yk4dwB{v0sVY9Hs zs#a80OjDW1tSpso63zlQ=b~aI$fS+TU@g^98AS~g4OUvSRPjug!LUoEl7dZfI5N6W1zrdB?OW4YB_CjjlgF{@go^|4$CW?+n6Mo$y&F{DBj` zF$`ZEhK~=!2Z!OyZupcNKJ147@H$Tu!DG| zR-~?luDGNMYN*qMLCtrOrckb3#bv2wDVUJKa@~|dMZBa*k|#8Q{4kZQ;j}4rTyq%J zxyXYhp<>=NX+m`@VT%=1jaNA&nKjHox?yQ9WELz6CF`Vyc?15Kf|jXw&!K2NfN~dza&j0=wy3GGS z_lnmiipM63zl@59N5%8w;_Kt$Nx%5}Wbx=^@rSA6+f&7})5V)J*L9^p*6qB}>CTUH z*NM|-&f1$|J?G?!Q)iAHStV;$i8C#vNNX4>WCi0(UDGmyQ<%jJ-Xf8biZ`t@&M|;}DlL%3tCik)rQkT)bRcVq;Tcs{DLaWjgnX*b< zW{p-QAFuzfj$ℑq^bwnC6#f)mBapaqOAdCGu`n8j!(NN*$u}Rwej)4Xe~8f^StK zgjl66QGT1!;S2tq@6YxBb6)tU7yfr5d}$(lVj}$3MCXX$Jtdg%pOL_UArNeis3J&BCZ$N5RC9<}<6tX->|@0sJqiy<#qb&=$pq8zyi}bEe^$^{&lK^!}R1dsp{Kms={0kUnQ^DbBPZPEFWO|oT`x?J_QDs7NWtJEbjXjNJx z8&;`H^w6rbj`{zq?`F1g!uo`!4XgwOxb dOyy0L!m}O?i(5JE%l!XMdy$46M*>Ko_dmY3R9XN4 literal 0 HcmV?d00001 diff --git a/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db-wal b/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db b/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb%Gy4upcKKK-B}uJn~(%c zU$p8&AEby61)++OKJ}qWK`By%YAsSKR4Et~{L^CTLn{hJq!x+4Np3QUbem0^n|qu7 z7Uuqb=bpXaGxOQq`SaVo=l7dme~);*x!#5CqTP9UE#?8z>wV?R_Z>6VZ2b!cf4(yT zRo{24XOIn{9Nj5kc5T}^JiDfUjl!n=2hF+SK{>Ni!0g(#AKO2G)=oqD(oO-hYui3+ z|M=s*g9nR4rw_eE4((c-KhVO%V@HxB*~_;$gA=Duo*91huH&ap_ndo<*ZQF29II7x z@TgO(WA#Dz{GQzIdE)rVx8HMke$UkId2e}-ep^jvP#sBL-s(GMk26!J?mu-}-*e<% z`0!J`K78iDT>nQMI6$*d{{RQX4kg;*nW4XwGV(bWjD8d z*8cG)dqwdYDSk+bv;E?sezBWvzp6GFzI@x@!nJx!-IPK_tfXn0r!*BwL}lDC+LSt} zSz6UhQu~i8xkCvNRUCR5Y!tgr*VCsNzykEy`5NoXMz8 z+msHSBLl0HXCf|TswrpED8)4uiK=MLa?Tlx^DIi*lnxWpw@NJ5LJD3}u4F~irmkt3 z<&4Hj%xfJfsaVshv`UCo;z^uGA`?_bX$?wEMJ2Cdn(3s`Rl~TJ?R8oif2QaAEB=T4 zkNCO&3I7iN^M2*u>)-FcMf`sf{}tl@k@znV|5wES8S#Ha{6~rZUE)7P{BIEd-+lk} zzW-9+|9#(ozVAQX_kY^=uX>QL!w!?}OGkWiz`9%3-L&q8b=R%CX5Cfmu2^^3x=Yqw zwC;j+=dC+u-C66-Sa;gGQ`YsZJF%`ku_q(@ThF?#b%)koaeWnpf5YGyKW z{jt{{-hjve*^c8V$!<>2*eWD|1dsp{Kmter2_OL^fCP{L5&+}%yWpB&- zuy@FdJ>h-K`;>Qw_gU{wPkG0@6W)E^SH1rb?+xO;PP|u$_h;grCEjm|_Z;zlNxY|s z_Y>kh4p{_m{>{A*p>PkFKm~WVj7i;1V-k1680M~nVY$0zOy;f{6T2(MB<`{?++8vz zbr+3^+y!HpI}aw7?wolg-C6T0b7zbZ?zAzvJ7o-WePg&gF(!7$#-#4Zn8@{vNn969 zB-|kwCS1q7%H4r6((QvuVwV^bkzTNEQqSEA-~X__x#)~1!vphEvkQZb)wQLWzU!}y zded_R&X3(cx@4ni(k#^i(&&_BL(_yYDw|wVmQ+oo733g_(%r8IegYCe0!RP}AOR$R z1dsp{Kmter2_S)+jllS}UKrjUo(x|l;V($|2nqky4`1kqkM+ZE_QO97!uQnRz^@?{ zZj#8<Trg( zDhS6xz8=ZfA^0}+@|4$CW z?+n7%obXvE{DBj`ISgMMhK~=!2Z!NHZupcNKJ147@H!6@!J1IAPHPwunA9Bd%A2d3 zLDvs4UdRJ4YgINXScOhksfJ~gi9|pO`n04<3F!Jo7Q@g`D(EPKl{n91RYBK~!XMH! zt}+;B5=~Xf@=`Wwt|}cYi!4cMoj@3wMbL{!Swf{sauDPyOJvP7%Yr4H)=`<2Fl0yt zKhhd@NR^;X%s7leP|7-3lr^M>*RiBfQW%3uP9Y^dgsDpnA75v6(y(Abl@O?g%xu6X|9s8)Up(@kijf8yKXo$<7^2eIE<1|uZA|65>m&JtYDm-Ny;QnxR5lj z6KG@8z=)g3k}@UY2eSkv&7!W9o!LIra+mBTG1 z4YNeu#5@-=YaM|W$=c;gSMRA>l@`dVRqE24wJJ@M6|2;x$7@xZCCgT+ORw0fG*6bS zQkR~yRcVeaTBR<%Ypc=}S+Gi7df-;288UB`y7bbmNWZ&g|)#42@J<+m!W_;+5P`TuiX_^22DcNCr-g-?vaZ;d*y2;NhG z3I7-g+%yD&ZB^BcR<$%MLRei^5Rg<61TfQ5@P=y!bJ!#}5J8NxieW(p4@f2O9xUZV ztRYfXXYj0<37%CV*wP%9qOjPdd1@B5Nt{!d8kc6>$Qs3A4X&DCQ-D+yC9t?lV_1zx zbxlQG!=g6LAyx`X5if&I&t(PcU1r|6{>Sw{#{c1}jd(^Cmx5|hrV!a-5~5!>KK?)T z#p}ENe`2N4wZ zRoWz5R;kO%pjByuY+9u*tA|#lb&UUCemAp~6UP6qxVzfQ3FH4)-0f}Ugz^6?o<3{k pgwOw6@ibg3Cw%^g)-30ou{ek48(TT;%lQ8Xc9Mn-M*>Ko_dkP8Q`P_g literal 0 HcmV?d00001 diff --git a/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db-wal b/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db b/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..052f5cf6b48c9120ea35a3048bc2e5fe914c76c2 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db-wal b/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db b/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbNg7`ono70ohW|)kW-5)w^ZlGSs*}uo{P2d>$T>1D`}O3{qg1ab zAC&-k2tW(zonilH5ogTkX2!&iuvm@ z+tV^0PC{0Nm5SwGze8HB{>t{s7rIhd&j0nm#&FeL^>>$<{&ahD$GH7yV{4nR^^GKL zF*Z!1tkq*lG)!9NsHd0re7doDa8F~@Q{+9L4A#>F$7FiE>h3OSO!e3~we@0aJ6&IW zA`iYrGfzC{h(Stl4o0<7&tzUx|zd;<9R%? zftxs@O&4+60rvRlDy1x!kX*0lqApijgKmY;|fB*y_009U<00N6C zK#6InrI$a;V1(*rF56EHTdv^hFD5jyf&c^{009U<00Izz00bZa0SJ^RAoriB)y~u| z)s|{E)H(nt3nXBUZ>X3|-B)oEXB#fB*y_009U<00Izz00bZaffFlGze_ru2c6B%H`;kmJ0~`e@+RIk=GiH^&F0w! mxvkH$!*N@iXZPYZ?xvLYq`;9O009U<00Izz00baVNrAtyJ30FR literal 0 HcmV?d00001 diff --git a/canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db-wal b/canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db b/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..8b50c7409d5c9d8c379b3235cd4f758b9602c092 GIT binary patch literal 36864 zcmeI*yKf^!90%~7ecEfD5|4rtGU99@9}{+VW?vNnAs!a=lZk;d$osaV$FEiXCmi7L7H+Rfvnte9l&-)9=>gJAR$UNP*=Uor2wfXL8E&e3~oBW67 zSP67Lo_9U8*1DL#qqBWb_jl%953RM1<==nF8V;wEqsfnC(pt_N9oXC1;#=vRtFCk7 z=-}9U;l}>Kk>&30S8C|GJC&@5+ioRys-b_nWzuZ(1G^dX+~}%$Q;{ zV~kNDIj2QdDOQR~7BiY= zh0;nHOL(;~(x3fpD+nG69uKYr&jyo#1$ppd@T&R85L&kd{E)FI%Kg3>GQVer)DO(S zeBTU-@9BX>zH5Fee8&v2Z<~Sp#0*03|1f+kd^&tC>~^|%b(az#&iVc%?#0ZznEB_k zO9gFV$?GKy9+?N@}Y>0 z*z-sd0uX=z1Rwwb2tWV=5P$##Hc5b3erUdW_@wTxqwfHC7O~I2kGEn7a`ttZ6|air zAOHafKmY;|fB*y_009U<00RGi0sa2JYaT!Jlu4D?=Bof}Yh+FL9oCjG7KQ)>AOHaf zKmY;|fB*y_009WBNPy_aPnt(B|DgN&KmXr6M|MT&V;KlQ00Izz00bZa0SG_<0uX?} zMhNKo6NAAMgJ%ZM53<3_gSQ564`zeC!A9iX%_PI{;x0(o6xIoQ&2NKd>NiubnYzu? zX{L5FB^Og-jY3m;&ehLju%RI^-_T-HT7(uGzl{R@^-RcE@=E)yBmRexiuN?EBwWsxrbJL>UNlsT(w8fUsZ zu;3-5IZqQh<8iHc6320wj)GY&lDI5W%4DP~3FnbnyVQS4=834vB#VU@`BGIPmNKGB zCOTFn6fG4~v?vN)KR6aV7kuO`Qz?1mE>i`0wA3Atk-bdy;t^S<@uUL`c0%|j^ag;CMTrVL|W!ZUl{3c5;T#P qIU5#6x=Z{f(lTev!bpFi{`jivk9YIT!>fV-1Rwwb2tc4sfqwwI^J^La literal 0 HcmV?d00001 diff --git a/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db-wal b/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db b/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..a3deb89a31befbe6dcab983caee83e19475ed3ff GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS6x-)4RHB@f9>_S|~aj~j#_qfj zyzw0z#rK%!^dFl{>9%GK^n2jfla!N_{60y;NS2(RKfcNpu_{JoQjceEQk_a6K7Tmw z>ROk=sN(bg0!ez@6`HK5qB#y#Wmd+!C$s)<*s;#Ps*jZw75#CjDzlQu{0)`u0~PPb zp{mSE&hjt67VGP~uTH{Wax1f(m$>6%ciY_V=%CXd10;Z}6mG zev0?n{bH|u)H@OdwO&L2{+p)SK@U~@9!Hk@D`&_5Fn@jSUsLgI9IDE!&UX?EdTPZIFn~N+o&x4=hnBBgHs{C8-_aR^vxtbbo3dezu`4nX%e;)tL{6AuzGs1XIWXM3W* z(dzht8^@vLBzD{KBRjDge%!I#BntdA4(hJ&t7d5wdZ8P*RvNpinbQfZD6PkqZ@Z1q zO%uZ05fo11epp`-i=)Z{EjqT2tJ%HzuO%2p*mo6eTpSwI?-bGkIAQ$_uUzAmyf z`EE47xX+7=i!UnvT^6@#tQi3W5I_I{1Q0*~0R#|0009K%Bp^l6)K?|SDvZKnuS&?_ zy{b7SMmGo`fB*srAb#=;70h*E37^a;7I{X6cDG2q1s}0tg_000IagfB*srAaGeg z-TycB>xZ7{FJ)o!f`ZFU?rmC5-UD=RYh*`+GDp-~cU7C| z3P?@PG6Ibne`JQ?Y}ET7r5<{2I!MK>xBc!5N;w?G=k6WR0|E#jfB*srAbYwP{HNhCmMuUEVy&TOIZ`mBpD?UBTkIOffJu# zID{i7z5<8?7bK2cAp&vW%wgEVt4=4D(DY148mAlbFX{P}qtd_X{k$kHyX$@X&8N)K z9@CD?iJ$MD#oc0>_Wre-o64)AA3JRCO`xoAZfXjdMK+xqxz5V`@N}ksMqw5IP@O9d z*}>e%byn6feuJWYnC!i|k?X9iS^WK1wBazH>`#7Vlg?tk(8AW{Mz9edUN(&z`@09$ zOE-3Q_ce2CrdxNXTUxW0VcT-M*pheEG>vK_IJ~5r zs>Q)WdmrrW%dL%V>U>YrsZT>)|5K9=(4%BO&8^GhwPxr4EPi$Gf1K>gxsmIvtYiH4 zJlb32m33LxEdKs$TAu&P^3PcQy`F!f=Uv8rUu|X`zG)m^tCzi4l#$;^E|SpaVU(tv z_53~nd%;K(7(P@71xh%7wYyhog6WuUnk0y%S4In!{$zTqBxO{HCKEiB zsmH@2tauTYHBXv4twrM%Qih9^uIP-lN+R-o8P|e~rlc{|6=}w@;8`gP8e3SUCEXhr zaJtiBEj+7opAUH1w1S@#8Zy~D-m&P0G2C&!bSr#0)eW}no~B-%maqoa>M zJi2G;pi@YK00@8p2!H?xfB*=900@8p2!H?xoGSsQS*CjZ*e5ge)lQDH*_*0!4IiC> z00@8p2!H?xfB*=900@8p2!OzaAiy-{s;`ZD^yuI3IX2A(tZWv5t;GDU9lzoCuCZ;yA!zp(LFYEqA! z@kjdje1aRfo-brp7nEzbri8Qlp%P=gR%xl(vPGGv|6)$7 tw9M78XiSs8ncXTabHyxF`UCmL&pZG4dR}=L6$pR;2!H?xfIyc7{sBW(cp3lz literal 0 HcmV?d00001 diff --git a/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db-wal b/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db b/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb~d?1Sidf- zJuBnMIAoVwTd?}e_erhRYwk2Z(`IfppX$U$f7M>~4sJ7jb7yPcxVJgj+97Ox5GOUp z`msoBT^5UeTr-DDy4jLX2iwOlX$+TivL!dd_2k%`OpjLWgB6XbCHBv3zu4YM)>k*= z%D0Io*Qu+|f0xM}bY8}napbwb7VP~$tY01bFUoj34%y|_7O{SFT%ATNwblp~4SnkwJzo?dFasof;IDUt>T0zR4SXex8 z{1*58w3DPk#}V=LZTd-RmZ{^VUTB92w?fP3PU<*ZSR&?86k350u1M_ZnSPYJq*OXr zx>8yx-BN!7p)HYsX|&s|mSr;4d8V#9*VI(!m{fJP-2auz<;so9oyrmwj#8+ueyOWQ z*<@r)M&{9Iv`lfYhlhtRWlV3yZ5q}L0SG_<0uX=z1Rwwb2tWV=5P-m(1Sm0>y8Kv{ zp=-sS9H+x8RdXr~X&?Xr2tWV=5P$##AOHafKmY;|m8}009U<00Izz00bZa0SG`~IRq#%4R!0`H5uyPe|0NnQH_r7lPPNTST6)1009U< z00Izz00bZa0SG`~X$9o<|KalquB!^Erfvl&tkI+A02Q_cSTO`3009U<00Izz00bZa z0SG`~IRz-G80yi>pJWvO{r~JavdgKBsvrOX2tWV=5P$##AOHafKmY>82*~*-s@1F2 zo7KBjzgo;DV6F2Is2G!zCl!_r^=znRLpm8!Qa9Apb4)(^Q6p3@^!^Whrulv5p@kd} zfB*y_009U<00Izz00bZafm0<=en1+H$BnJVSK4?-8>g!F`4n3>W|=9u&Ssefxjxew kkh(U@?8S9D)6B&4K|mG=KmY;|fB*y_009U<;6D)f17;IFc>n+a literal 0 HcmV?d00001 diff --git a/canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db-wal b/canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db b/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f42db46040f964f9b6a3b508f4a9b2ac77862cb9 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db b/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..5e76cdbefc0ae07070ed10a3a6e652f20aeb0bd1 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db-wal b/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db b/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..5566718e5be444e2d8f3eb252c7496772dc9ea13 GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS51y(>8Z?*WxQ^(vv{Zxv>?uJNF=7^fh+p zh2V|v;3&SwJg5KIWJDwsp`w>{&YHhw;18u9l?e(AJ z>`&2N(#v;~qwbN&>GfLX``@zl4tl8L_b9U5Ukmp6AJlJ-{cAeDjY4;swMDGIFsk-c z_a?Gz3s!$|SDeYS1>2}B{b!b2%KoVk-z`fYbb59i9lGX-(%Wb>n@N&-u@i-E?D$?S zaAK9XP8xc#Qq`cIHkDZY`}lT#V)ZusC`hAf7&_Hvq8z{3Zs;UI;&|;eY}P{G4XQQK z+h{g|IPgv0(DxiaOhPA&>vg9Qgrumt^f1*9f_AENxS`v0e5Gnmm`2K}=~QXe zRbJaoM6o3{H)m!-qQw!Y$Z0-_djFS7k4w)>TcyR>bhhNq0@4~E)1^ImmN$Rsnrp%3RP;hz3y*-!X`vBeB8d(tn2q1s}0tg_000IagfB*u^A)tT%x6G}V z&vnfC@_&6L!c@0RU5*_?l?Wh!00IagfB*srAb{}j0F;tI)t80tg_000IagFc$a&b)Dn) literal 0 HcmV?d00001 diff --git a/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db-wal b/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db b/canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f42db46040f964f9b6a3b508f4a9b2ac77862cb9 GIT binary patch literal 65536 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ⅆ#!I&0~1 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 Q{QosONW+RF0VL4-FZAzWv;Y7A literal 0 HcmV?d00001 diff --git a/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db-wal b/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db b/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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%0AbMSQ2!T<@kDs5o> z@%^qpKKaZ$#Q!G;(YFWDYs2W-Vf6iB^yVmfaTGm1iXI$AFL}{ZUi7dR{oU`JCc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG3nmDiPK5H5I9L*?zXmQ}bSO2I@b70qi%22eF#!V0RSTuTNeWRnDNjJ5gbMU&UfTU?Xp?EF42u<{ zgmAHjqVz(*jzipn{epN!wUiZYObjWI3BzHng*304JO%|(CXgEqPpM`$B|+SiMkIM! zr{R3gWyMO6NgI_x*3%7DF{Hi}@|U z(_Nx8=Kt7eDdIResQEwmT$lX+GrxFas(5Uw`181Ucw9U`DZVx-o(zh=O&5<&7r&n= zzBN-kJ6pUpcU4ykWYgshmgh`YaKI*sg7b=18Js)9P+ju8R85lW%CzQJoulm3*?`l)6OeRwa+jJEbm>yj5vL z=A2TOXy2+dB(qMbOGao_8ju;M)Fo@QD)sUD|I$%xD<{1Er(9Icg{<1jX`Kw+k=bSB z-Kw-k22QEV=)6^FmGqrbml1rc(h4C?smmz8RcSf6C#Irr zPIVp;yr&5!d@~ZbZU}@sFa^n*CQYaj_A0o7*;1X$n!?PcG7U>}sj~2p)C%S&VRQ+9 zgjq>x$9fzFbr2b0o>bMkY;?FSGZ?CZ4&^+C(Pf+osFt= zv;Xt|)1QBT$Nx{v6|c@0-V_%ulie+7RmM{N*zW9tx5}I%PDmkJ+vy#ltM(_;4&?m*4SSJ>9Y+F4p!Z++Xkmo_ literal 0 HcmV?d00001 diff --git a/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db-wal b/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db b/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb;L$|q2;q2!4jx_nrMx&oSA3vnE*Pidb{fv0V zBgSz#iL;OA2{(yheDMB_4IOncj|2XmEl|lD8-^xxR9&A{6?!YP&C^@{b0*f~AM1U^ zQ+0nZCP!|v3t}r?Rs9{-nn~E=cp&^dTxo$=B_zyt6obE zu9&v&vH!sChr4^t=GvB8_^x59Wm@|9U$@l;dRWz;XSL7mwPO4K(fIYb|4~)HnpG8g zE2}tucQ)FaD(c#2S+VgCUp30|H&T91${)<~Q?u-I?Dxz~oP#&4<74$IOL(3{SxcLw zPASV|LM}J|!;7dAG|94vGRY+6Nn6o8O(I^&D$m*cOn(rw%amkk zonRm8H4 z*YVs;hr@MaG_Q4R_%^O9v*)3(czip zj_&vX0SG_<0uX=z1Rwwb2tWV=5P-lX6d;CU>)Ve*RV{P57stubovKTSh*gFF1Rwwb z2tWV=5P$##AOHafthfL%h_8QoJy2i$hXc=5R|A%I6@aYDk0Mrln_=}J009U<00Izz z00bZa0SG_<0_PPV>hTl(=;4#9F8}-g>0>eH9R~VC00Izz00bZa0SG_<0uX=z1R!vR zfV%&0>(>uGrTY+5KMJt4LQdWTw6rzAf*}9_2tWV=5P$##AOHafKmY>wrvNcrU%z_! zM^)ARf5Wm}XIT#b5I>5-D7-(RF)9c^00Izz00bZa0SG_<0uX?}5(U)!6Q1{w_qcb( zd)AwJk;lE4yw~&_0Z>+3z&*ZN;tthCldy0HI&jz1fw`^@iRn9lb9AO4FMNLIgsa~;~ikEXW zjWLUxs&0h{^Q@V8vTgD-uTok!qM(eYIjzE2rA{kR)I}OfR!v;>AykVIl(Sq?mU2m} zBra&mGoD5fOIp!RoJD3zp4f}bf;_Pnnc;Y1E;4)ZWTC4m{+s`qfBGA%ylt0X+T|}! zdCMs;W)E1+r4YZH<#~}kblxn_&zoe}Wm;q}o|}n~L6>QfJ$-H_gLqx0MUIAfnWldc kx68E15i>W_pO}CAqURr9%_9$M1px>^00IzzK%WBt0tJn8>Hq)$ literal 0 HcmV?d00001 diff --git a/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db-wal b/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db b/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb$ZOg4zni30{CV;85NK zPF%Qig$juSZ@^Y&k~F?_Nu?UQ;Xl%snMkAYd_O0yYR8_BAKuUkIY-82x1PK`O7)5o z^6bg;p{{i?#uZ)<77)qvA<<-(iryqtm0OwYp4`Si;=nrphW@NnRBTN`Rk@Wi=5MNO zPpfz|3037*N|t~1E@?FSi<^sI=wfa;|JMUs!zFJi++JYj)6MlQ>(1k~jZMN<){?Zr z*f0^Y(PN1iCJlSkGst>AU0dI~r#0&7XFXR3E9stNGBaNCwyzmX_t-kM@nT~$U0GUH z8{Z&?+NP<$|2?L5&{-8&UZ|EdT0# z((iw#{kOFL$>_f}`g!Jl=-AZSeqfHjs|%qoMAw%wA9zX1{Uj88;KY)Lk?=cS?1-)- z2-8QCt?KexJXjtdSoA@oxA>c~Y^1J?g%iYW9>yJq`(5F2Aw#KKn8BN6Yo3HA8KSHrR`4Y%0zOJs1$uS>hP{? zN8C?C86<8LNO%A2eo~r^6sY+}k#MX;J4Fc5$M1Rwwb2tWV=5P$##AOHafOa&;Rmj3DW1r@B|69BX&jhwDi(*Or7~LsHs=tDy&d*ruBUan;$j| z0SG_<0uX=z1Rwwb2tWV=5ICs<)qAAXde~ZTeWR`Sv~^O`C~)3QYnGLgn{1Xe@tzb4Q^H2?qr literal 0 HcmV?d00001 diff --git a/canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db-wal b/canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..612c8f8a2f64f5971ebdfa8a4df448500d067837 GIT binary patch literal 36864 zcmeI5Id3FI6vw;zobKV2I09B^5IZ9@Y?-dUJHjBu(Sn?iKB|SaYkOr|tcX~NfQV19 z1STZnD}V?{kO)b^0uc}sESGs@kKG7)c4t-^&&d9l^yXEM%CGwUs=76e;wPK)xZ6zAKDd5sLwQy7V~5Xs6R4V78=699k*!aR+``Iacor6a&cG`Ffto80 z+5W`HEv&3!{sv|HFxh((Be$@!V)?tTXoEp9-W&hK#tX~&QU|s+*21;q;Hqid+}qi= zUb?xxv!|Jx+l?HU=0;PsgLSj1HkyHb)H3c`zQ4VDc1!E1Wz@CYDmUesF-@ah3lFa7 zrfRYO(C&x3dvbGai#p%cbn4Sk$N#!X1N11_&l6kZc&*s{KgwU7`yVI!YGULTR#q{8 zdy?&K^2!!jRxE$_HLWOqW5wsJ_(3l|)r&>ue&5*4I(XAKK31=Wv6O8Z_qb#e^MkXS!Q_WQ8h<*3Qc3s{$K3%BO%leCqnO!755HfE{$wkvj9tDxlGd~G< zn3a)V)qWJqW@;pj8C@hP<5IM_;F-*P9+gqe%cyF2+BR7uTAy|>ni@%G`hOyYX_eJ;rprWDwo(jdB@!{bo zA06JaETB__1OX5L0T2KI5C8!X009sH0T2KI5I9!?OtVaN`Ozga^yMy&v!g3j=bAn` z0|5{K0T2KI5C8!X009sH0T2LzOF@8X%u{z8_2^%Jx98Zj8nCog0JbVOMO=!JN0J}_ z0w4eaAOHd&00JNY0w4eamx%z=Y)?IU_%xYr8g9>W>}A~rz>Xh~xlH(xD+qu92!H?x zfB*=900@8p2!H?xoC^WE{%@++4?UxLW4d}2U}=S&ya#A$dw`BX00ck)1V8`;KmY_l z00ck)1VG?o5@7WDN%iXGAIX+~|9|%$*^5aVS%ClufB*=900@8p2!H?xfB*=9z;XzX z{zSk3RR6jDwSL-vwf|24-G1HQ>Mv(!&?^z}ywg<>uM^hsdfm59SGBvU)m6=|YIIe- ztFqH7(}tdso-^s84@+k~$FwzfNq2!TyUiOR{gMQI;(+vhvNk65p(x`*BxxPi326nT zm?R(o0w4eaAOHd&00JNY0w4eaAOHgM5^&$pMx(b!JELFO=xa8*!$!aBqwn?67y9U9 zeKc>h2Wvm{{6ti7K;pn6B}v{W&N5EhA#cl;gj1t7DE)fqHd!jGxJ`H%snvnB@p&oo zjQe3w=W$yFZ5|AJWhOq|EW>HEWnzN`N4~F^g-uj>Z^fyLv z*DSs?i(jnbj#WI^h+d4pVqT~6Jj)E7s`7lu+%D2Avv_Kxe^{@JG|Nn%8tE_QbdhE` q8m312li6LQnO5+osbT*O{qghGAHNt!DzX3p5C8!X009t~hrqw;o_2%) literal 0 HcmV?d00001 diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db-wal b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..7801d864adde67b0703ab3909ef7cad832da464a GIT binary patch literal 36864 zcmeI*OK#IZ7zgkfKT;(EQ3MDfBve5YmBqAvj9`}=v4Dt2st{qlj&uvs=L`}O$GlT_QB zu{STb`ldF;8dZ2aUZ7B0eP+m9isf-o)mRyCp2qq=VaF!_IWtyfCe91yz4oeK=9^kQ zT~&I6IV)7nIZj^{)!ee9ioTj_?adVp?~dlOm-_0^cJ5v~IlMP&=PXsLtA{pp>~b+2 z-msk4`HCL6n|fn&gITmB+r0mm9oj%wD1MBi$?Y{|<9{!I^Vxru;^R1|YOG9S{;hGg z+faWJ1oDvy&wil7RlkZF{O zEKIdf+Dnp9CR(N;oBjI}V96$5MG!k}A_oN4Z~RzDRZI37N}MuVH~{q|4G-~V~U zX%fP`5P$##AOHafKmY;|fB*y_009Ub5a6uaGN&Hiq;MU}p5#6NUh90H11aDI2tWV= z5P$##AOHafKmY;|fB*#kAwb9f9dr4i+om12%&7nqD|}imiZC$&EEob1fB*y_009U< z00Izz00bb=i~t?~x6GxNzf(-|*uTk+TeYr0Ynq}!00Izz00bZa0SG_<0uX=z1R!t% z0lNQ$x&O!s=0MX)3v_GkC+YG!cfz6TKU(J2bB@{hGvOUToYTFCf=TOQ`4E5r1Rwwb z2tWV=5P$##AOL}jCqVmuTCGbs@#5lb*`qUZEpyLj7kgWdCc+d5KmY;|fB*y_009VG GNP*v}tx5I( literal 0 HcmV?d00001 diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db-wal b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db b/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..f42db46040f964f9b6a3b508f4a9b2ac77862cb9 GIT binary patch literal 65536 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 O009ILKmdVF5%>euC)_*$ literal 0 HcmV?d00001 diff --git a/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db-wal b/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..2f8f3f6076d940d4b55d407c660d1e75ed29448f GIT binary patch literal 115192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db-wal b/canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db b/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..1af2232af01a78dda329d7bd763d4ae0a5813d81 GIT binary patch literal 36864 zcmeI5yKm$~9LGI=uDv`Z9t9_~h}#ufnBd2Z9~A*19v1YJc6hQ^X7Zi+eP(QBz4rXR`}Q;9 z8IKsJ<;>4sUc}ubhVjAsH@39b#XNQRd3OS$xv^zvWR9}UnJL#>nN3e``WF<|@sIRc z@su6TOu635I>v9QXdhJe?#z_yt*lx6{>#Q_R89}3Kapu~F<)w7XKN$bNRO`C*7bwE zL+8coyL$(Qy}jGWk!^1^q8)A8jo4~N?nz7DwR~@P|IRI)la{P&xl?V+J8Ifiy^$PU zF>T%A@PYjg_YdUu#*XTI-!N65mOlPBZ8bp;EBkq7ea_dKt^bqw^|}91Wnaxqx!%e; z#_!Iey{WvmKFgZL@4sr4!ZXYBXXCeG0t*6Fc&wXH;&CKaP~(+J8~ z-O#*}DV1$l#B~;_cUr^N=ZHi9+HPH4J3U?K)63@bCb2su*(5SbMMUc~QA$xAQc-0s z4V!{jRl>Ox*<2+;tWK#FEn^wyG|q~IGEo$?D5{KBb(uQ&{j&f1x z+WJ-DTH58Vsa@<6?IJb*LGW1cbnslT-r-_&7a~Bcv-u?UdCfVmxo5QtiT2R=`1q5L zj_+D}=oFG500JNY0w4eaAOHd&00JNY0w4eaOC>-I$JSpz`pPVGwHL?9$v0I?4IiC> z00@8p2!H?xfB*=900@8p2!Oz)AV3Tf=(~*u>Z89u@LY8@U}aYU$hzDVaVcgVL4p7X zfB*=900@8p2!H?xfB*N#6I^kLeT+5y5hh`u3Y1%+4(<@Z^^$j~JSfB*=900@8p2!H?xfB*=9 z00{iQ3HYxYlgV3?y~(d+@->;#TTZ#06|kPYkf6)*yvPcjo8|c*;&)1mtm3&!f003_w8%=It8`4fPHB;& pVXo5O#O;(8Ib!B2{fYeJ%g#T(o<|-=1p*)d0w4eaAkZg)e*vK3a>)Py literal 0 HcmV?d00001 diff --git a/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db-wal b/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db b/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 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 literal 0 HcmV?d00001 diff --git a/canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db b/canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..e68d88a4548fdcc17bfde09526507868c5af4d72 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db-wal b/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db b/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb&IL!U;q{O>w-!OtOh}=r*@0oZTGXktQ=6jeg_b$M#C=U3vmmk)FbzBWZaFszP)qrkB~wli~-n_|z==%>BNxiF5l6>*!p)97-;DDni;u zQc}@mDa|;~Xk90~3EMDCS!LMz-DKatwq40$#EsAXXPCi9}jAO-z$2DXCyw&@xJ-df7y>j(H^WWNxH8#Oxxe z)JiS|qiNQt>{yvm*)$Q&Lf+)9nxkfNUZkspkSfKoFc9%|Uly2ZQdvUe|TI zuG4kxu4{E&v+I(RuG;@W@I>%za3$y~A;evR0I`nuC$Ud@&PmTb?k!={?wa!8;FFII zPAzv0#|sER00Izz00bZa0SG_<0uX=z1TLTeF&tZe{phP|najO6P7c4Rx`2q-WC%b2 z0uX=z1Rwwb2tWV=5P-mn3lM_@`lr_e_0iuSc&@q{u(YcHWL16?vEus-n+E|1KmY;| zfB*y_009U<00Iy=s{m2ApXgf;pH_AGpZ`y8i#cl=7!LsmKmY;|fB*y_009U<00Izz zz$pUi`+r+Me&`uJhM4+RfTb03{2ZXAZ2=~R00bZa0SG_<0uX=z1Rwwb2t1eq#Bc-s z=;a?(b%`_Zd_&y0R=k_oiOxW!_8PYx;=*D61{t2I^`Fi(OwgsXNe3;vQW>ab5i?a~<78uB{vHTDl2c zQ#ZLwbR&o{4)oG@O`2S-+1oap=8U&A zmuX(*ZQI6?94~YYVeFOadP2ggh~{}+Q;{|$&9XS5EY0$e$*8TfX6#0yZmU*E8kcI( zVv$r#O%_KqO3GHstYu9l#?B%uC6DbzRzV(Hi>z=wHWyjFcuW>qnK*d!KkH9_V-cSRIYQ^I^87dPyGV;1#d9MakUyMxJ`s1s4=3%QK009U<00I!`Q{Z1l-g7Si literal 0 HcmV?d00001 diff --git a/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db-wal b/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db b/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbk7{KxQ*j)%)jT%inXv`kk#*lyzDA*g`3{N4j5Q(KUh1htq58{DG@#e*c zP~v;w3@mV|#7#QgE&M0>I@@$QGv9BQX|mhh{rTgY06r=uB#uB?@4_gL#cX2&M~z#J<%9n&auWv!$!e@AEgP{)TTbY-oi zEdTsF6$Guqr0`n`)^gtKj=e#tTB^?uUFTwQIrZLr9E~T+9gf0Y;JSmb(+`?%*cpUD zcG2==)AC|;d2>r|(XzH_dEOrOZtT-_x~1yuWyUovrVqwn#*^N#bgl;sV>^I82b}cLy>y7?NvDWK!il^0Xy?EO1R=VX{r}nnrP_9{Zr}?u{w|%x;fX(9C zEX?)(KRB>3L%K|{fG_IwAkOL!jkxPAZ@raWZN=^Pw%gC= z^RGJoU2c0o`a=K#1Q0*~0R#|0009ILKmdU|7ZByS=JI1+hm%S6tb{DCRNXlN10sL` z0tg_000IagfB*srAh7cSqD24yzfwbdnxDiUN6`LB2BBsfEcMgRc> z5I_I{1Q0*~0R#|0;C>3|^FPPO_jBsZdaJ+@XH&NN@IwR;KmY**5I_I{1olthFEM4I AaR2}S literal 0 HcmV?d00001 diff --git a/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db-wal b/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db b/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..2801a443100116400d724fe3567dbabf1dcd3db8 GIT binary patch literal 36864 zcmeI*%Wl&^6b9fKkDV$Jh?a{`g@ht#qJresiEr^PWsP_R@KrLmR=Ln6eF=6f@+j=s z@D5ZF?@`XgZd9Ry(#EbM@{e>nt~8$U`6h`PyY~F}{*`aAO_r7OI{)=5)d^?p)4StT z*0LyBg`fWx2%_VZNivP1p9fW?m3(?i>;H-!%lw=2wX#7m$%CrW$|~kBDBIfzZ+H5a-`ZU{1-A@h=FKwvJ8d}pQSwpd(MwhlzMYv~9A1LZa|3f^{ zM)7boWD1QWvww@?TOL%ER#q|pTAu9*)iTN~E0%x# z1sjjQ@bN?$mznkT`{rUg6oNhgCTidhI`UmR*$Hjaiu~Br9joi=R^03Ay^d|`W}L)5 z!w3y8aoFacpEak?`D7+b`RL_Vs57dln|p5{tY%TgpPM_#&-n{u_<^jmM4MMqyc?qv{2? zkbl(6!qxefHs7k9Z)I(&`+0VD_L<`ErMg4I$Pj=41Rwwb2tWV=5P$##AOHaf6ePfz zHakC2r~ZUe?a6UIyH-_DV(10}5P$##AOHafKmY;|fB*y_0D-vxXI#jCy}n0L@z;Mk zlKEj_0|F3$00bZa0SG_<0uX=z1Rwx`0tGm033=<`LyGFZ|1WaKOo7RxD+oXU0uX=z z1Rwwb2tWV=5P-m%2+;L^RX%>`k<6DXm0p48=g$FJ6MLiy0SG_<0uX=z1Rwwb2tWV= z5V$D;y8mCuM=zgJ@QNSW&lP&Yta($JV;l%T00Izz00bZa0SG_<0uX?}`Uuea6Sdl{ z+Fe|FUxzu@gj~Z%o1JITIBj?3{U37aIaNOTvEmy*IA3VBopqQfKmY;|fB*y_ z009U<00IywQ~>MG7RtF~XDzYF%E~Qek)@DZIGeKMY+!c?KmY;|fB*y_009X6Zvwvo DY%VR- literal 0 HcmV?d00001 diff --git a/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db-wal b/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db b/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..d13b20598078d8d7152edd9ba55cb78af67112ec GIT binary patch literal 36864 zcmeI*yKm$~90zcZpKC8qiATW+E#h{C_LwmCj9(Q2As!a=l#E{@;*y+_h!YhjQBd(0 z97QOp_!mGFG)R=R5P>MDDUMf|Nj9;Bvd5-yc1gY?&CTq|`i*}dudO@pu7BTt^C|I+ zM~vfkGR|I}XShQQ%D%%HDe`nU!&|6!v{QZ}V(Wsd2O@AcQ-g3Uuft`&tzLp$Zx2;=y zJNwQHx3+io4106CZbr7fQJ3v#-LA`xdgLB$8FyR0yS;n%md??ZqT6yyZZ>Dew5@85 zA6zqSy~X|myC3ZCHJfW&YVlpeRBKxL{9m`#0eV>VpJu(!~l&k>Y!^_{1#w%>6%O6X)P{>-b!~o^X-YO%v0k zN=hnNBxuPKsa`f*)^WsTo*1^iM(q1Hw<~$`_;R5yFYD8L#O@-=Qj{zeEfsMTQ6cJ* z=3$-EGUH*zLMdfg&yDmuvARfQnnnq$IL-6ArXp=hnq_f9S(@b`lf11nbsai;pKh4M z>>`OMEh8xyO|wR-?8=PFrr|UTqb6@v-ZhhRBN0NnNUg|nt}>yFwFwnDt5sr6LSqrJ zBr7==Z9Xs3^iO}?@Vtk-$GvObv)b@ULrwjLtaQbWjGQ@_exq6eXle-JztJRLk2taiHCyK@N;>*RP6`*h}<&fJsP zxq|kv@!{deA0FPf^{^;HLI45~fB*y_009U<00Izz00ba#p#sEkZ2j@0uexO}_vSb` z`lRYY)5l^EfB*y_009U<00Izz00bZafh!?E3=-&X8x7Qd{r!RGs=EP8y9+>8aUO2tWV=5P$##AOHafKmY;|xJm-Va0C6*!zWcYiM|71IF|lB<`Nn?{(;OAR>qPL zfB*y_009U<00Izz00bZafy*tRKL5A%PIjCp!)K^|KB}F_Ht??D+oXU0uX=z1Rwwb2tWV=5P-mP z1XTTr;qZy!GsEYH>G0*@Tf?`9)o^RLoSng{N+1YM?}7wfVVz*m{jJwc-EQi1Q@fj5 z-PG)+>E~v00bZa0SG_<0uX=z1Rwwb2>hP~{MU@h=%qdUGR?4hpO(n*D7`1T{wJlAWT-EGtn~3Ht zYSpG`Ugd4u#$1jUx`#0KGR|3)*A1=0hEXA#oR)E%(n!X#Oj#+?BpJJ*j8vgu5z>}R zwPKT{G>f8))^!p!VH<`itH#bEm6FHyB2|#b)*=;-$L1o{i^pV<%EZAN|EfRzwN>1+ zi!bcrXQ#O96c_UjSj|;P&{cU}e9RUWo;=!*zVqeMa{iAO?DkjWN;G`n*ju~X1ADcfGiPHnSBs9* z&ojNa?&MiNUu=w~3y0o#x|^#nx7F60elOis`3stS=ghg>(Okjs;dm}*Rc~&dIiX|s zR^;%G<-AQd)WF?UJG(o~qIPYw|F1i=f^Ja!m_(WDt7hB(D1Y7jz z@Y68OVlNBgsBjj|b=K)T@07X4W7#tnXj?`0lr}H2CDQtDwQjfWx0YKo?j;sir2x05 z2f*ApdFD?4(ecLgy(;@?+CDx$eoyh|QgsK>J_H~D0SG_<0uX=z1Rwwb2tWV=7Z%{m zb099qmtwJ|`t*U!y7XlD~00bZa0SG_<0uX=z z1R!u_1)5JsU*}Q|00Izz00bZa0SL@O;5P)OMj!wH literal 0 HcmV?d00001 diff --git a/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db-wal b/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db b/canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..723fcda33e9464bf3a6edcd31b2c5b8c27b1858c GIT binary patch literal 36864 zcmeI*!EO>k7{KxQ*agB?qec@C8ncJCF(e?!Qra8d3{N4j5Q(KUh1htq58{DG@#e*c zP~uB?!Wmc~X^=pg?QWL;BwuG~r!)KghEAK^?(WYY-z2LZt9e<}!OLB$8&T@>r|X`n zO-aowK5iCh`PV&V$kICMLFg*95=>8M{qNYZ$=@~am8_0&5V{Jj#4&$MXZujchahwn zT8UZyxp&HS8~IWGx8y_1d9OQ8_llL`$>h+sE=O16^qb4U)kxX>f!}d$yXUvMZr%1< zJ>SjDT2@yrKMscLTc&3%y;aMLX1}wxPupr2E0dQg+q4)z7=9U!I{o5>9(<@$dQ8jw z{MT(gL63C&2_nq-irM>rmcLp1pXm4=gsws>am+sxWP77)6JeH^<)5poMkCC8={p1g zk;!{&zNQ^^Ywgp@X{}o*b~zIi{Gt(ixs_gSWfogeD@>=; zuR8u;qTWHqM*sl?5I_I{1Q0*~0R#|00D(ITh)Ub$^kYtkm5TPLgv`!V-8m&XKmY** z5I_I{1Q0*~0R#|00D)TqqD24yzfwd{q8u@|Uj7w>^h8$oM~%VmunPzv zfB*srAbXi3-&DW<62Zq+fiFFV#P=-Sn(GO zi?U?JzW`#v28ktG7=c)@W-+|VxouiYXfh-txry5EN+;*0y8W)t@7h-4B>ukp_A};a zk7y_DG|!$clWsCi`{4Z>TPmxjpCmlqn?Tjv*wPd-i(+#YlzMBk<>^g-Nnut0SnVqg z#o;U{_14z0euJugkmB80Q0lF%S^dM8weh%^9!!5?)81;n)WX)*M!1pOzG@oR5B3hN z7q9Q`9cbqEZX?I0xz$wdc++gEt!8W=kBqyK@9pm2eWZ0fGU`U|l-u&Inx;{2gtxEg zrW$eh!2XB(2XcF3hbG_Gbehvp$N#2D3-mC>&$H-rz1D31KdxV$`yZwFY8I4wYwK9Q zJ*)O6Wfgt4HLHL4s#X-gvEp-9{Gb<~>P4Tm|F1T)Zogri9IIDF6=kW6a$ZRp@<`-4 z&+@$FK^tdf6iexcjb^HI#NqJTZe3nGIbEpJ%jWb?W_C(4OshPP0$$ZY!lR}Rc9ei+nw+*U!G2XmGFVXRYX^F~O&Y?T4OHH8NfO6kuhIo!$p%Wm|xWK>!3m00ck)1V8`; zKmY_l00cnbViI6<`$=`{U3SZ>snpc?7BwR z)w?b`>oU!AmGzvdZv8kkm_0CcYen`mj4kA)gS`X8wHu;)OZn4Sl`s90k@`XP6Sf4B@cAvvNSIW2)ZBA~!G9wS&GOBqQ zRb;8#Hd!NDzmziah9Q{_w`q`*zpnBTPLz+Zl!82Wvnp+5BJw)*27Vx9-jtGyrjL3pOZT=IS7-xaT~TN&E!|HXZwk$;(%mC zO7_K3oMoJzhrBIYGJB2Mp!93cTEr>YGZ%3|_KZawjy-)5_hN6Mt10fA|M8#x#whNX z#g}IBi&fmRiu+vB3-NEv?OdK0*+b{KJU_3qVW+gnUOZQcu|cP_$eun|Nn=i@w8+sg oPiguWvpc0lj+nVhNAMp%Z~yTNaiF3I5C8!X009sHfu#ui3plNJxBvhE literal 0 HcmV?d00001 diff --git a/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db-wal b/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db b/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbw-!OtOg)y1m;Jj+f*+(l5W+X!bkv`^?x%{FvXj-+W3u z;}PSyocQ_2v$$KtFy4Rf=7#pVn8yx3?@geTH#ZE8%u%*JH|07j^XchK|BS*q{;^&w zp0fS9Dc4z9#rQ21?SsnRnVWK*l@*JB_>wUm7qh+Dk7U+a%$Hi&*;tF$(u1qEbz^U5 z-+AH2_RgMRZ*I$aY}*^MY{u)hEH~uXJ!+Y>E#KYVy?aaNs3mJ#Zi&tMu9~)0t;Gjd zOk20ue_;26-MxBqZA*2&YnZA}OCSI1wwj=amHjlgF6V2-*8frb`rQAhvM=YRTxVq! z<9FxL-cnv$mu1D`AHHG~#jm9Jj1=FS#V2ObW$gFWCeFd@*731=HBOT%O<6#BQZvdj z!Ko0Tq;bqd+Avm$C^Kw*j@Tbw->$^<Epq9QIU%A!b8&eKNK z>auEt2(nb2J?^gboI$KsDT>lGVpT*-9@XmmaYS=2V;YMr3FMkqGKtwL<*Z@q zTY`p+t1;DyinFdct+J?*GB2Y#l?#;!A+1s)(jaImNo6WC%BoO}E>R)IQ6|cer75qX zMM|^7;kw~@4|$J!SG;GvnHPH8d(nGU|1pHJ+5}ub41*wbhuS6XKs)Ao+QqJ`UF162 zg|4j~cP-_@z%})!+$Gv&YW{uyG5=}*n!noNVsvLBK&+GbB=%{|Ijy-TwKIu!(D?B1 z;|~w-Svu$xk{|#AAOHd&00JNY0w4eaAOHd&00QSqfEbRgZ$A!|S!TZ%$H~#1s&fq= zoq+%dfB*=900@8p2!H?xfB*=9z@;ES4C3pjjRxvp|KY%M)zyIBt^$x%c_`vi%shew z0T2KI5C8!X009sH0T2KI5V%YPh~fJB)x#&1nZ%l31L%hUIetN=pU%-M2!H?xfB*=9 z00@8p2!H?xfB*JgO#LcAZ-t!f1Jv6H&@l*r00@8p2!H?xfB*=9 z00@8p2wY48L~TE*w_g51S^v-fxBJLmOxlPF1V8`;KmY_l00ck)1V8`;KmY{#A)xY4 zj7Cq4o*6wq%0@4b-Wt6K z{OlCBo#K2}z-snF{5H$;GAndpmgm38uvJ=S6)#l!iws(&Wmft^r9X++DlKy~EL8e~ kxUJGMN6bQ{-;sa(yz`H*=8=a{fdB}A00@8p2y{u{AE#JxxBvhE literal 0 HcmV?d00001 diff --git a/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db-wal b/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db b/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..ed986afe193b07b05219c282f202ad728d93a492 GIT binary patch literal 36864 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 literal 0 HcmV?d00001 diff --git a/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db-wal b/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db b/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..c21c343f01c86668cf81a154928865765f98942f GIT binary patch literal 36864 zcmeI*-)hrP9Ki8&nzUmDaYIFhAVt?PFS4!8pEh@O*WxQ^(xgyyZgj)#&OL}1eU06D zA$a3EIEwEvf2aT0WJP@Ost<>ia z$8A%ak{eXK{$C(Yj@!zRJUp4@zhPoC{*w8uEJ<{SAysB&9>;IVXdg(t zABI$!l{p*#@@uuWw)^TN_@y^98}kAu&bPPRt)Tb9whoRuU2D6YD0^=|NlUifPU2Rn zVJC4rDHZzd{NB!>-RkzcPI~aM-HeXX`TjR-IY193eh(wd<27fW|Ni*RxqnsS+c2cctjy#13&YW# zN^K&`GH2so-c@J%Y|c8BrT^4&Yu!6l>bqshNvCVaQKw?gDBblWt$MDP)||TM*B!53 zNuAgYL#I|v+?rPj(n>Q_D}SHg&QGlFdc9h$gkBgqUNsFJX)8%uzVGY=VbrWQgCq>= zN}ARD*!L>F6NjGbc%ifn;~;QqQRw-6N#0@@m#)3rTb%9}s*P0@wX zdxQ1ayJXc#50)GGv4d1B% literal 0 HcmV?d00001 diff --git a/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db-wal b/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..57021692e469703c5d58bd730b445a8d560b7a6a GIT binary patch literal 36864 zcmeI*%WvaE90zcZpNYd$;&EVwg4jeT%M`!HW1lDp@vz{|5sy6<5!-gvR;)O&5(iHF z1sK<)yKp$ z9x~3_`8a!cnc)^OjCbF;In|?X=GlOs_ZATK&8eZu9M!jHT@9VJ+3x8q{v`wJ{D=Bj z@l-#Wbv1O>)-iueWqZHsZ_TxL+AZJSJGlFn&gqs(yX9`VBkvm1wyLf8 z_=;)kEspLxc<Su~#B3uq zqDd0Y7>#%y(?sMs&GVAevTD+taZ!u1nH$LYqGnU{4P(=d@-Imv_yk)$+^;<~A- zFpzA1c7OJ_4bOYPd(^w)J?%}r(968%y_fYLLul(Q;QC=01c}?%L+tkS5V@WnLf2J8 z7`Tpp#9Uhs+_m(OyQUs8m*^o?```B;@t^dc@z*}Q|00Izz00bZa0SG_<0-Gd24A<9RJ$zhs$0U|v>#G2(5g=#Znpw@_SQP>gfB*y_ z009U<00Izz00bcLKNe8$|J(ZZLr>@&iK)K|u(C#0blqWP31eXhKmY;|fB*y_009U< z00Izzz>)-ry8WcS_40SBum1D@?R{jIls=Y$00bZa0SG_<0uX=z1Rwwb2yBFasy{Ip zJT`c0@a%vOUL3qJcymwP+bOx2 z5@Y1+(sQ=D{{wN%zGWM(*ISJYF&C=JvzjM|RUrTY2tWV=5P$##AOHafKmY>&VS)ZD z#(4btcz^s88Gk{>x5@YybNr1t{?r_QV2+oQ*vPNSTxKy3Xeeq`Ay`D5=CvyG+cYv$ z^@3$qr`f0VFsCI` z^>~9Q<*KN!h*?mLyqKvX#$}LD9tDkxRc18jLdD{uij#n`hy^3JDMgybWkRdER`rIH zs-{^fQ!1Mvk18Ij-!vmu~na)i#S7d`o%^xH^_9K~}Z{YH9!i?qOzJ~z^@#A_ohayHD3 mbceWYq(#n{d6BM}s6W2!`s3?)=HXdE00Izz00bb=rNCc|D|E~N literal 0 HcmV?d00001 diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db-wal b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..1bf94acffbc11497e113e7db0497a632e4a4781b GIT binary patch literal 36864 zcmeI*OK#IZ7zgkfKT;(EQ3ME8NT`A)DvN0y+hb>T<*`Iu0sNFAD6P_pc1Q04i(I2S zkdWAL2dW5(18{)yO&(oT1-WWmyYL_B>!hhYGvCj4s>HG9+t-hLfi1F0nbp%@&r=<6 z#@@Z&>+4z1uZjK z^G0_J>ut1|4ei}*XLpAg)UTa&<%2MudaWruCu{d1GLs#~kq$|2%B!w>{ zPbfF{MbwMZJa;{rWDZ+A{mO8(Zw^irS5mJWw)>Q)-fN zeku!Zl7*ASo*UEH!)_7_Ur|1>=XHhjmC6z&Ri@I5Wsyg55O|R0nTho zpMGpon8xLO27T7R`S@JbS%1NE5P$##AOHafKmY;|fB*y_009VGM1V7H=&xSiqNw)W zKlNXiFGXAg6zf6&0uX=z1Rwwb2tWV=5P$##YAC>2+t8OD-leGi{eO|`YHEmxAwd8F z5P$##AOHafKmY;|fB*z)E>Hq)$ literal 0 HcmV?d00001 diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db-wal b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db b/canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..9c96ad5155104a0d8123b6b721ef3940ecd7282d GIT binary patch literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&*(FRZMYwO?CmXKoJi?#`cJa-qco9tmq5y1}w^( zz={ofwooCl;0?HynIw%jZAqnA4(UJA$xJ2d*ynTNRF3WW_~8vLkxOLQ4*Sucr|EVn zAupcq^mVVBG3@YqvVcf-`b3jiDmtT3U2bi(dveQv%EY?%d76spUu%~<{A2c%Z(E^RM;p-Z{de5Mmy{bg@C++Sqo#`fl(b$?@hbDOZ$^(3t^ z)=z}2byy<$NzEQC8DvX7Ti-f*No%mApDnr8TTPG5$;^1!+g~u4USjXu*2}H!bai=6 zt$d3ZYMrM3{CAkzK^Ikg9Yvn|YsTLHgZlNc|FVjAqflLLZ5HddN7e4CUPqp7#_BIW zBHiwH+I>sApN#Hnqnl^#|IAIT{m16;v%1)pv2cR8$-}tiaK9})E`$iUD;&S)xh+@9 zCSm#*u~%MMk9#Y_!-YP)be4WmmSvJjl&VZ^-U?#D{U8y%CF76_FL2VH4BU1rJ~q=I zYG#>2Ux>CZW8U+Ul>132c+ZI?4(aZ zP`ac41wxx60o!Ue9mlts?n2wtU0@r!^K7a+SMC2w%qanD;3AL;x-Lyh5!U0009U<00Izz00bZa0SG`~N&=KvO#l2?R$&^& zo*buxU#g~57}7uh0uX=z1Rwwb2tWV=5P$##ATSo7gj)K#qbn*{!6yLdtXvc^*1-S* z5P$##AOHafKmY;|fB*y_FdqVx*p|Na@P-Q0V1-@)K!^9q%m*y0fB*y_009U<00Izz z00bZa0SL^HfcpJ^@O*-sdYh=BZv`l<(ZlBe6}AOfF$5q00SG_<0uX=z1Rwwb2tZ&y z1t_Ul`q9guRTO{yfA$>N`P4>L5P$##AOHafKmY;|fB*y_0D)oz)ch0G>hb+`I zEoKw2)@cY-tntZ{3d@FOHZ-y!9S`ty`1Klw6o0=YoO?XaKxc#>|9 z67u}nZddlQDdP^W#|s3}ZkI?hO+5^OiW_)B$riKk`e@$U>iQ$?4i~b3pM|H?;Fn>AX@pS=Ro~+*I3tq>ewUx0BdOyeRN_*bF^x$8Nyajlke7!;HPij+#*r z5+;uk!{SCS^f$(b3wd~H*MCx$X7c=&;tX_&t6nlrcQd$COlg>!`~ zg|)&h`7aRK3JK_%X&Q#DGugFtRd$Z9$j;KK?3!Z#mr9pQH%fO(D^xg2p{o3&E*oXj zkv1LahokW_`Mn+-9J~}UyXCiOSTh75009U<00Izz00bZa0SG_<0t*tLL}T*n$D#;T z$@k03}qD*BxCF!E!zUK$qpBh^Y<+ z5P$##AOHafKmY;|fB*y_0D;vIphVZ?t%uh{C@RbK0suO`L1r~zQ3V7b009U<00Izz z00bZa0SG`~i3G&=|D)#;Kc|$gZX~s)7InAOHafKmY;|fB*y_009W(BOvCVD3`C6ZRe|ns%)NFkgMuEGaOfyV2;^~ et8}iJi5G)_ED(SI1Rwwb2tWV=5P-mcAn*sbp+GtS literal 0 HcmV?d00001 diff --git a/canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db-wal b/canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db b/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..856a212086ffa1b4c52c2e961ba14f7ffd285ab3 GIT binary patch literal 45056 zcmeI5UC13r8OP6@kKOm2eZRlI@)EJTl+=kkGy5@fWfYOJwpS`BMQ~?#7K3e5nqcXT zR=wzj6!D@UR58-4UQ{V4MT$^Aij)df3Kj)F8VtQ?MWKk)BJr8zO(v0UvuX1tZx16eHB-0deaG&9`!z>r*G$}+_m=mVx78dDs>9;cc7JHsI5~a%!Q&^)J%{gw zjUVszVVeVc{vR2_4w{4Vx81Ur`)i*a|7Y88`~C$e&+Zm5d$#Py_ItaneF&^Ad%5hh z_K!c_D~i`h@dHx4+%F#K7kkbYnqg0LleO{RZXra7gZA* zEkztBy`k+*PLA(BR+V?3>sV~3apbmjGIUC*V0kPvNmZPHT+>ukr4^%@5sj%Do*E@u zl~&2XDRE|`l4(s-ttwEeYg%SGr%bT4HnCQkH?2x*r0UFNrKZP_#+8kB*Cvp@KX}}kOYsD;5#IEgaltF!N2>#>;2%B ze(?K#@IpU$wjcbYA6#}PUxgJWI~Vr&4UUtucdFiHL-1or00|%gB!C2v01`j~ zNB{{S0VIF~kU%Q|(jzN7MB!C2v01`j~NB{{S0VIF~kN^^Re-a?Q$&UT%;Tn|dKmWh*wV3xOOsq8$ zKmter2_OL^fCP{L55`QHJ$ZZ*ISBLO6U z1dsp{Kmter2_OL^fCP{L61Xu5ke;_=f8+13P|iN;4#z9R{s;X-KJ%sj5&skZ zo&Kl&yL{~*_3!f^@W0~!hxl(0|8?S@CjOs^|1$A^OZ?}F{|n+jL;N2T|4GOqc;heL z4n!z;?j5iu^R}%?y)A1JZ_^s#ZCJy-b!(WnW=-s^f?>*Au||5!*5uxjHJP_)P3kRx ziIq2RUnSn0HNu;p*68L zu!ebkFkE`X8bx~Hj!ivxEByY$(Ay-_3zMn!rQYgzw0&S}aej7YZEmo<(%%TK!R{ra zPC18e{KE`ehy;)T5o`L z92P$s7NWJvWTLKaAcSMK6t_Cr8o4qv#bcdd7<$^`d|H zorj5V9R>rf8=g@vg@p9$NlCSqB^5Gbs*$D6Ga0U_8WOr2rYIEX>rDxrE-N7geQ6R_ z)maVQcepB8T^o^dJ0d6;T_6>_t~8@k@T7*wcUsFTToI*UB9)5fH4Fxje_p~0s-#>? z7Rx*_v0>qInM1u~3h${L){2dU(FKN)Qq*Y%`ReP+RN;~oqHa>2fIUrmLm(4|!&(c_P*$o0QpIy+M?D6ki|zJm zo~J42EQim9^J!i+c?{bTWdb9p;VIS34qWglX+)BzbsEm)Tvn`vjirsspwH9|RWS^Z zDU61OrJ84^3}-Vt{56@OBF$k$jB8u3RMCtXUK`d_CRO1~-Q+Si36RJIr-@<-g&h-9 zQ!^DyRX3uH!|5))G>-qV(Ne^5vR}vl;B#HZ|DXBA8&ky-Q^jA##iQfmg-P+XN%3@0 z{C&E3e7g9 zxG_gIoRTg9H%|=(J?LL#R#Dlcg0du4Ml^8)XMC&DELnF-U3#ikr5Up3l)Ch0txD5m z)hTu9@miGvvT~79hhDK&X+oBrQkR~yRcTC?oKlzGwN+_~EIOqwJ#ed%PZpd~mtMM6 ziI91x)TJkHRr1K3Q|i*&wO3QOPXQ+UFcP?72!uNjg5*t;Ce#Rf6$=%*oP8k2cD0-C=(1GSBbUKylLgMFXR6=?L`_k90?$S G-v0nOpJPz~ literal 0 HcmV?d00001 diff --git a/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db-wal b/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db b/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..23a30492be74dafb77f69013dce61b90b39854c3 GIT binary patch literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbhNE#%NX1g2sPV(z4?Q~{;pP|!cx4ZlE$2ZBS$7)vQb@+0d>PD2h`h49p zwJE7t#mDsmt>C(+44I>&5r(cJE8+A+*8i3roBTcVUdiYfg`um+N)q$8bhZz5d<;WZ zk(GqypM9@9ubCU>eoHR0ocFq8r&lN!YU4xOx)@%LoHrN!%b~K*`a#FD?OxF8dJQ{h z^#U(FZCPEm{L~+;Zs|;0R+cT#{j<)>K5eUAD34#JY|~=&VDM!y?3@+O_22`Q(qmfY z=f7d=33{aCPZ&|oSHj-^)BMfa|3t_4Fmx4JNn-x#Fxwkln~1U`EdOjnHJef9OWzR) zh>Sm2vo-Co+wE3s)srA!4{F7HrCP7&>+QGYe7o$w^E7C{)Py#Jz)zj{pJ)Ab4_}wkD7qpVHXfU z009ILKmY**5I_I{1Q6I60sZ`mgM*#PhD0_JaF+*KL>-BF^xWbh6&rOBO(T(wo~0Ab z;Pi?B0tg_000IagfB*srAb`LQ3+UrN$HzOI-~Og{#L<-foqRG!009ILKmY**5I|t1 Fz&{J6p!om* literal 0 HcmV?d00001 diff --git a/canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db-wal b/canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db-wal new file mode 100644 index 0000000..e69de29 diff --git a/canhazdata/two/system.nodes.db b/canhazdata/two/system.nodes.db new file mode 100644 index 0000000000000000000000000000000000000000..38d811e22c7429c92f40529ef25ea5e318846088 GIT binary patch literal 65536 zcmeI*!A=uF7y#g%c3aY-QKN|mjOoEd;ZQXwUhCDT5Gck*padF;CwU2P9{MQWy!a4G zd=H#y3%#Jy#7$TDCiy$tWSE)%n`KFM+1+nnKZk|vW;QOT_2la;)ltZ@_wNpSsZOOb zu6+JkV5583%Mw{FMrRVSDy&SFr?CEK>^SA$O8d$}jNv3=Rahxw{?(Z6^%$=w5v#&V z$?|W!%v!BiD}$9EVWqH~uXM+?UVF8@cKjf(?hW>bwa0t?{Xv%R^t)TFJnwZk-n2S- zcca&B)kiI#Pg}n2ADrK^Hfs57+H!Y&XY1TP^Xg`M_4r;TPc4Sm4n7l8(nlI7p%WXsD% z=Bw{{2!wF_usS~IRR@RtEKkSMVPm_$xxPIP=$;1PBly zK!5-N0t5&UAV8pu0wJsA>GESEMzu2Evl3x+rK*fd=0t!10RjXF5FkK+009C7{%?Vh zh4}yfS$4YwX@vQnekg%}DG(q)fB*pk1PBlyK!5;&Vg%y#|B!Ayyjx87GxZuqcf`!} zBN`JRK!5-N0t5&UAV7cs0Rk5gh}Zw~^!TBr)HYPotpIZ?!GlodW^Z5u1PBlyK!5-N z0t5&UxZDCEYligbXvzJs{sDok}g^*sAqYxlKfB*pk1PBlyK!5-N0{>bdp8u((`#+Q` zCy+bca^==s!UPBqAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ vfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pke-Zcvuv3N# literal 0 HcmV?d00001 diff --git a/canhazdata/two/system.nodes.db-wal b/canhazdata/two/system.nodes.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..3dcfe72239f49030c0bf90de44a98d7e57ffe6a1 GIT binary patch literal 24 Ycmb - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/index.js b/index.js deleted file mode 100644 index bb0a047..0000000 --- a/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./lib'); diff --git a/lib/actions/http/getAll.js b/lib/actions/http/getAll.js deleted file mode 100644 index 83c4a79..0000000 --- a/lib/actions/http/getAll.js +++ /dev/null @@ -1,67 +0,0 @@ -const writeResponse = require('write-response'); - -const orderByFields = require('../../../utils/orderByFields'); - -const { - COMMAND, - GET, - STATUS, - DATA, - COLLECTION_ID, - QUERY, - DOCUMENTS, - FIELDS, - ORDER, - LIMIT -} = require('../../constants'); - -function askOnAllNodes (state, data) { - return Promise.all( - state.nodes.map(node => node.connection.send(data)) - ); -} - -async function handleGetAll (state, request, response, { collectionId, url }) { - const limit = url.searchParams.get('limit') && JSON.parse(url.searchParams.get('limit')); - const orders = url.searchParams.get('order') && JSON.parse(url.searchParams.get('order')); - - const responses = await askOnAllNodes(state, { - [COMMAND]: GET, - [DATA]: { - [COLLECTION_ID]: collectionId, - [QUERY]: url.searchParams.get('query') && JSON.parse(url.searchParams.get('query')), - [FIELDS]: url.searchParams.get('fields') && JSON.parse(url.searchParams.get('fields')), - [ORDER]: orders || undefined, - [LIMIT]: limit || undefined - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - if (!responses.find(response => response[STATUS] === 200)) { - writeResponse(200, [], response); - return; - } - - let results = responses - .map(response => response[DOCUMENTS]) - .flat() - .filter(item => !!item); - - if (limit) { - results = results.slice(0, limit); - } - - if (orders) { - orders.forEach(order => { - orderByFields(results, order); - }); - } - - writeResponse(200, results, response); -} - -module.exports = handleGetAll; diff --git a/lib/actions/http/getOne.js b/lib/actions/http/getOne.js deleted file mode 100644 index 7e09e24..0000000 --- a/lib/actions/http/getOne.js +++ /dev/null @@ -1,56 +0,0 @@ -const writeResponse = require('write-response'); - -const { - COMMAND, - GET, - STATUS, - DATA, - COLLECTION_ID, - RESOURCE_ID, - QUERY, - LIMIT, - DOCUMENTS, - FIELDS -} = require('../../constants'); - -function askOnAllNodes (state, data) { - return Promise.all( - state.nodes.map(node => node.connection.send(data)) - ); -} - -async function handleGetOne (state, request, response, { collectionId, resourceId, url }) { - const responses = await askOnAllNodes(state, { - [COMMAND]: GET, - [DATA]: { - [COLLECTION_ID]: collectionId, - [QUERY]: url.searchParams.get('query') && JSON.parse(url.searchParams.get('query')), - [RESOURCE_ID]: resourceId, - [LIMIT]: 1, - [FIELDS]: url.searchParams.get('fields') && JSON.parse(url.searchParams.get('fields')) - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - if (!responses.find(response => response[STATUS] === 200)) { - writeResponse(404, {}, response); - return; - } - - const results = responses - .map(response => response[DOCUMENTS] || []) - .flat(); - - if (results.length === 0) { - writeResponse(404, {}, response); - return; - } - - writeResponse(200, results[0], response); -} - -module.exports = handleGetOne; diff --git a/lib/actions/http/post.js b/lib/actions/http/post.js deleted file mode 100644 index 2cded77..0000000 --- a/lib/actions/http/post.js +++ /dev/null @@ -1,52 +0,0 @@ -const writeResponse = require('write-response'); -const finalStream = require('final-stream'); - -const selectRandomItemFromArray = require('../../../utils/selectRandomItemFromArray'); -const handleInvalidRequestBody = require('../../handleInvalidRequestBody'); - -const { - COMMAND, - STATUS, - DATA, - DOCUMENT, - POST, - LOCK_ID, - COLLECTION_ID, - LOCK_STRATEGY, - LOCK_STRATEGY_FAIL, - LOCK_STRATEGY_WAIT -} = require('../../constants'); - -async function handlePost (state, request, response, { collectionId }) { - const body = await finalStream(request).then(JSON.parse) - .catch(handleInvalidRequestBody); - - const documents = Array.isArray(body) ? body : [body]; - - const promises = documents.map(document => { - const node = selectRandomItemFromArray(state.nodes); - - return node.connection.send({ - [COMMAND]: POST, - [DATA]: { - [COLLECTION_ID]: collectionId, - [LOCK_ID]: request.headers['x-lock-id'], - [LOCK_STRATEGY]: request.headers['x-lock-strategy'] === 'fail' ? LOCK_STRATEGY_FAIL : LOCK_STRATEGY_WAIT, - [DOCUMENT]: document - } - }); - }); - - const results = await Promise.all(promises); - if (results.length === 1) { - writeResponse(results[0][STATUS], results[0][DOCUMENT] || results[0][DATA], response); - return; - } - - writeResponse(201, results.map(result => ({ - status: result[STATUS], - document: result[DOCUMENT] - })), response); -} - -module.exports = handlePost; diff --git a/lib/actions/ws/getAll.js b/lib/actions/ws/getAll.js deleted file mode 100644 index c310a5b..0000000 --- a/lib/actions/ws/getAll.js +++ /dev/null @@ -1,56 +0,0 @@ -const { - COMMAND, - DATA, - GET, - STATUS, - DOCUMENTS, - LIMIT, - ORDER -} = require('../../constants'); - -const orderByFields = require('../../../utils/orderByFields'); - -function askOnAllNodes (state, data) { - return Promise.all( - state.nodes.map(node => node.connection.send(data)) - ); -} - -async function handleGetAll (acceptId, state, data, socket) { - const responses = await askOnAllNodes(state, { - [COMMAND]: GET, - [DATA]: data - }); - - if (responses.find(response => response[STATUS] >= 500)) { - socket.send(JSON.stringify(['A', acceptId, responses[0]])); - return; - } - - if (!responses.find(response => response[STATUS] === 200)) { - socket.send(JSON.stringify(['A', acceptId, []])); - return; - } - - let results = responses - .map(response => response[DOCUMENTS]) - .flat() - .filter(item => !!item); - - if (data[LIMIT]) { - results = results.slice(0, data[LIMIT]); - } - - if (data[ORDER]) { - data[ORDER].forEach(order => { - orderByFields(results, order); - }); - } - - socket.send(JSON.stringify(['A', acceptId, { - [STATUS]: 200, - [DOCUMENTS]: results - }])); -} - -module.exports = handleGetAll; diff --git a/lib/actions/ws/post.js b/lib/actions/ws/post.js deleted file mode 100644 index 66eb528..0000000 --- a/lib/actions/ws/post.js +++ /dev/null @@ -1,20 +0,0 @@ -const selectRandomItemFromArray = require('../../../utils/selectRandomItemFromArray'); - -const { - COMMAND, - DATA, - POST -} = require('../../constants'); - -async function handlePost (acceptId, state, data, socket) { - const node = selectRandomItemFromArray(state.nodes); - - const result = await node.connection.send({ - [COMMAND]: POST, - [DATA]: data - }); - - socket.send(JSON.stringify(['A', acceptId, result])); -} - -module.exports = handlePost; diff --git a/lib/cli.js b/lib/cli.js old mode 100755 new mode 100644 index f3dd06d..e81ed52 --- a/lib/cli.js +++ b/lib/cli.js @@ -1,111 +1,84 @@ #!/usr/bin/env node -const packageJson = require('../package.json'); +import process from 'process'; +import fs from 'fs'; +import path from 'path'; +import os from 'os'; -const process = require('process'); -const fs = require('fs'); -const os = require('os'); +import logslot from 'logslot'; +import chalk from 'chalk'; +import minimist from 'minimist'; -const npm = require('npm'); -const path = require('path'); +import canhazdb from './index.js'; +import startRepl from './startRepl.js'; -const chalk = require('chalk'); -const argv = require('minimist')(process.argv.slice(2)); +const packageJson = JSON.parse(fs.readFileSync('./package.json', 'utf8')); -const canhazdb = require('./'); +const argv = minimist(process.argv.slice(2)); +const log = logslot('canhazdb.cli'); function showHelp () { console.log(` -The scalable, sharded database engine. +The scalable, sharded, clustered database engine. https://canhazdb.com The following commands and arguments are available when starting Bitabase Arguments: - --node-name optional Unique name for the node in the cluster (default: $HOSTNAME) - --data-dir optional The port to bind the https query server on (default: ./canhazdata) - - --driver optional The driver to use for data storage (default: canhazdb-driver-ejdb) + --host optional The host to bind the server on (default: localhost) + --port optional The port to bind the server on (default: 7060) - --host optional The host to bind the internal and query server on (default: localhost) - --port optional The port to bind the internal server on (default: 7060) - --query-port optional The port to bind the https query server on (default: 8060) + --join optional Join another canhazdb node + --join-from-dns optional Lookup other canhazdb nodes to join from a dns lookup --tls-ca optional The certificate authority to use for the certs - --tls-cert optional The public certificate for the internal and query servers - --tls-key optional The private key for the internal and query servers + --tls-cert optional The public certificate for the server + --tls-key optional The private key for the server - --join optional Join another canhazdb node - --join-from-dns optional Lookup other canhazdb nodes to join from a dns lookup + --node-name optional Unique name for the node in the cluster (default: $HOSTNAME) + --data-dir optional The port to bind the https query server on (default: ./canhazdata) - --single optional Start the node in single none clustered mode + --repl optional Start a repl, allowing you to script in the terminal `.trim() + '\n'); } -console.log(`${chalk.green(chalk.bold(`📦 ${packageJson.name}`))} ${chalk.green(`- v${packageJson.version}`)}`); - -argv.driver = argv.driver || 'canhazdb-driver-ejdb'; +log.info(`${chalk.green(chalk.bold(`📦 ${packageJson.name}`))} ${chalk.green(`- v${packageJson.version}`)}`); if (argv.join) { argv.join = Array.isArray(argv.join) ? argv.join : [argv.join]; } -function installDriver () { - return new Promise((resolve, reject) => { - if (fs.existsSync('./node_modules/' + argv.driver)) { - return resolve(); - } - - npm.load(function (error) { - if (error) { - return reject(error); - } - - npm.commands.install([argv.driver], function (error, data) { - if (error) { - return reject(error); - } - resolve(); - }); - - npm.on('log', function (message) { - console.log(message); - }); - }); - }); -} - process.on('SIGINT', () => { - console.info('Interrupted'); + log.info('Interrupted'); process.exit(0); }); -if (argv.help) { - showHelp(); - process.exit(1); -} else { - installDriver() - .then(() => { - const nodeName = argv['node-name'] || process.env.CANHAZDB_NODE_NAME || os.hostname(); - return canhazdb({ - dataDirectory: argv['data-dir'] || path.resolve(process.cwd(), './canhazdata', nodeName), - nodeName: argv['node-name'], - driver: argv.driver, - host: argv.host || 'localhost', - port: argv.port || 7060, - queryPort: argv['query-port'] || 8060, - tlsCa: argv['tls-ca'], - tlsCert: argv['tls-cert'], - tlsKey: argv['tls-key'], - join: argv.join, - joinFromDns: argv['join-from-dns'], - single: argv.single - }); - }).then(node => { - console.log(''); - console.log(`${chalk.cyan('internal server')}: ${node.host}:${node.port}`); - console.log(`${chalk.cyan('query server')}: ${node.url}`); - }).catch(error => { - console.log(error); - process.exit(1); - }); +async function main () { + if (argv.help) { + showHelp(); + process.exit(1); + } + + const nodeName = argv['node-name'] || process.env.CANHAZDB_NODE_NAME || os.hostname(); + const node = await canhazdb({ + dataDirectory: argv['data-dir'] || path.resolve(process.cwd(), './canhazdata', nodeName), + nodeName: argv['node-name'], + host: argv.host || 'localhost', + port: argv.port || 7060, + tlsCa: argv['tls-ca'], + tlsCert: argv['tls-cert'], + tlsKey: argv['tls-key'], + join: argv.join, + joinFromDns: argv['join-from-dns'] + }).catch(error => { + log.error(error); + process.exit(1); + }); + + log.info(`${chalk.cyan('internal server')}: ${node.options.host}:${node.options.port}`); + + if (argv.repl) { + startRepl(node); + } } + +main(); diff --git a/lib/constants.js b/lib/constants.js index 8a11c99..1d10026 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -1,32 +1,37 @@ -let commandIndex = 0; - const constants = { - COMMAND: commandIndex++, - STATUS: commandIndex++, - DOCUMENT: commandIndex++, - DOCUMENTS: commandIndex++, - DATA: commandIndex++, - INFO: commandIndex++, - NOTIFY_ON: commandIndex++, - NOTIFY_OFF: commandIndex++, - LOCK: commandIndex++, - UNLOCK: commandIndex++, - COUNT: commandIndex++, - GET: commandIndex++, - POST: commandIndex++, - PUT: commandIndex++, - PATCH: commandIndex++, - DELETE: commandIndex++, - LOCK_ID: commandIndex++, - LOCK_STRATEGY: commandIndex++, - LOCK_STRATEGY_FAIL: commandIndex++, - LOCK_STRATEGY_WAIT: commandIndex++, - COLLECTION_ID: commandIndex++, - RESOURCE_ID: commandIndex++, - QUERY: commandIndex++, - FIELDS: commandIndex++, - LIMIT: commandIndex++, - ORDER: commandIndex++ + COMMAND: 0, + STATUS: 1, + + INTERNAL: 2, + + COLLECTION_ID: 3, + RESOURCE_ID: 4, + + DATA: 5, + REPLICATED_NODES: 6, + + INFO: 7, + COUNT: 8, + GET: 9, + POST: 10, + PUT: 11, + PATCH: 12, + DELETE: 13, + + QUERY: 14, + FIELDS: 15, + LIMIT: 16, + ORDER: 17, + + NOTIFY_ON: 18, + NOTIFY_OFF: 19, + + LOCK: 20, + UNLOCK: 21, + LOCK_ID: 22, + LOCK_STRATEGY: 23, + LOCK_STRATEGY_FAIL: 24, + LOCK_STRATEGY_WAIT: 25 }; if (process.env.NODE_ENV === 'development') { @@ -35,4 +40,4 @@ if (process.env.NODE_ENV === 'development') { }); } -module.exports = constants; +export default constants; diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js new file mode 100644 index 0000000..2785c6a --- /dev/null +++ b/lib/controllers/external/get.js @@ -0,0 +1,22 @@ +import c from '../../constants.js'; + +async function getController (context, socketState, request, response) { + const results = await Promise.all( + context.nodes.map(node => { + return node.client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], + [c.INTERNAL]: true + }); + }) + ); + + const documents = results.flatMap(result => result[c.DATA]); + + response.reply({ + [c.STATUS]: 200, + [c.DATA]: documents + }); +} + +export default getController; diff --git a/lib/controllers/external/info.js b/lib/controllers/external/info.js new file mode 100644 index 0000000..bbdd34c --- /dev/null +++ b/lib/controllers/external/info.js @@ -0,0 +1,22 @@ +import c from '../../constants.js'; + +async function infoController (context, socketState, request, response) { + response.reply({ + [c.STATUS]: 200, + [c.DATA]: { + nodeName: context.options.nodeName, + nodes: context.nodes.map(node => ({ + host: node.host, + port: node.port + })) + } + }); + + if (request.data[c.DATA] && request.data[c.DATA].nodes) { + request.data[c.DATA].nodes.forEach(node => { + context.join(context, node.host, node.port); + }); + } +} + +export default infoController; diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js new file mode 100644 index 0000000..a7eaa81 --- /dev/null +++ b/lib/controllers/external/post.js @@ -0,0 +1,34 @@ +import c from '../../constants.js'; +import { v4 as uuid } from 'uuid'; +import selectRandomItemsFromArray from '../../utils/selectRandomItemsFromArray.js'; + +async function postController (context, socketState, request, response) { + const nodes = selectRandomItemsFromArray( + context.nodes, + Math.min(context.settings.replicas, context.nodes.length) + ); + + const document = { + ...request.data[c.DATA], + id: uuid() + }; + + const results = await Promise.all( + nodes.map(node => { + return node.client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], + [c.REPLICATED_NODES]: nodes.map(node => node.name), + [c.DATA]: document, + [c.INTERNAL]: true + }); + }) + ); + + response.reply({ + [c.STATUS]: 201, + [c.DATA]: document + }); +} + +export default postController; diff --git a/lib/controllers/index.js b/lib/controllers/index.js new file mode 100644 index 0000000..c563b18 --- /dev/null +++ b/lib/controllers/index.js @@ -0,0 +1,26 @@ +import c from '../constants.js'; + +const controllers = { + internal: { + [c.INFO]: './internal/info.js', + [c.POST]: './internal/post.js', + [c.GET]: './internal/get.js' + }, + external: { + [c.INFO]: './external/info.js', + [c.POST]: './external/post.js', + [c.GET]: './external/get.js' + } +}; + +async function getController (origin, command) { + const controllerFile = controllers[origin][command]; + if (!controllerFile) { + return; + } + + const controllerModule = await import(controllerFile); + return controllerModule.default; +} + +export default getController; diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js new file mode 100644 index 0000000..0ae2c55 --- /dev/null +++ b/lib/controllers/internal/get.js @@ -0,0 +1,32 @@ +import c from '../../constants.js'; + +async function internalGetController (context, socketState, request, response) { + const data = request.data[c.DATA]; + const collectionId = request.data[c.COLLECTION_ID]; + const query = request.data[c.QUERY]; + const fields = request.data[c.FIELDS]; + const order = request.data[c.ORDER]; + const limit = request.data[c.LIMIT]; + + const documents = await context.driver.get(collectionId, query, fields, order, limit); + + // Logic: Only return the document if we are + // the first replica that's available + const connectedNodes = context.nodes.filter(node => node.connected); + const documentsWhereFirstReplica = documents.filter(document => { + const availableReplicatedNodes = document._replicatedNodes.filter(nodeName => { + return !!connectedNodes.find(cnode => cnode.name === nodeName); + }); + + if (availableReplicatedNodes[0] === context.thisNode.name) { + return true; + } + }); + + response.reply({ + [c.STATUS]: 200, + [c.DATA]: documentsWhereFirstReplica + }); +} + +export default internalGetController; diff --git a/lib/controllers/internal/info.js b/lib/controllers/internal/info.js new file mode 100644 index 0000000..bbdd34c --- /dev/null +++ b/lib/controllers/internal/info.js @@ -0,0 +1,22 @@ +import c from '../../constants.js'; + +async function infoController (context, socketState, request, response) { + response.reply({ + [c.STATUS]: 200, + [c.DATA]: { + nodeName: context.options.nodeName, + nodes: context.nodes.map(node => ({ + host: node.host, + port: node.port + })) + } + }); + + if (request.data[c.DATA] && request.data[c.DATA].nodes) { + request.data[c.DATA].nodes.forEach(node => { + context.join(context, node.host, node.port); + }); + } +} + +export default infoController; diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js new file mode 100644 index 0000000..4550e36 --- /dev/null +++ b/lib/controllers/internal/post.js @@ -0,0 +1,27 @@ +import c from '../../constants.js'; + +async function postController (context, socketState, request, response) { + const data = request.data[c.DATA]; + const collectionId = request.data[c.COLLECTION_ID]; + const replicatedNodes = request.data[c.REPLICATED_NODES]; + const lockId = request.data[c.LOCK_ID]; + const waitForUnlock = request.data[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; + + // if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + // throw Object.assign(new Error('lock prevented change'), { status: 409 }); + // } + + data._replicatedNodes = replicatedNodes.sort(); + const document = await context.driver.post(collectionId, data); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply({ + [c.STATUS]: 201, + [c.DATA]: document + }); +} + +export default postController; diff --git a/lib/createCollectionMetadataUpdater.js b/lib/createCollectionMetadataUpdater.js deleted file mode 100644 index 88515e1..0000000 --- a/lib/createCollectionMetadataUpdater.js +++ /dev/null @@ -1,67 +0,0 @@ -const debarrel = require('debarrel'); - -async function upsertRecord (driver, collectionId, changes) { - const collection = (await driver.get('system.collections', { collectionId }))[0]; - if (collection) { - await driver.patch('system.collections', { - documentCount: collection.documentCount + changes.documentCountAdd - }, { - collectionId - }); - } else { - await driver.post('system.collections', { - collectionId, - documentCount: changes.documentCountAdd - }); - } -} - -function createCollectionMetadataUpdater (state) { - const cache = {}; - let processing = false; - - async function processCache (driver, cache) { - if (state.closed) { - return; - } - - if (processing) { - setTimeout(() => processCache(driver, cache), 25); - return; - } - - processing = true; - - const promises = Object.keys(cache).map(async collectionId => { - const promise = upsertRecord(driver, collectionId, cache[collectionId]).catch((error) => { - if (!state.closed) { - throw error; - } - }); - delete cache[collectionId]; - return promise; - }); - - await Promise.all(promises); - - processing = false; - } - - const watch = debarrel( - () => processCache(state.driver, cache), - { - minimumFlushTime: 25, - maximumFlushTime: 100 - } - ); - - return watch((collectionId, change) => { - const collectionMetadata = cache[collectionId] = cache[collectionId] || { - documentCountAdd: 0 - }; - - collectionMetadata.documentCountAdd = collectionMetadata.documentCountAdd + change.documentCountAdd; - }); -} - -module.exports = createCollectionMetadataUpdater; diff --git a/lib/createHandler.js b/lib/createHandler.js new file mode 100644 index 0000000..ef3d9aa --- /dev/null +++ b/lib/createHandler.js @@ -0,0 +1,48 @@ +import logslot from 'logslot'; + +import tcpocket from 'tcpocket'; + +import getController from './controllers/index.js'; +import c from './constants.js'; + +const log = logslot('canhazdb.handler'); + +function createHandler (context) { + const { port, tls } = context.options; + + return tcpocket.createServer({ port, ...tls }, async function (request, response) { + // const remoteString = request.socket.remoteAddress + ':' + request.socket.remotePort; + // logslot('canhazdb.comms').debug('received request ' + remoteString, { + // data: request.data + // }); + + const socketState = { + send: response.send, + notifiers: [] + }; + + if (!request.data) { + response.reply({ + [c.STATUS]: 400 + }); + return; + } + + const origin = request.data[c.INTERNAL] ? 'internal' : 'external'; + const controller = await getController(origin, request.data[c.COMMAND]); + + if (!controller) { + response.reply({ + [c.STATUS]: 404 + }); + return; + } + + return controller(context, socketState, request, response) + .catch(error => { + log.error('controller error', error); + }); + }); +} + +export default createHandler; diff --git a/lib/driver/index.js b/lib/driver/index.js new file mode 100644 index 0000000..a3522d8 --- /dev/null +++ b/lib/driver/index.js @@ -0,0 +1,198 @@ +import path from 'path'; +import fs from 'fs/promises'; +import { EJDB2 } from 'node-ejdb-lite'; +import mqlToJql from 'mql-to-jql'; + +const convert = mqlToJql.convert; +const createQuery = mqlToJql.createQuery; + +function createEjdbDriver (state) { + let connections = {}; + let closing; + + fs.mkdir(state.options.dataDirectory, { recursive: true }) + .catch(error => { + console.log('could not make dataDirectory', state.options.dataDirectory); + throw error; + }); + + async function getDatabaseConnection (collectionId) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + if (connections[collectionId]) { + return connections[collectionId]; + } + const dbFile = path.join(state.options.dataDirectory, './' + collectionId + '.db'); + + connections[collectionId] = EJDB2.open(dbFile); + return connections[collectionId]; + } + + async function count (collectionId, query) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + const ejdbQuery = convert({ query }); + + const queryWithCount = { + mql: ejdbQuery.mql + ' | count', + values: ejdbQuery.values + }; + + const db = await getDatabaseConnection(collectionId); + const q = createQuery(db, collectionId, queryWithCount); + + const count = await q.scalarInt(); + + return count; + } + + async function get (collectionId, query, fields, order, limit) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + if (fields && !fields.includes('id')) { + fields.push('id'); + } + + const ejdbQuery = convert({ query, fields, order, limit }); + + const db = await getDatabaseConnection(collectionId); + const q = createQuery(db, collectionId, ejdbQuery); + const list = await q.list(); + + return list.map(item => item.json); + } + + async function post (collectionId, document) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + const db = await getDatabaseConnection(collectionId); + + const insertableRecord = { + ...document + }; + + await Promise.all(Object.keys(document).map(field => { + return db.ensureStringIndex(collectionId, '/' + field, false); + })); + + await db.put(collectionId, JSON.stringify(insertableRecord)); + + return insertableRecord; + } + + async function put (collectionId, document, query) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + const ejdbQuery = convert({ query }); + + const db = await getDatabaseConnection(collectionId); + const q = createQuery(db, collectionId, ejdbQuery); + const records = await q.list(); + + await Promise.all(Object.keys(document).map(field => { + return db.ensureStringIndex(collectionId, '/' + field, false); + })); + + const promises = records.map(async record => { + const insertableRecord = { + ...document, + id: record.json.id + }; + + return db.put(collectionId, JSON.stringify(insertableRecord), record.id); + }); + + await Promise.all(promises); + + return { changes: promises.length }; + } + + async function patch (collectionId, document, query) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + const ejdbQuery = convert({ query }); + + const db = await getDatabaseConnection(collectionId); + const q = createQuery(db, collectionId, ejdbQuery); + const records = await q.list(); + + await Promise.all(Object.keys(document).map(field => { + return db.ensureStringIndex(collectionId, '/' + field, false); + })); + + const promises = records.map(async record => { + const parsed = record.json; + + const insertableRecord = { + ...parsed, + ...document, + id: parsed.id + }; + + return db.patch(collectionId, JSON.stringify(insertableRecord), record.id); + }); + + await Promise.all(promises); + + return { changes: promises.length }; + } + + async function del (collectionId, query) { + if (closing) { + throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); + } + + const ejdbQuery = convert({ query }); + + const db = await getDatabaseConnection(collectionId); + const q = createQuery(db, collectionId, ejdbQuery); + const records = await q.list(); + const promises = records.map(async record => { + return db.del(collectionId, record.id); + }); + + await Promise.all(promises); + + return { changes: promises.length }; + } + + function open () { + closing = false; + } + + async function close () { + closing = true; + for (const connection in connections) { + if (connections[connection]) { + await (await connections[connection]).close(); + } + } + connections = {}; + } + + return { + count, + get, + put, + post, + patch, + del, + + open, + close + }; +} + +export default createEjdbDriver; diff --git a/lib/handleInvalidRequestBody.js b/lib/handleInvalidRequestBody.js deleted file mode 100644 index 800799f..0000000 --- a/lib/handleInvalidRequestBody.js +++ /dev/null @@ -1,9 +0,0 @@ -function handleInvalidRequestBody (error) { - if (error.message.includes('Unexpected token')) { - throw Object.assign(new Error('request body not valid json'), { statusCode: 400 }); - } else { - throw Object.assign(new Error('empty request body not allowed'), { statusCode: 400 }); - } -} - -module.exports = handleInvalidRequestBody; diff --git a/lib/httpHandler.js b/lib/httpHandler.js deleted file mode 100644 index 672c547..0000000 --- a/lib/httpHandler.js +++ /dev/null @@ -1,402 +0,0 @@ -const writeResponse = require('write-response'); -const finalStream = require('final-stream'); -const uuid = require('uuid').v4; - -const packageJson = require('../package.json'); - -const validateAlphaNumericDashDot = require('../utils/validateAlphaNumericDashDot'); - -const handlePost = require('./actions/http/post'); -const handleGetAll = require('./actions/http/getAll'); -const handleGetOne = require('./actions/http/getOne'); - -function handleInvalidRequestBody (error) { - if (error.message.includes('Unexpected token')) { - throw Object.assign(new Error('request body not valid json'), { statusCode: 400 }); - } else { - throw Object.assign(new Error('empty request body not allowed'), { statusCode: 400 }); - } -} - -const { - COMMAND, - STATUS, - DATA, - DOCUMENT, - LOCK, - UNLOCK, - COUNT, - PUT, - PATCH, - DELETE, - COLLECTION_ID, - RESOURCE_ID, - QUERY -} = require('./constants'); - -function askOnAllNodes (state, data) { - return Promise.all( - state.nodes.map(node => node.connection.send(data)) - ); -} - -function accumulateChanges (responses) { - return responses.reduce((accumulator, response) => { - if (!response[DATA]) { - return accumulator; - } - - accumulator = accumulator + response[DATA].changes; - return accumulator; - }, 0); -} - -async function handleCount (state, request, response, { collectionId, url }) { - const responses = await askOnAllNodes(state, { - [COMMAND]: COUNT, - [DATA]: { - [COLLECTION_ID]: collectionId, - [QUERY]: url.searchParams.get('query') && JSON.parse(url.searchParams.get('query')) - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - if (!responses.find(response => response[STATUS] === 200)) { - writeResponse(200, { documentCount: 0 }, response); - return; - } - - const documentCount = responses - .reduce((total, response) => { - if (response[STATUS] !== 200) { - return total; - } - - return total + response[DATA].documentCount; - }, 0); - - writeResponse(200, { documentCount }, response); -} - -async function handlePutOne (state, request, response, { collectionId, resourceId }) { - const body = await finalStream(request).then(JSON.parse) - .catch(handleInvalidRequestBody); - - const responses = await askOnAllNodes(state, { - [COMMAND]: PUT, - [DATA]: { - [COLLECTION_ID]: collectionId, - [RESOURCE_ID]: resourceId, - [DOCUMENT]: body - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - const result = responses.find(response => response[STATUS] === 200); - - if (!result) { - writeResponse(404, {}, response); - return; - } - - writeResponse(200, result, response); -} - -async function handlePutAll (state, request, response, { collectionId, url }) { - const body = await finalStream(request).then(JSON.parse) - .catch(handleInvalidRequestBody); - - const responses = await askOnAllNodes(state, { - [COMMAND]: PUT, - [DATA]: { - [COLLECTION_ID]: collectionId, - [QUERY]: url.searchParams.get('query') && JSON.parse(url.searchParams.get('query')), - [DOCUMENT]: body - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - const changes = accumulateChanges(responses); - - writeResponse(200, { changes }, response); -} - -async function handlePatchOne (state, request, response, { collectionId, resourceId }) { - const body = await finalStream(request).then(JSON.parse) - .catch(handleInvalidRequestBody); - - const responses = await askOnAllNodes(state, { - [COMMAND]: PATCH, - [DATA]: { - [COLLECTION_ID]: collectionId, - [RESOURCE_ID]: resourceId, - [DOCUMENT]: body - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - const result = responses.find(response => response[STATUS] === 200); - - if (!result) { - writeResponse(404, {}, response); - return; - } - - writeResponse(200, result, response); -} - -async function handlePatchAll (state, request, response, { collectionId, url }) { - const body = await finalStream(request).then(JSON.parse) - .catch(handleInvalidRequestBody); - - const responses = await askOnAllNodes(state, { - [COMMAND]: PATCH, - [DATA]: { - [COLLECTION_ID]: collectionId, - [QUERY]: url.searchParams.get('query') && JSON.parse(url.searchParams.get('query')), - [DOCUMENT]: body - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - const changes = accumulateChanges(responses); - - writeResponse(200, { changes }, response); -} - -async function handleDeleteOne (state, request, response, { collectionId, resourceId }) { - const responses = await askOnAllNodes(state, { - [COMMAND]: DELETE, - [DATA]: { - [COLLECTION_ID]: collectionId, - [RESOURCE_ID]: resourceId - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - const changes = accumulateChanges(responses); - - if (changes === 0) { - writeResponse(404, {}, response); - return; - } - - writeResponse(200, {}, response); -} - -async function handleDeleteAll (state, request, response, { collectionId, url }) { - const responses = await askOnAllNodes(state, { - [COMMAND]: DELETE, - [DATA]: { - [COLLECTION_ID]: collectionId, - [QUERY]: url.searchParams.get('query') && JSON.parse(url.searchParams.get('query')) - } - }); - - if (responses.find(response => response[STATUS] >= 500)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - const changes = accumulateChanges(responses); - - writeResponse(200, { changes }, response); -} - -async function handleLock (state, request, response) { - const body = await finalStream(request).then(JSON.parse); - - const id = uuid(); - const responses = await askOnAllNodes(state, { - [COMMAND]: LOCK, - [DATA]: { - id, - keys: body - } - }); - - if (responses.find(response => response[STATUS] !== 200)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - writeResponse(200, { id }, response); -} - -async function handleUnlock (state, request, response, { resourceId }) { - const responses = await askOnAllNodes(state, { - [COMMAND]: UNLOCK, - [DATA]: { - id: resourceId - } - }); - - if (responses.find(response => response[STATUS] === 404)) { - writeResponse(404, {}, response); - return; - } - - if (responses.find(response => response[STATUS] !== 200)) { - writeResponse(500, responses[0][DATA], response); - return; - } - - writeResponse(200, {}, response); -} - -function handleError (request, response) { - return error => { - if (error.statusCode) { - writeResponse(error.statusCode, { error: error.message }, response); - return; - } - - console.log(error); - writeResponse(500, { error: 'unexpected server error' }, response); - }; -} - -function handleSystem (state, request, response, { url }) { - const [,, collectionId, resourceId] = url.pathname.split('/'); - - if (request.method === 'POST' && collectionId === 'locks') { - handleLock(state, request, response); - return; - } - - if (request.method === 'DELETE' && collectionId === 'locks') { - handleUnlock(state, request, response, { resourceId }); - return; - } - - response.writeHead(404); - response.end(); -} - -function handleExternal (state, request, response) { - const url = new URL(request.url, 'http://localhost'); - - if (request.url.startsWith('/_')) { - handleSystem(state, request, response, { url }); - return; - } - - const [, collectionId, resourceId] = url.pathname.split('/'); - - if (collectionId && !validateAlphaNumericDashDot(collectionId)) { - writeResponse(422, { - errors: ['collectionId can only contain a-z, A-Z, 0-9, dashs or dots'] - }, response); - return; - } - - const unhealthyNodes = state.nodes.filter(node => node.status !== 'healthy'); - if (unhealthyNodes.length > 0) { - writeResponse(503, { - errors: ['a node in the cluster is unhealthy, therefore the database is down'] - }, response); - return; - } - - if (request.method === 'GET' && url.pathname === '/') { - writeResponse(200, { - status: 200, - name: packageJson.name, - version: packageJson.version, - info: 'https://canhazdb.com' - }, response); - return; - } else if (url.pathname === '/') { - writeResponse(405, { error: 'method not allowed' }, response); - return; - } - - if (request.method === 'GET' && resourceId) { - handleGetOne(state, request, response, { collectionId, resourceId, url }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'GET' && url.searchParams.get('count') && !resourceId) { - handleCount(state, request, response, { collectionId, url }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'GET' && !resourceId) { - handleGetAll(state, request, response, { collectionId, url }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'POST') { - handlePost(state, request, response, { collectionId, resourceId }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'PUT' && resourceId) { - handlePutOne(state, request, response, { collectionId, resourceId }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'PUT' && !resourceId) { - handlePutAll(state, request, response, { collectionId, url }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'PATCH' && resourceId) { - handlePatchOne(state, request, response, { collectionId, resourceId }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'PATCH' && !resourceId) { - handlePatchAll(state, request, response, { collectionId, url }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'DELETE' && resourceId) { - handleDeleteOne(state, request, response, { collectionId, resourceId }) - .catch(handleError(request, response)); - return; - } - - if (request.method === 'DELETE' && !resourceId) { - handleDeleteAll(state, request, response, { collectionId, url }) - .catch(handleError(request, response)); - return; - } - - response.writeHead(404); - response.end(); -} - -module.exports = handleExternal; diff --git a/lib/index.js b/lib/index.js index e38b779..551e74b 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,267 +1,187 @@ -const path = require('path'); -const fs = require('fs'); -const os = require('os'); -const dns = require('dns').promises; - -const chalk = require('chalk'); -const tcpocket = require('tcpocket'); -const enableDestroy = require('server-destroy'); -const getPort = require('get-port'); - -const httpHandler = require('./httpHandler'); -const tcpHandler = require('./tcpHandler'); -const wsHandler = require('./wsHandler'); - -const { COMMAND, INFO, DATA } = require('./constants'); - -async function prepareOptions (rawOptions) { - const options = { - ...rawOptions, - log: (rawOptions.logger || console.log), - join: rawOptions.join || [], - single: rawOptions.single - }; +import logslot from 'logslot'; +import tcpocket from 'tcpocket'; - options.port = options.port ? parseInt(options.port) : await getPort(); - options.queryPort = options.queryPort ? parseInt(options.queryPort) : await getPort(); +import prepareOptions from './prepareOptions.js'; +import createHandler from './createHandler.js'; +import waitUntil from './utils/waitUntil.js'; - if (rawOptions.joinFromDns) { - const dnsLookupResults = await dns.lookup(rawOptions.joinFromDns, { all: true }); - console.log('joining from dns:', dnsLookupResults); - options.join = dnsLookupResults.map(item => `${item.address}:${options.port}`); - } +import c from './constants.js'; - if (options.join.length > 0 && options.single) { - throw new Error('Can not start canhazdb in both single mode and attempt to join other nodes.'); - } - - if (!options.join || options.join.length === 0) { - if (options.single) { - options.join = [`${rawOptions.host}:${options.port}`]; - } else { - throw new Error('You must start canhazdb in --single mode or join it to another node and itself'); - } - } +const log = logslot('canhazdb.server'); - if (rawOptions.tlsCa || rawOptions.tlsCert || rawOptions.tlsKey) { - if (!rawOptions.tlsCa || !rawOptions.tlsCert || !rawOptions.tlsKey) { - console.log(chalk.red('You must specifiy either all [tls-key, tls-cert, tls-ca] or none of them')); - return; - } +async function persistNode (context, node) { + const existingRecords = await context.driver.get('system.nodes', { + name: node.name + }); - options.tls = { - key: fs.readFileSync(rawOptions.tlsKey), - cert: fs.readFileSync(rawOptions.tlsCert), - ca: [fs.readFileSync(rawOptions.tlsCa)], - requestCert: true - }; + if (existingRecords.length === 0) { + await context.driver.post('system.nodes', { + name: node.name, + host: node.host, + port: node.port + }); } - options.driver = process.env.CANHAZDB_DRIVER || rawOptions.driver || 'canhazdb-driver-ejdb'; - options.nodeName = options.nodeName || process.env.CANHAZDB_NODE_NAME || os.hostname(); - options.dataDirectory = rawOptions.dataDirectory - ? path.resolve(rawOptions.dataDirectory, options.nodeName) - : path.resolve(process.cwd(), './canhazdata', options.nodeName); - - return options; + node.persisted = true; } -async function makeConnection (scope, host, port, tls, node) { - if (scope.closed) { - return; +function join (context, host, port) { + if (!port) { + throw new Error('could not join node without a port'); } - if (node.connection) { - // console.log('Aborting connection to ', host, port, 'as already connected'); - return; - } + port = parseInt(port); - node.status = 'unhealthy'; + const servername = context.options.joinFromDns; - node.reconnect = () => { - if (scope.closed) { - return; - } + const existingNode = context.nodes.find(node => node.host === host && node.port === port); + if (existingNode) { + return; + } - clearTimeout(node.reconnectionTimer); + log.info('joining node', { host, port }); - node.reconnectionTimer = setTimeout(() => { - delete node.reconnectionTimer; - makeConnection(scope, host, port, tls, node); - }, 1000); + const node = { + connected: false, + host, + port, + client: tcpocket.createClient({ + host, + port, + servername, + ...context.options.tls + }) }; function handleError (error) { + node.connected = false; if (['CLOSED', 'ECONNREFUSED', 'EHOSTUNREACH', 'ECONNRESET'].includes(error.code)) { - node.status = 'unhealthy'; - delete node.connection; - node.reconnect(); + if (node.closing) { + return; + } + + join(context, host, port); return; } throw error; } - try { - const servername = scope.options.joinFromDns; - - const client = await tcpocket.createClient({ host, port, servername, ...tls }); - scope.clients.push(client); - node.status = 'healthy'; - - client.on('message', data => { - scope.handleMessage && scope.handleMessage(data); - }); - - client.on('close', () => { - handleError(Object.assign(new Error('client closed'), { code: 'CLOSED' })); - }); - - client.on('error', handleError); - - node.connection = client; + // node.client.on('message', data => { + // logslot('canhazdb.comms').debug('node message received', { data }); + // }); - return client; - } catch (error) { - handleError(error); - } -} + node.client.on('connect', () => { + node.connected = true; + }); -async function join (scope, { host, port }, alreadyRecursed) { - port = parseInt(port); + node.client.on('close', () => { + handleError(Object.assign(new Error('client closed'), { code: 'CLOSED' })); + }); - if (scope.nodes.find(node => node.host === host && node.port === port)) { - return; - } + node.client.on('error', handleError); - if (!scope.options.single) { - scope.log(` joining ${host}:${port}`); - } + context.nodes = context.nodes.filter(i => { + return !(i.host === host && i.port === port); + }); - const newNode = { - host, - port + node.close = () => { + node.closing = true; + return node.client.close(); }; - scope.nodes.push(newNode); - - await makeConnection(scope, host, port, scope.options.tls, newNode); - - try { - newNode.info = await newNode.connection.send({ - [COMMAND]: INFO, - [DATA]: { - nodes: scope.nodes.map(node => ({ host: node.host, port: node.port })) - } - }); - if (!alreadyRecursed) { - const otherJoins = newNode.info[DATA].nodes.map(node => { - return join(scope, { ...node }, true); - }); - - await Promise.all(otherJoins); - } - } catch (error) { - console.log('could not connect to new node', newNode.host, newNode.port); - console.log(' ', error.message); - } + context.nodes.push(node); + context.nodes.sort(); } async function canhazdb (rawOptions) { const options = await prepareOptions(rawOptions); + log.debug('parsed options', options); - const scope = { - options, - log: options.log, - - url: `${options.tls ? 'https' : 'http'}://` + options.host + ':' + options.queryPort, - wsUrl: `${options.tls ? 'wss' : 'ws'}://` + options.host + ':' + options.queryPort, - - host: options.host, - port: options.port, - queryPort: options.queryPort, - + const context = { + closed: false, clients: [], + settings: { + replicas: 3 + }, nodes: [], - - data: {} + join, + options }; - scope.driver = require(options.driver)(scope); + context.driver = (await import('./driver/index.js')).default(context); - const tcpServer = tcpHandler(scope, options.port, options.tls); + const tcpServer = createHandler(context); tcpServer.open(); - let server; - if (options.tls) { - server = require('https').createServer(options.tls, httpHandler.bind(null, scope)); - } else { - server = require('http').createServer(httpHandler.bind(null, scope)); - } - enableDestroy(server); - - const wss = wsHandler(server, scope, options); - - options.join.forEach(async item => { + context.options.join.forEach(item => { const [host, port] = item.split(':'); - await join(scope, { host, port }); + join(context, host, port); }); - if (options.joinFromDns) { - async function dnsLookups () { - if (scope.closed) { - return; - } + const persistedNodes = await context.driver.get('system.nodes'); + persistedNodes.forEach(node => { + join(context, node.host, node.port); + }); - const dnsLookupResults = await dns.lookup(rawOptions.joinFromDns, { all: true }); - dnsLookupResults.forEach(async item => { - join(scope, { host: item.address, port: options.port }); - }); + function syncNodesInfo () { + if (context.closed) { + return; } - setInterval(dnsLookups, 5000); - } - scope.join = join.bind(null, scope); + context.nodes.forEach(async node => { + node.info = await node.client.send({ + [c.COMMAND]: c.INFO, + [c.DATA]: { + nodes: context.nodes.map(node => ({ + host: node.host, + port: node.port + })) + }, + [c.INTERNAL]: true + }); + + if (!node.info[c.STATUS] === 200) { + return; + } + + node.name = node.info[c.DATA].nodeName; - const serverReturn = { - ...scope, + persistNode(context, node); + }); - open: async () => { - delete scope.closed; - const openPromise = new Promise((resolve) => { - server.once('listening', async () => { - scope.nodes.forEach(node => node.reconnect()); + context.syncNodesInfoTimer = setTimeout(syncNodesInfo, 5000); + } + syncNodesInfo(); - resolve(serverReturn); - }); - }); - tcpServer.close(); - tcpServer.open(); - scope.driver.open && scope.driver.open(); - server.listen(options.queryPort); + await waitUntil(() => { + const nodesWithName = context.nodes.filter(node => node.persisted); + return context.nodes.length === nodesWithName.length; + }); - return openPromise; - }, + context.close = async function () { + context.closed = true; - close: async () => { - scope.closed = true; + // scope.locks.cancel(); + clearTimeout(context.syncNodesInfoTimer); - scope.locks.cancel(); + await Promise.all(context.nodes.map(node => { + return node.close(); + })); - await Promise.all(scope.clients.map(node => { - return node.close(); - })); + await context.driver.close(); + await tcpServer.close(); + }; - server.destroy(); - wss.close(); - tcpServer.close(); - scope.driver.close(); - } + context.clientConfig = { + host: context.options.host, + port: context.options.port, + ...context.options.tls }; - await serverReturn.open(); + context.thisNode = context.nodes.find(node => node.name === context.options.nodeName); - return serverReturn; + return context; } -module.exports = canhazdb; +export default canhazdb; diff --git a/lib/prepareOptions.js b/lib/prepareOptions.js new file mode 100644 index 0000000..9d0f616 --- /dev/null +++ b/lib/prepareOptions.js @@ -0,0 +1,43 @@ +import dns from 'dns'; +import os from 'os'; +import fs from 'fs'; +import path from 'path'; + +async function prepareOptions (rawOptions) { + const options = { + ...rawOptions, + join: rawOptions.join || [] + }; + + options.nodeName = rawOptions.nodeName || process.env.CANHAZDB_NODE_NAME || os.hostname(); + options.port = parseInt(options.port); + + if (rawOptions.joinFromDns) { + const dnsLookupResults = await dns.promises.lookup(rawOptions.joinFromDns, { all: true }); + console.log('joining from dns:', { dnsLookupResults }); + options.join = dnsLookupResults.map(item => `${item.address}:${options.port}`); + } else { + options.join.push(`${rawOptions.host}:${options.port}`); + } + + if (rawOptions.tlsCa || rawOptions.tlsCert || rawOptions.tlsKey) { + if (!rawOptions.tlsCa || !rawOptions.tlsCert || !rawOptions.tlsKey) { + console.log('You must specifiy either all [tls-key, tls-cert, tls-ca] or none of them'); + return; + } + + options.tls = { + key: fs.readFileSync(rawOptions.tlsKey), + cert: fs.readFileSync(rawOptions.tlsCert), + ca: [fs.readFileSync(rawOptions.tlsCa)], + requestCert: true + }; + } + + options.dataDirectory = rawOptions.dataDirectory || + path.resolve(process.cwd(), './canhazdata', options.nodeName); + + return options; +} + +export default prepareOptions; diff --git a/lib/startRepl.js b/lib/startRepl.js new file mode 100644 index 0000000..13ded90 --- /dev/null +++ b/lib/startRepl.js @@ -0,0 +1,22 @@ +import repl from 'repl'; +import c from './constants.js'; + +async function startRepl (context) { + console.log('\nInteractive REPL:'); + process.on('unhandledRejection', (error) => { + console.log(error); + const r = repl.start('> '); + + Object.assign(r.context, { context }); + Object.assign(r.context, c); + Object.assign(r.context, { c }); + }); + + const r = repl.start('> '); + + Object.assign(r.context, { context }); + Object.assign(r.context, c); + Object.assign(r.context, { c }); +} + +export default startRepl; diff --git a/lib/tcpHandler.js b/lib/tcpHandler.js deleted file mode 100644 index 4d767d4..0000000 --- a/lib/tcpHandler.js +++ /dev/null @@ -1,332 +0,0 @@ -const tcpocket = require('tcpocket'); -const lockbase = require('lockbase'); - -const createCollectionMetadataUpdater = require('./createCollectionMetadataUpdater'); - -const { - COMMAND, - STATUS, - DATA, - DOCUMENT, - DOCUMENTS, - INFO, - NOTIFY_ON, - NOTIFY_OFF, - LOCK, - LOCK_STRATEGY, - LOCK_STRATEGY_FAIL, - UNLOCK, - COUNT, - GET, - POST, - PUT, - PATCH, - DELETE, - LOCK_ID, - COLLECTION_ID, - RESOURCE_ID, - QUERY, - FIELDS, - LIMIT, - ORDER -} = require('./constants'); - -function getKeyByValue (object, value) { - return Object.keys(object).find(key => object[key] === value); -} - -function handleError (type, request, response, error) { - const data = (request.data && request.data[DATA]) || {}; - const collectionId = data[COLLECTION_ID]; - const resourceId = data[RESOURCE_ID]; - const query = data[QUERY]; - const fields = data[FIELDS]; - const order = data[ORDER]; - const limit = data[LIMIT]; - - response.reply({ - [STATUS]: error.status || 500, - [DATA]: { - error: error.message, - type: getKeyByValue(require('./constants'), type), - collectionId, - resourceId, - query, - fields, - order, - limit - } - }); -} - -async function isLockedOrWait (locks, keys, lockId, waitForUnlock) { - const locked = locks.check(keys); - - if (!locked) { - return false; - } - - if (locked && locked[0] === lockId) { - return false; - } - - if (waitForUnlock) { - try { - await locks.wait(keys); - } catch (error) { - throw Object.assign(new Error('canhazdb cancelled all locks'), { status: 409 }); - } - return false; - } - - return true; -} - -async function get (state, request, response) { - const data = request.data[DATA]; - const collectionId = data[COLLECTION_ID]; - const resourceId = data[RESOURCE_ID]; - let query = data[QUERY]; - const fields = data[FIELDS]; - const order = data[ORDER]; - const limit = data[LIMIT]; - - if (resourceId) { - query = { id: resourceId }; - } - - const documents = await state.driver.get(collectionId, query, fields, order, limit); - - response.reply({ [STATUS]: 200, [DOCUMENTS]: documents }); -} - -async function count (state, request, response) { - const data = request.data[DATA]; - const collectionId = data[COLLECTION_ID]; - const query = data[QUERY]; - const fields = data[FIELDS]; - const order = data[ORDER]; - const limit = data[LIMIT]; - - const documentCount = await state.driver.count(collectionId, query, fields, order, limit); - - response.reply({ [STATUS]: 200, [DATA]: { documentCount } }); -} - -function notify (notifyPath, collectionId, resourceId, request) { - request.state.notifiers - .filter(notifier => { - return notifier[1].test(notifyPath); - }) - .forEach(notifier => { - request.state.send([notifyPath, collectionId, resourceId, notifier[0]]); - }); -} - -async function post (state, request, response) { - const data = request.data[DATA]; - const collectionId = data[COLLECTION_ID]; - const lockId = data[LOCK_ID]; - const waitForUnlock = data[LOCK_STRATEGY] !== LOCK_STRATEGY_FAIL; - - if (await isLockedOrWait(state.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const document = await state.driver.post(collectionId, data[DOCUMENT]); - - state.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - - notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - - response.reply({ - [STATUS]: 201, - [DOCUMENT]: document - }); -} - -async function put (state, request, response) { - const data = request.data[DATA]; - const collectionId = data[COLLECTION_ID]; - const resourceId = data[RESOURCE_ID]; - let query = data[QUERY]; - - if (resourceId) { - query = { id: resourceId }; - } - - const lockId = data[LOCK_ID]; - const waitForUnlock = data[LOCK_STRATEGY] !== LOCK_STRATEGY_FAIL; - - if (await isLockedOrWait(state.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const result = await state.driver.put(collectionId, data[DOCUMENT], query); - - notify(`PUT:/${collectionId}/${resourceId}`, collectionId, resourceId, request); - - response.reply({ [STATUS]: 200, [DATA]: { changes: result.changes } }); -} - -async function patch (state, request, response) { - const data = request.data[DATA]; - const collectionId = data[COLLECTION_ID]; - const resourceId = data[RESOURCE_ID]; - let query = data[QUERY]; - - if (resourceId) { - query = { id: resourceId }; - } - - const lockId = data[LOCK_ID]; - const waitForUnlock = data[LOCK_STRATEGY] !== LOCK_STRATEGY_FAIL; - - if (await isLockedOrWait(state.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const result = await state.driver.patch(collectionId, data[DOCUMENT], query); - - notify(`PATCH:/${collectionId}/${resourceId}`, collectionId, resourceId, request); - - response.reply({ [STATUS]: 200, [DATA]: { changes: result.changes } }); -} - -async function del (state, request, response) { - const data = request.data[DATA]; - const collectionId = data[COLLECTION_ID]; - const resourceId = data[RESOURCE_ID]; - let query = data[QUERY]; - - if (resourceId) { - query = { id: resourceId }; - } - - const lockId = data[LOCK_ID]; - const waitForUnlock = data[LOCK_STRATEGY] !== LOCK_STRATEGY_FAIL; - - if (await isLockedOrWait(state.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const result = await state.driver.del(collectionId, query); - - if (result.changes > 0) { - state.updateCollectionMetadata(collectionId, { documentCountAdd: -result.changes }); - } - - notify(`DELETE:/${collectionId}/${resourceId}`, collectionId, resourceId, request); - - response.reply({ [STATUS]: 200, [DATA]: { changes: result.changes } }); -} - -async function info (state, request, response) { - const data = request.data[DATA]; - - await Promise.all(data.nodes.map(node => state.join(node, true))); - - response.reply({ - [STATUS]: 200, - [DATA]: { - nodes: state.nodes.map(node => ({ host: node.host, port: node.port })) - } - }); -} - -async function lock (state, request, response) { - const { id, keys } = request.data[DATA]; - - await state.locks.add(keys, id); - - response.reply({ - [STATUS]: 200, - [DATA]: { - id - } - }); -} - -async function unlock (state, request, response) { - const { id } = request.data[DATA]; - - if (state.locks.remove(id)) { - response.reply({ - [STATUS]: 200 - }); - - return; - } - - response.reply({ - [STATUS]: 404 - }); -} - -async function notifyOn (state, request, response) { - const path = request.data[DATA]; - - request.state.notifiers.push([path, new RegExp(path)]); - response.reply({ - [STATUS]: 200 - }); -} -async function notifyOff (state, request, response) { - const path = request.data[DATA]; - - const existingIndex = request.state.notifiers.findIndex(notifer => notifer[0] === path); - request.state.notifiers.splice(existingIndex, 1); - - response.reply({ - [STATUS]: 200 - }); -} - -const mappings = { - [INFO]: info, - [LOCK]: lock, - [UNLOCK]: unlock, - [COUNT]: count, - [GET]: get, - [POST]: post, - [PUT]: put, - [PATCH]: patch, - [DELETE]: del, - [NOTIFY_ON]: notifyOn, - [NOTIFY_OFF]: notifyOff -}; - -function createInternalServer (state, port, tls) { - state.locks = lockbase(); - - state.updateCollectionMetadata = createCollectionMetadataUpdater(state); - - return tcpocket.createServer({ port, ...tls }, function (request, response) { - request.socket.state = request.socket.state || { - send: response.send, - notifiers: [] - }; - - request.state = request.socket.state; - - const mapping = mappings[request.data[COMMAND]]; - - if (!mapping) { - response.reply({ - [STATUS]: 404 - }); - return; - } - - return mapping(state, request, response) - .catch(error => { - console.log(error); - if (error[STATUS] && error[STATUS] >= 500) { - console.log(error); - } - handleError(request.data[COMMAND], request, response, error); - }); - }); -} - -module.exports = createInternalServer; diff --git a/lib/utils/selectRandomItemsFromArray.js b/lib/utils/selectRandomItemsFromArray.js new file mode 100644 index 0000000..cda2f9a --- /dev/null +++ b/lib/utils/selectRandomItemsFromArray.js @@ -0,0 +1,10 @@ +function selectRandomItemFromArray (array, count) { + if (!array || array.length === 0) { + return; + } + + const randomArray = [...array].sort(() => 0.5 - Math.random()); + return randomArray.slice(0, count); +} + +export default selectRandomItemFromArray; diff --git a/lib/utils/waitUntil.js b/lib/utils/waitUntil.js new file mode 100644 index 0000000..95cd9f8 --- /dev/null +++ b/lib/utils/waitUntil.js @@ -0,0 +1,13 @@ +import { promisify } from 'util'; + +const waitUntil = promisify(function (fn, cb) { + const result = fn(); + if (!result) { + setTimeout(() => waitUntil(fn, cb)); + return; + } + + cb(); +}); + +export default waitUntil; diff --git a/lib/wsHandler.js b/lib/wsHandler.js deleted file mode 100644 index 5dd90fa..0000000 --- a/lib/wsHandler.js +++ /dev/null @@ -1,118 +0,0 @@ -const WebSocket = require('ws'); - -const handlePost = require('./actions/ws/post'); -const handleGetAll = require('./actions/ws/getAll'); - -const { - COMMAND, - DATA, - NOTIFY_ON, - NOTIFY_OFF -} = require('./constants'); - -function askOnAllNodes (state, data) { - return Promise.all( - state.nodes.map(node => node.connection.send(data)) - ); -} - -function wsHandler (server, state, options) { - const wss = new WebSocket.Server({ - server, - verifyClient: options.tls && options.tls.verifyClient - }); - - const listeners = {}; - - state.handleMessage = function (message) { - const triggeredPath = message[3]; - listeners[triggeredPath].forEach(socket => socket.send(JSON.stringify(['T', message]))); - }; - - async function addListener (acceptId, socket, path) { - listeners[path] = listeners[path] || []; - - if (listeners[path].length === 0) { - askOnAllNodes(state, { - [COMMAND]: NOTIFY_ON, - [DATA]: path - }); - } - - const listenerIndex = listeners[path].indexOf(socket); - if (listenerIndex > -1) { - return; - } - - listeners[path].push(socket); - - socket.send(JSON.stringify(['A', acceptId])); - } - - async function removeListener (acceptId, socket, path) { - if (!listeners[path]) { - return; - } - - const listenerIndex = listeners[path].indexOf(socket); - if (listenerIndex > -1) { - listeners[path].splice(listenerIndex, 1); - } - - if (listeners[path].length === 0) { - await askOnAllNodes(state, { - [COMMAND]: NOTIFY_OFF, - [DATA]: path - }); - - delete listeners[path]; - } - - socket.send(JSON.stringify(['A', acceptId])); - } - - wss.on('connection', function connection (socket) { - socket.on('message', function incoming (rawMessage) { - const message = JSON.parse(rawMessage); - const [acceptId, command, data] = message; - - if (command === 'NOTIFY') { - addListener(acceptId, socket, data); - return; - } - - if (command === 'UNNOTIFY') { - removeListener(acceptId, socket, data); - return; - } - - if (command === 'POST') { - handlePost(acceptId, state, data, socket); - - return; - } - - if (command === 'GET') { - handleGetAll(acceptId, state, data, socket); - - return; - } - - socket.send(JSON.stringify(['R', acceptId, 'COMMAND_NOT_FOUND'])); - }); - - socket.on('close', function incoming () { - Object.keys(listeners).forEach(key => { - listeners[key].forEach(listener => { - if (listener[0] === socket) { - removeListener(socket, key); - } - }); - }); - }); - }); - - return wss; -} - -module.exports = wsHandler; diff --git a/package-lock.json b/package-lock.json index f9206d1..0ed1f44 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,482 +1,514 @@ { - "name": "canhazdb-server", - "version": "7.0.2", - "lockfileVersion": 1, + "name": "canhazdb", + "version": "8.0.0", + "lockfileVersion": 2, "requires": true, - "dependencies": { - "@babel/code-frame": { + "packages": { + "": { + "name": "canhazdb", + "version": "8.0.0", + "license": "ISC", + "dependencies": { + "basictap": "^1.1.13", + "canhazdb-driver-ejdb": "^1.1.4", + "chalk": "^4.1.1", + "logslot": "^2.1.0", + "minimist": "^1.2.5", + "mql-to-jql": "^1.1.9", + "node-ejdb-lite": "^3.4.2", + "server-destroy": "^1.0.1", + "tcpocket": "^5.1.1", + "wtfnode": "^0.8.4" + }, + "devDependencies": { + "eslint": "^7.28.0", + "semistandard": "^16.0.0", + "uuid": "^8.3.2" + } + }, + "node_modules/@babel/code-frame": { "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, - "requires": { + "dependencies": { "@babel/highlight": "^7.10.4" } }, - "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", - "dev": true + "node_modules/@babel/helper-validator-identifier": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } }, - "@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", + "node_modules/@babel/highlight": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "dependencies": { + "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" } }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "@eslint/eslintrc": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", - "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true, - "requires": { + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", + "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "dev": true, + "dependencies": { "ajv": "^6.12.4", "debug": "^4.1.1", "espree": "^7.3.0", - "globals": "^12.1.0", + "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, - "dependencies": { - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - } + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "@types/json5": { + "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, - "abbott": { + "node_modules/abbott": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", - "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=", - "dev": true + "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" }, - "acorn": { + "node_modules/acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "acorn-jsx": { + "node_modules/acorn-jsx": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", - "dev": true + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } }, - "ajv": { + "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "requires": { + "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "ansi-colors": { + "node_modules/ansi-colors": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "ansi-regex": { + "node_modules/ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "ansi-styles": { + "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { + "dependencies": { "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "argparse": { + "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "requires": { + "dependencies": { "sprintf-js": "~1.0.2" } }, - "array-includes": { + "node_modules/array-includes": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.18.0-next.2", "get-intrinsic": "^1.1.1", "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "array.prototype.flat": { + "node_modules/array.prototype.flat": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "array.prototype.flatmap": { + "node_modules/array.prototype.flatmap": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", "es-abstract": "^1.18.0-next.1", "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "astral-regex": { + "node_modules/astral-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, - "axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", - "requires": { - "follow-redirects": "^1.10.0" + "dev": true, + "engines": { + "node": ">=8" } }, - "balanced-match": { + "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "basictap": { + "node_modules/basictap": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.1.13.tgz", "integrity": "sha512-74mw9kmAdmdkHqtP70YFqHMYzO3my92kZA4axHbKI7V7sOUCniiVP1R+0wR7Y5BO4v5wnrt4sMU3nLjlvzTuWw==", - "dev": true, - "requires": { + "dependencies": { "colorette": "^1.2.2", "concurrun": "^1.1.0", "righto": "^6.1.3" } }, - "brace-expansion": { + "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "requires": { + "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "c8": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.2.tgz", - "integrity": "sha512-8AqNnUMxB3hsgYCYso2GJjlwnaNPlrEEbYbCQb7N76V1nrOgCKXiTcE3gXU18rIj0FeduPywROrIBMC7XAKApg==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@istanbuljs/schema": "^0.1.2", - "find-up": "^5.0.0", - "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.2", - "rimraf": "^3.0.0", - "test-exclude": "^6.0.0", - "v8-to-istanbul": "^7.1.0", - "yargs": "^16.2.0", - "yargs-parser": "^20.2.7" - } - }, - "call-bind": { + "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "requires": { + "dev": true, + "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "callsites": { + "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "canhazdb-driver-ejdb": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/canhazdb-driver-ejdb/-/canhazdb-driver-ejdb-1.1.3.tgz", - "integrity": "sha512-loqomQaquSMYRIW/qnrzFHi1OLqpon8QbxnSek6vb87//LqklKVejvErDXmkGxtMm398GT1DcoiVrfzLVLPLYQ==", "dev": true, - "requires": { + "engines": { + "node": ">=6" + } + }, + "node_modules/canhazdb-driver-ejdb": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/canhazdb-driver-ejdb/-/canhazdb-driver-ejdb-1.1.4.tgz", + "integrity": "sha512-Fw/2MTDyEHR0JqqSLUN/yY+OGLZWgQj3jM07QOpe/Rv0hYKPhJhBuwHQXOrHt/LcGaKyPqXpFDerHJahTtUWJg==", + "dependencies": { "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.3.3", "uuid": "^8.3.2" } }, - "chalk": { + "node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "requires": { + "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { + "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { + "dependencies": { "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "color-name": { + "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "colorette": { + "node_modules/colorette": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", - "dev": true + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" }, - "colornames": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/colornames/-/colornames-1.1.1.tgz", - "integrity": "sha1-+IiQMGhcfE/54qVZ9Qd+t2qBb5Y=" - }, - "concat-map": { + "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "concurrun": { + "node_modules/concurrun": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", - "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==", - "dev": true + "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" }, - "contains-path": { + "node_modules/contains-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, - "requires": { - "safe-buffer": "~5.1.1" + "engines": { + "node": ">=0.10.0" } }, - "cross-spawn": { + "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, - "requires": { + "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "debarrel": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.1.tgz", - "integrity": "sha512-0eOJdzuCDb8an9dv/98m3IMicTI5aFlVLz/9ENHADBMea68GFI9grscTOCnvxvKAT1JZtrBPiDahjp91sWOLkw==" - }, - "debug": { + "node_modules/debug": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, - "requires": { + "dependencies": { "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "deep-is": { + "node_modules/deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, - "define-properties": { + "node_modules/define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, - "requires": { + "dependencies": { "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" } }, - "doctrine": { + "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, - "requires": { + "dependencies": { "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "emoji-regex": { + "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "enquirer": { + "node_modules/enquirer": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, - "requires": { + "dependencies": { "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" } }, - "error-ex": { + "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "requires": { + "dependencies": { "is-arrayish": "^0.2.1" } }, - "error-with-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/error-with-object/-/error-with-object-1.1.0.tgz", - "integrity": "sha512-ctthqZF3x2gG1CxAGB+irtAOXGYj7S9r+0flbRGe01qCOU/yJJAyvzOKuR/Locu/8pA1+v9jGDiEKS5ZX6OKDw==" - }, - "es-abstract": { + "node_modules/es-abstract": { "version": "1.18.3", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -493,39 +525,51 @@ "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", "unbox-primitive": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "es-to-primitive": { + "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, - "requires": { + "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-string-regexp": { + "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "eslint": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz", - "integrity": "sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==", + "node_modules/eslint": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", + "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", "dev": true, - "requires": { + "dependencies": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.1", + "@eslint/eslintrc": "^0.4.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -542,7 +586,7 @@ "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", + "glob-parent": "^5.1.2", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", @@ -564,100 +608,152 @@ "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "eslint-config-semistandard": { + "node_modules/eslint-config-semistandard": { "version": "15.0.1", "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-15.0.1.tgz", "integrity": "sha512-sfV+qNBWKOmF0kZJll1VH5XqOAdTmLlhbOl9WKI11d2eMEe+Kicxnpm24PQWHOqAfk5pAWU2An0LjNCXKa4Usg==", - "dev": true + "dev": true, + "peerDependencies": { + "eslint": ">=6.0.1", + "eslint-config-standard": ">=14.1.0", + "eslint-plugin-import": ">=2.18.0", + "eslint-plugin-node": ">=9.1.0", + "eslint-plugin-promise": ">=4.2.1", + "eslint-plugin-standard": ">=4.0.0" + } }, - "eslint-config-standard": { + "node_modules/eslint-config-standard": { "version": "16.0.0", "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.0.tgz", "integrity": "sha512-kMCehB9yXIG+LNsu9uXfm06o6Pt63TFAOzn9tUOzw4r/hFIxHhNR1Xomxy+B5zMrXhqyfHVEcmanzttEjGei9w==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peerDependencies": { + "eslint": "^7.12.1", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1" + } }, - "eslint-config-standard-jsx": { + "node_modules/eslint-config-standard-jsx": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peerDependencies": { + "eslint": "^7.12.1", + "eslint-plugin-react": "^7.21.5" + } }, - "eslint-import-resolver-node": { + "node_modules/eslint-import-resolver-node": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, - "requires": { + "dependencies": { "debug": "^2.6.9", "resolve": "^1.13.1" - }, + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "ms": "2.0.0" } }, - "eslint-module-utils": { + "node_modules/eslint-import-resolver-node/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-module-utils": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, - "requires": { + "dependencies": { "debug": "^3.2.7", "pkg-dir": "^2.0.0" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "ms": "^2.1.1" } }, - "eslint-plugin-es": { + "node_modules/eslint-plugin-es": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, - "requires": { + "dependencies": { "eslint-utils": "^2.0.0", "regexpp": "^3.0.0" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=4.19.1" } }, - "eslint-plugin-import": { + "node_modules/eslint-plugin-import": { "version": "2.22.1", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", "dev": true, - "requires": { + "dependencies": { "array-includes": "^3.1.1", "array.prototype.flat": "^1.2.3", "contains-path": "^0.1.0", @@ -672,40 +768,47 @@ "resolve": "^1.17.0", "tsconfig-paths": "^3.9.0" }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "ms": "2.0.0" } }, - "eslint-plugin-node": { + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, + "dependencies": { + "esutils": "^2.0.2", + "isarray": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-plugin-node": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, - "requires": { + "dependencies": { "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", "ignore": "^5.1.1", @@ -713,27 +816,46 @@ "resolve": "^1.10.1", "semver": "^6.1.0" }, - "dependencies": { - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true - } + "engines": { + "node": ">=8.10.0" + }, + "peerDependencies": { + "eslint": ">=5.16.0" } }, - "eslint-plugin-promise": { + "node_modules/eslint-plugin-node/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint-plugin-node/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-promise": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz", "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "eslint-plugin-react": { + "node_modules/eslint-plugin-react": { "version": "7.21.5", "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, - "requires": { + "dependencies": { "array-includes": "^3.1.1", "array.prototype.flatmap": "^1.2.3", "doctrine": "^2.1.0", @@ -746,2555 +868,3455 @@ "resolve": "^1.18.1", "string.prototype.matchall": "^4.0.2" }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, "dependencies": { - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - } + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "eslint-plugin-standard": { + "node_modules/eslint-plugin-standard": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.2.tgz", "integrity": "sha512-nKptN8l7jksXkwFk++PhJB3cCDTcXOEyhISIN86Ue2feJ1LFyY3PrY3/xT2keXlJSY5bpmbiTG0f885/YKAvTA==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peerDependencies": { + "eslint": ">=5.0.0" + } }, - "eslint-scope": { + "node_modules/eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "requires": { + "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "eslint-utils": { + "node_modules/eslint-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, - "requires": { + "dependencies": { "eslint-visitor-keys": "^1.1.0" }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" } }, - "eslint-visitor-keys": { + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + } }, - "espree": { + "node_modules/espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, - "requires": { + "dependencies": { "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", "eslint-visitor-keys": "^1.3.0" }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "esprima": { + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, - "esquery": { + "node_modules/esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, - "requires": { + "dependencies": { "estraverse": "^5.1.0" }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } + "engines": { + "node": ">=0.10" } }, - "esrecurse": { + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "requires": { + "dependencies": { "estraverse": "^5.2.0" }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } + "engines": { + "node": ">=4.0" } }, - "estraverse": { + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "dev": true, + "engines": { + "node": ">=4.0" + } }, - "esutils": { + "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "fast-deep-equal": { + "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, - "fast-json-stable-stringify": { + "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, - "fast-levenshtein": { + "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, - "file-entry-cache": { + "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, - "requires": { + "dependencies": { "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "final-stream": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.3.tgz", - "integrity": "sha512-THH/DnlYuhWQZBm7vPpavIlLV2hKh3HFMiLORz7kr+CxrbgbG33BP22RWtAn4EmN8OGfGttWcued3xluCA6p9g==" - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "flat-cache": { + "node_modules/flat-cache": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, - "requires": { + "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "flatted": { + "node_modules/flatted": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, - "follow-redirects": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", - "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" - }, - "foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - } - }, - "fs.realpath": { + "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "function-bind": { + "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, - "functional-red-black-tree": { + "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { + "node_modules/get-intrinsic": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "requires": { + "dev": true, + "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "get-port": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", - "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==" - }, - "get-stdin": { + "node_modules/get-stdin": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "glob": { + "node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, - "requires": { + "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "glob-parent": { + "node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, - "requires": { + "dependencies": { "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "globals": { + "node_modules/globals": { "version": "13.9.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, - "requires": { + "dependencies": { "type-fest": "^0.20.2" }, - "dependencies": { - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "graceful-fs": { + "node_modules/graceful-fs": { "version": "4.2.6", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, - "has": { + "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { + "dev": true, + "dependencies": { "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" } }, - "has-bigints": { + "node_modules/has-bigints": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "has-flag": { + "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } }, - "has-symbols": { + "node_modules/has-symbols": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - }, - "hex-rgb": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/hex-rgb/-/hex-rgb-4.3.0.tgz", - "integrity": "sha512-Ox1pJVrDCyGHMG9CFg1tmrRUMRPRsAWYc/PinY0XzJU4K7y7vjNoLKIQ7BR5UJMCxNN8EM1MNDmHWA/B3aZUuw==" - }, - "hinton": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hinton/-/hinton-1.0.0.tgz", - "integrity": "sha512-92PiCRxSvcHLB+5f4w29Ex7EWC7/AVok3Zg84X8K+NCtrMmACh0UR7ZgQfos0/xGdc+vPcY4ak7ijaWhluUj8A==", - "requires": { - "chalk": "^4.1.0", - "string-to-color": "^2.2.2" + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "hosted-git-info": { + "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "ignore": { + "node_modules/ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "dev": true, + "engines": { + "node": ">= 4" + } }, - "import-fresh": { + "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, - "requires": { + "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "imurmurhash": { + "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.19" + } }, - "inflight": { + "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, - "requires": { + "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, - "inherits": { + "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "internal-slot": { + "node_modules/internal-slot": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, - "requires": { + "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "is-arrayish": { + "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, - "is-bigint": { + "node_modules/is-bigint": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-boolean-object": { + "node_modules/is-boolean-object": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-callable": { + "node_modules/is-callable": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-core-module": { + "node_modules/is-core-module": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, - "requires": { + "dependencies": { "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-date-object": { + "node_modules/is-date-object": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-extglob": { + "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "is-fullwidth-code-point": { + "node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "is-glob": { + "node_modules/is-glob": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, - "requires": { + "dependencies": { "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-negative-zero": { + "node_modules/is-negative-zero": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-number-object": { + "node_modules/is-number-object": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-regex": { + "node_modules/is-regex": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-string": { + "node_modules/is-string": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-symbol": { + "node_modules/is-symbol": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, - "requires": { + "dependencies": { "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "isarray": { + "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, - "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - } - }, - "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "js-tokens": { + "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, - "js-yaml": { + "node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, - "requires": { + "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "json-parse-better-errors": { + "node_modules/json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, - "json-schema-traverse": { + "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "json-stable-stringify-without-jsonify": { + "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, - "json5": { + "node_modules/json5": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, - "requires": { + "dependencies": { "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "jsx-ast-utils": { + "node_modules/jsx-ast-utils": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, - "requires": { + "dependencies": { "array-includes": "^3.1.2", "object.assign": "^4.1.2" + }, + "engines": { + "node": ">=4.0" } }, - "levn": { + "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, - "requires": { + "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "load-json-file": { + "node_modules/load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, - "requires": { + "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", "pify": "^2.0.0", "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lockbase": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.0.9.tgz", - "integrity": "sha512-6UYmTjzPSZcoAj2DNlmz6J8uXYD5UcIlu3JXcx6FJoFCZbjQ5n78WfQ4CVQebRpL704MXCIOV00Kn1QzuS2zyQ==", - "requires": { - "uuid": "^8.3.1" + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "lodash": { + "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, - "lodash.clonedeep": { + "node_modules/lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, - "lodash.merge": { + "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "lodash.padend": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz", - "integrity": "sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=" - }, - "lodash.trimstart": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/lodash.trimstart/-/lodash.trimstart-4.5.1.tgz", - "integrity": "sha1-j/TexTLYJIavWVc8OURZFOlEp/E=" - }, - "lodash.truncate": { + "node_modules/lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", "dev": true }, - "lodash.words": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.words/-/lodash.words-4.2.0.tgz", - "integrity": "sha1-Xs/q+Oz4rKqODIOGKV8Zk8nPQDY=" + "node_modules/logslot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", + "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "dependencies": { + "chalk": "^4.1.1" + } }, - "loose-envify": { + "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, - "requires": { + "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" } }, - "lru-cache": { + "node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { + "dependencies": { "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "minimatch": { + "node_modules/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, - "requires": { + "dependencies": { "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "minimist": { + "node_modules/minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, - "mkdirp": { + "node_modules/mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, - "requires": { + "dependencies": { "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "mql-to-jql": { + "node_modules/mql-to-jql": { "version": "1.1.9", "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.1.9.tgz", - "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==", - "dev": true + "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" }, - "ms": { + "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "natural-compare": { + "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, - "ndjson-fe": { + "node_modules/ndjson-fe": { "version": "1.2.10", "resolved": "https://registry.npmjs.org/ndjson-fe/-/ndjson-fe-1.2.10.tgz", - "integrity": "sha512-KUnVQdm+kWJt/2HhiBmZ4EhzliHWXH6GglJDVZrrF8vr8ps2sBVFzijcz/jsXm7P9ji4lWWU3X1D1RZp0F6lWA==" + "integrity": "sha512-KUnVQdm+kWJt/2HhiBmZ4EhzliHWXH6GglJDVZrrF8vr8ps2sBVFzijcz/jsXm7P9ji4lWWU3X1D1RZp0F6lWA==", + "engines": { + "node": ">=10" + } }, - "node-ejdb-lite": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.3.3.tgz", - "integrity": "sha512-3oIptX/9Rjx+Oc3UDHyvfTn+d4MiVZcTYrsK6nciCONl+1Jc3T65avJStpg7xQfXi/YiVMiOq8bfhCKIjjtYzQ==", - "dev": true, - "requires": { + "node_modules/node-ejdb-lite": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", + "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", + "cpu": [ + "x64", + "x32", + "arm", + "arm64" + ], + "hasInstallScript": true, + "os": [ + "darwin", + "linux", + "alpine", + "!win32" + ], + "dependencies": { "semver": "^7.3.5" }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } + "engines": { + "node": ">=10.0.0", + "npm": ">=6.0.0" } }, - "normalize-package-data": { + "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "requires": { + "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", + "dev": true, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + }, + "engines": { + "node": ">= 0.4" } }, - "npm": { - "version": "7.15.1", - "resolved": "https://registry.npmjs.org/npm/-/npm-7.15.1.tgz", - "integrity": "sha512-sPk+GrqawshbG3T81r2QvvSxSQXBFWyn5NGLacf87l+/odi2ZRHkWdLrg304Lw0DrwwIIaGxUjp0FJXaMtIErQ==", - "requires": { - "@npmcli/arborist": "^2.6.1", - "@npmcli/ci-detect": "^1.2.0", - "@npmcli/config": "^2.2.0", - "@npmcli/run-script": "^1.8.5", - "abbrev": "~1.1.1", - "ansicolors": "~0.3.2", - "ansistyles": "~0.1.3", - "archy": "~1.0.0", - "byte-size": "^7.0.1", - "cacache": "^15.2.0", - "chalk": "^4.1.0", - "chownr": "^2.0.0", - "cli-columns": "^3.1.2", - "cli-table3": "^0.6.0", - "columnify": "~1.5.4", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "hosted-git-info": "^4.0.2", - "ini": "^2.0.0", - "init-package-json": "^2.0.3", - "is-cidr": "^4.0.2", - "json-parse-even-better-errors": "^2.3.1", - "leven": "^3.1.0", - "libnpmaccess": "^4.0.2", - "libnpmdiff": "^2.0.4", - "libnpmexec": "^1.2.0", - "libnpmfund": "^1.1.0", - "libnpmhook": "^6.0.2", - "libnpmorg": "^2.0.2", - "libnpmpack": "^2.0.1", - "libnpmpublish": "^4.0.1", - "libnpmsearch": "^3.1.1", - "libnpmteam": "^2.0.3", - "libnpmversion": "^1.2.0", - "make-fetch-happen": "^8.0.14", - "minipass": "^3.1.3", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "mkdirp-infer-owner": "^2.0.0", - "ms": "^2.1.2", - "node-gyp": "^7.1.2", - "nopt": "^5.0.0", - "npm-audit-report": "^2.1.5", - "npm-package-arg": "^8.1.2", - "npm-pick-manifest": "^6.1.1", - "npm-profile": "^5.0.3", - "npm-registry-fetch": "^10.1.2", - "npm-user-validate": "^1.0.1", - "npmlog": "~4.1.2", - "opener": "^1.5.2", - "pacote": "^11.3.3", - "parse-conflict-json": "^1.1.1", - "qrcode-terminal": "^0.12.0", - "read": "~1.0.7", - "read-package-json": "^3.0.1", - "read-package-json-fast": "^2.0.2", - "readdir-scoped-modules": "^1.1.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "ssri": "^8.0.1", - "tar": "^6.1.0", - "text-table": "~0.2.0", - "tiny-relative-date": "^1.3.0", - "treeverse": "^1.0.4", - "validate-npm-package-name": "~3.0.0", - "which": "^2.0.2", - "write-file-atomic": "^3.0.3" - }, - "dependencies": { - "@npmcli/arborist": { - "version": "2.6.1", - "bundled": true, - "requires": { - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/map-workspaces": "^1.0.2", - "@npmcli/metavuln-calculator": "^1.1.0", - "@npmcli/move-file": "^1.1.0", - "@npmcli/name-from-folder": "^1.0.1", - "@npmcli/node-gyp": "^1.0.1", - "@npmcli/run-script": "^1.8.2", - "bin-links": "^2.2.1", - "cacache": "^15.0.3", - "common-ancestor-path": "^1.0.1", - "json-parse-even-better-errors": "^2.3.1", - "json-stringify-nice": "^1.1.4", - "mkdirp-infer-owner": "^2.0.0", - "npm-install-checks": "^4.0.0", - "npm-package-arg": "^8.1.0", - "npm-pick-manifest": "^6.1.0", - "npm-registry-fetch": "^10.0.0", - "pacote": "^11.2.6", - "parse-conflict-json": "^1.1.1", - "promise-all-reject-late": "^1.0.0", - "promise-call-limit": "^1.0.1", - "read-package-json-fast": "^2.0.2", - "readdir-scoped-modules": "^1.1.0", - "semver": "^7.3.5", - "tar": "^6.1.0", - "treeverse": "^1.0.4", - "walk-up-path": "^1.0.0" - } - }, - "@npmcli/ci-detect": { - "version": "1.3.0", - "bundled": true - }, - "@npmcli/config": { - "version": "2.2.0", - "bundled": true, - "requires": { - "ini": "^2.0.0", - "mkdirp-infer-owner": "^2.0.0", - "nopt": "^5.0.0", - "semver": "^7.3.4", - "walk-up-path": "^1.0.0" - } - }, - "@npmcli/disparity-colors": { - "version": "1.0.1", - "bundled": true, - "requires": { - "ansi-styles": "^4.3.0" - } - }, - "@npmcli/git": { - "version": "2.0.9", - "bundled": true, - "requires": { - "@npmcli/promise-spawn": "^1.3.2", - "lru-cache": "^6.0.0", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^6.1.1", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - } - }, - "@npmcli/installed-package-contents": { - "version": "1.0.7", - "bundled": true, - "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "@npmcli/map-workspaces": { - "version": "1.0.3", - "bundled": true, - "requires": { - "@npmcli/name-from-folder": "^1.0.1", - "glob": "^7.1.6", - "minimatch": "^3.0.4", - "read-package-json-fast": "^2.0.1" - } - }, - "@npmcli/metavuln-calculator": { - "version": "1.1.1", - "bundled": true, - "requires": { - "cacache": "^15.0.5", - "pacote": "^11.1.11", - "semver": "^7.3.2" - } - }, - "@npmcli/move-file": { - "version": "1.1.2", - "bundled": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, - "@npmcli/name-from-folder": { - "version": "1.0.1", - "bundled": true - }, - "@npmcli/node-gyp": { - "version": "1.0.2", - "bundled": true - }, - "@npmcli/promise-spawn": { - "version": "1.3.2", - "bundled": true, - "requires": { - "infer-owner": "^1.0.4" - } - }, - "@npmcli/run-script": { - "version": "1.8.5", - "bundled": true, - "requires": { - "@npmcli/node-gyp": "^1.0.2", - "@npmcli/promise-spawn": "^1.3.2", - "infer-owner": "^1.0.4", - "node-gyp": "^7.1.0", - "read-package-json-fast": "^2.0.1" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "bundled": true - }, - "abbrev": { - "version": "1.1.1", - "bundled": true - }, - "agent-base": { - "version": "6.0.2", - "bundled": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.1.4", - "bundled": true, - "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - } - }, - "aggregate-error": { - "version": "3.1.0", - "bundled": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "bundled": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true - }, - "ansi-styles": { - "version": "4.3.0", - "bundled": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "ansicolors": { - "version": "0.3.2", - "bundled": true - }, - "ansistyles": { - "version": "0.1.3", - "bundled": true - }, - "aproba": { - "version": "2.0.0", - "bundled": true - }, - "archy": { - "version": "1.0.0", - "bundled": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "asap": { - "version": "2.0.6", - "bundled": true - }, - "asn1": { - "version": "0.2.4", - "bundled": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "bundled": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true - }, - "aws-sign2": { - "version": "0.7.0", - "bundled": true - }, - "aws4": { - "version": "1.11.0", - "bundled": true - }, - "balanced-match": { - "version": "1.0.2", - "bundled": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "bundled": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bin-links": { - "version": "2.2.1", - "bundled": true, - "requires": { - "cmd-shim": "^4.0.1", - "mkdirp": "^1.0.3", - "npm-normalize-package-bin": "^1.0.0", - "read-cmd-shim": "^2.0.0", - "rimraf": "^3.0.0", - "write-file-atomic": "^3.0.3" - } - }, - "binary-extensions": { - "version": "2.2.0", - "bundled": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "builtins": { - "version": "1.0.3", - "bundled": true - }, - "byte-size": { - "version": "7.0.1", - "bundled": true - }, - "cacache": { - "version": "15.2.0", - "bundled": true, - "requires": { - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - } - }, - "caseless": { - "version": "0.12.0", - "bundled": true - }, - "chalk": { - "version": "4.1.1", - "bundled": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "chownr": { - "version": "2.0.0", - "bundled": true - }, - "cidr-regex": { - "version": "3.1.1", - "bundled": true, - "requires": { - "ip-regex": "^4.1.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "bundled": true - }, - "cli-columns": { - "version": "3.1.2", - "bundled": true, - "requires": { - "string-width": "^2.0.0", - "strip-ansi": "^3.0.1" - } - }, - "cli-table3": { - "version": "0.6.0", - "bundled": true, - "requires": { - "colors": "^1.1.2", - "object-assign": "^4.1.0", - "string-width": "^4.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "bundled": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "bundled": true - }, - "string-width": { - "version": "4.2.2", - "bundled": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "bundled": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "clone": { - "version": "1.0.4", - "bundled": true - }, - "cmd-shim": { - "version": "4.1.0", - "bundled": true, - "requires": { - "mkdirp-infer-owner": "^2.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true - }, - "color-convert": { - "version": "2.0.1", - "bundled": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "bundled": true - }, - "colors": { - "version": "1.4.0", - "bundled": true, - "optional": true - }, - "columnify": { - "version": "1.5.4", - "bundled": true, - "requires": { - "strip-ansi": "^3.0.0", - "wcwidth": "^1.0.0" - } - }, - "combined-stream": { - "version": "1.0.8", - "bundled": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "common-ancestor-path": { - "version": "1.0.1", - "bundled": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "debug": { - "version": "4.3.1", - "bundled": true, - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "bundled": true - } - } - }, - "debuglog": { - "version": "1.0.1", - "bundled": true - }, - "defaults": { - "version": "1.0.3", - "bundled": true, - "requires": { - "clone": "^1.0.2" - } - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true - }, - "depd": { - "version": "1.1.2", - "bundled": true - }, - "dezalgo": { - "version": "1.0.3", - "bundled": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, - "diff": { - "version": "5.0.0", - "bundled": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "bundled": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "bundled": true - }, - "encoding": { - "version": "0.1.13", - "bundled": true, - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - } - }, - "env-paths": { - "version": "2.2.1", - "bundled": true - }, - "err-code": { - "version": "2.0.3", - "bundled": true - }, - "extend": { - "version": "3.0.2", - "bundled": true - }, - "extsprintf": { - "version": "1.3.0", - "bundled": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "bundled": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "bundled": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true - }, - "form-data": { - "version": "2.3.3", - "bundled": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fs-minipass": { - "version": "2.1.0", - "bundled": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true - }, - "function-bind": { - "version": "1.1.1", - "bundled": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "bundled": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.7", - "bundled": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.6", - "bundled": true - }, - "har-schema": { - "version": "2.0.0", - "bundled": true - }, - "har-validator": { - "version": "5.1.5", - "bundled": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "bundled": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "4.0.0", - "bundled": true - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true - }, - "hosted-git-info": { - "version": "4.0.2", - "bundled": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "http-cache-semantics": { - "version": "4.1.0", - "bundled": true - }, - "http-proxy-agent": { - "version": "4.0.1", - "bundled": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - }, - "http-signature": { - "version": "1.2.0", - "bundled": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "5.0.0", - "bundled": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "humanize-ms": { - "version": "1.2.1", - "bundled": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.6.2", - "bundled": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - }, - "ignore-walk": { - "version": "3.0.4", - "bundled": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true - }, - "indent-string": { - "version": "4.0.0", - "bundled": true - }, - "infer-owner": { - "version": "1.0.4", - "bundled": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true - }, - "ini": { - "version": "2.0.0", - "bundled": true - }, - "init-package-json": { - "version": "2.0.3", - "bundled": true, - "requires": { - "glob": "^7.1.1", - "npm-package-arg": "^8.1.2", - "promzard": "^0.3.0", - "read": "~1.0.1", - "read-package-json": "^3.0.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "ip": { - "version": "1.1.5", - "bundled": true - }, - "ip-regex": { - "version": "4.3.0", - "bundled": true - }, - "is-cidr": { - "version": "4.0.2", - "bundled": true, - "requires": { - "cidr-regex": "^3.1.1" - } - }, - "is-core-module": { - "version": "2.4.0", - "bundled": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true - }, - "is-lambda": { - "version": "1.0.1", - "bundled": true - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true - }, - "jsbn": { - "version": "0.1.1", - "bundled": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "bundled": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "bundled": true - }, - "json-stringify-nice": { - "version": "1.1.4", - "bundled": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true - }, - "jsonparse": { - "version": "1.3.1", - "bundled": true - }, - "jsprim": { - "version": "1.4.1", - "bundled": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "just-diff": { - "version": "3.1.1", - "bundled": true - }, - "just-diff-apply": { - "version": "3.0.0", - "bundled": true - }, - "leven": { - "version": "3.1.0", - "bundled": true - }, - "libnpmaccess": { - "version": "4.0.2", - "bundled": true, - "requires": { - "aproba": "^2.0.0", - "minipass": "^3.1.1", - "npm-package-arg": "^8.1.2", - "npm-registry-fetch": "^10.0.0" - } - }, - "libnpmdiff": { - "version": "2.0.4", - "bundled": true, - "requires": { - "@npmcli/disparity-colors": "^1.0.1", - "@npmcli/installed-package-contents": "^1.0.7", - "binary-extensions": "^2.2.0", - "diff": "^5.0.0", - "minimatch": "^3.0.4", - "npm-package-arg": "^8.1.1", - "pacote": "^11.3.0", - "tar": "^6.1.0" - } - }, - "libnpmexec": { - "version": "1.2.0", - "bundled": true, - "requires": { - "@npmcli/arborist": "^2.3.0", - "@npmcli/ci-detect": "^1.3.0", - "@npmcli/run-script": "^1.8.4", - "chalk": "^4.1.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-package-arg": "^8.1.2", - "pacote": "^11.3.1", - "proc-log": "^1.0.0", - "read": "^1.0.7", - "read-package-json-fast": "^2.0.2", - "walk-up-path": "^1.0.0" - } - }, - "libnpmfund": { - "version": "1.1.0", - "bundled": true, - "requires": { - "@npmcli/arborist": "^2.5.0" - } - }, - "libnpmhook": { - "version": "6.0.2", - "bundled": true, - "requires": { - "aproba": "^2.0.0", - "npm-registry-fetch": "^10.0.0" - } - }, - "libnpmorg": { - "version": "2.0.2", - "bundled": true, - "requires": { - "aproba": "^2.0.0", - "npm-registry-fetch": "^10.0.0" - } - }, - "libnpmpack": { - "version": "2.0.1", - "bundled": true, - "requires": { - "@npmcli/run-script": "^1.8.3", - "npm-package-arg": "^8.1.0", - "pacote": "^11.2.6" - } - }, - "libnpmpublish": { - "version": "4.0.1", - "bundled": true, - "requires": { - "normalize-package-data": "^3.0.2", - "npm-package-arg": "^8.1.2", - "npm-registry-fetch": "^10.0.0", - "semver": "^7.1.3", - "ssri": "^8.0.1" - } - }, - "libnpmsearch": { - "version": "3.1.1", - "bundled": true, - "requires": { - "npm-registry-fetch": "^10.0.0" - } - }, - "libnpmteam": { - "version": "2.0.3", - "bundled": true, - "requires": { - "aproba": "^2.0.0", - "npm-registry-fetch": "^10.0.0" - } - }, - "libnpmversion": { - "version": "1.2.0", - "bundled": true, - "requires": { - "@npmcli/git": "^2.0.7", - "@npmcli/run-script": "^1.8.4", - "json-parse-even-better-errors": "^2.3.1", - "semver": "^7.3.5", - "stringify-package": "^1.0.1" - } - }, - "lru-cache": { - "version": "6.0.0", - "bundled": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "make-fetch-happen": { - "version": "8.0.14", - "bundled": true, - "requires": { - "agentkeepalive": "^4.1.3", - "cacache": "^15.0.5", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^6.0.0", - "minipass": "^3.1.3", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^1.3.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^5.0.0", - "ssri": "^8.0.0" - } - }, - "mime-db": { - "version": "1.47.0", - "bundled": true - }, - "mime-types": { - "version": "2.1.30", - "bundled": true, - "requires": { - "mime-db": "1.47.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minipass": { - "version": "3.1.3", - "bundled": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minipass-collect": { - "version": "1.0.2", - "bundled": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-fetch": { - "version": "1.3.3", - "bundled": true, - "requires": { - "encoding": "^0.1.12", - "minipass": "^3.1.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.0.0" - } - }, - "minipass-flush": { - "version": "1.0.5", - "bundled": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "bundled": true, - "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "bundled": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-sized": { - "version": "1.0.3", - "bundled": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "bundled": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "bundled": true - }, - "mkdirp-infer-owner": { - "version": "2.0.0", - "bundled": true, - "requires": { - "chownr": "^2.0.0", - "infer-owner": "^1.0.4", - "mkdirp": "^1.0.3" - } - }, - "ms": { - "version": "2.1.3", - "bundled": true - }, - "mute-stream": { - "version": "0.0.8", - "bundled": true - }, - "node-gyp": { - "version": "7.1.2", - "bundled": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.3", - "nopt": "^5.0.0", - "npmlog": "^4.1.2", - "request": "^2.88.2", - "rimraf": "^3.0.2", - "semver": "^7.3.2", - "tar": "^6.0.2", - "which": "^2.0.2" - } - }, - "nopt": { - "version": "5.0.0", - "bundled": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "3.0.2", - "bundled": true, - "requires": { - "hosted-git-info": "^4.0.1", - "resolve": "^1.20.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-audit-report": { - "version": "2.1.5", - "bundled": true, - "requires": { - "chalk": "^4.0.0" - } - }, - "npm-bundled": { - "version": "1.1.2", - "bundled": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-install-checks": { - "version": "4.0.0", - "bundled": true, - "requires": { - "semver": "^7.1.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true - }, - "npm-package-arg": { - "version": "8.1.2", - "bundled": true, - "requires": { - "hosted-git-info": "^4.0.1", - "semver": "^7.3.4", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-packlist": { - "version": "2.2.2", - "bundled": true, - "requires": { - "glob": "^7.1.6", - "ignore-walk": "^3.0.3", - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "6.1.1", - "bundled": true, - "requires": { - "npm-install-checks": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^8.1.2", - "semver": "^7.3.4" - } - }, - "npm-profile": { - "version": "5.0.3", - "bundled": true, - "requires": { - "npm-registry-fetch": "^10.0.0" - } - }, - "npm-registry-fetch": { - "version": "10.1.2", - "bundled": true, - "requires": { - "lru-cache": "^6.0.0", - "make-fetch-happen": "^8.0.9", - "minipass": "^3.1.3", - "minipass-fetch": "^1.3.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.0.0", - "npm-package-arg": "^8.0.0" - } - }, - "npm-user-validate": { - "version": "1.0.1", - "bundled": true - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true - }, - "oauth-sign": { - "version": "0.9.0", - "bundled": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "requires": { - "wrappy": "1" - } - }, - "opener": { - "version": "1.5.2", - "bundled": true - }, - "p-map": { - "version": "4.0.0", - "bundled": true, + "node_modules/object.fromentries": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", + "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "dependencies": { + "pify": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pkg-conf": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0", + "load-json-file": "^5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/load-json-file": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "parse-json": "^4.0.0", + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "node_modules/read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "dependencies": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/righto": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", + "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", + "dependencies": { + "abbott": "^1.1.3", + "setimmediate": "^1.0.5" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/semistandard": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.0.tgz", + "integrity": "sha512-pLETGjFyl0ETMDAEZxkC1OJBmNmPIMpMkayStGTgHMMh/5FM7Rbk5NWc1t7yfQ4PrRURQH8MUg3ZxvojJJifcw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "eslint": "~7.12.1", + "eslint-config-semistandard": "15.0.1", + "eslint-config-standard": "16.0.0", + "eslint-config-standard-jsx": "10.0.0", + "eslint-plugin-import": "~2.22.1", + "eslint-plugin-node": "~11.1.0", + "eslint-plugin-promise": "~4.2.1", + "eslint-plugin-react": "~7.21.5", + "eslint-plugin-standard": "~4.0.2", + "standard-engine": "^14.0.0" + }, + "bin": { + "semistandard": "bin/cmd.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/semistandard/node_modules/@eslint/eslintrc": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", + "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/semistandard/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/semistandard/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/semistandard/node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/semistandard/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/semistandard/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/semistandard/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/semistandard/node_modules/eslint": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", + "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.2.1", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.0", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/semistandard/node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/semistandard/node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/semistandard/node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "node_modules/semistandard/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semistandard/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/semistandard/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/semistandard/node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/semistandard/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/semistandard/node_modules/string-width/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/semistandard/node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/semistandard/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", + "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/standard-engine": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", + "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "get-stdin": "^8.0.0", + "minimist": "^1.2.5", + "pkg-conf": "^3.1.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8.10" + } + }, + "node_modules/string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.3.1", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/table": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "dev": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", + "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/tcpocket": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-5.1.1.tgz", + "integrity": "sha512-5r2jH74SPB1ErHkqBMtw5MH57ULY3gICtvCbJxDos360XfBkDmK5RCSMHsfEfxCRUW92wtCdThlKEOZCLTJuHQ==", + "dependencies": { + "ndjson-fe": "^1.2.10" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/tsconfig-paths": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", + "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "dependencies": { + "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/wtfnode": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", + "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", + "bin": { + "wtfnode": "proxy.js" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", + "dev": true + }, + "@babel/highlight": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.14.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { - "aggregate-error": "^3.0.0" + "color-convert": "^1.9.0" } }, - "pacote": { - "version": "11.3.3", - "bundled": true, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "requires": { - "@npmcli/git": "^2.0.1", - "@npmcli/installed-package-contents": "^1.0.6", - "@npmcli/promise-spawn": "^1.2.0", - "@npmcli/run-script": "^1.8.2", - "cacache": "^15.0.5", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.3", - "mkdirp": "^1.0.3", - "npm-package-arg": "^8.0.1", - "npm-packlist": "^2.1.4", - "npm-pick-manifest": "^6.0.0", - "npm-registry-fetch": "^10.0.0", - "promise-retry": "^2.0.1", - "read-package-json-fast": "^2.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "parse-conflict-json": { - "version": "1.1.1", - "bundled": true, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { - "json-parse-even-better-errors": "^2.3.0", - "just-diff": "^3.0.1", - "just-diff-apply": "^3.0.0" + "color-name": "1.1.3" } }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true - }, - "path-parse": { - "version": "1.0.6", - "bundled": true - }, - "performance-now": { - "version": "2.1.0", - "bundled": true - }, - "proc-log": { - "version": "1.0.0", - "bundled": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true - }, - "promise-all-reject-late": { - "version": "1.0.1", - "bundled": true - }, - "promise-call-limit": { - "version": "1.0.1", - "bundled": true + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, - "promise-inflight": { - "version": "1.0.1", - "bundled": true + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, - "promise-retry": { - "version": "2.0.1", - "bundled": true, - "requires": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - } + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, - "promzard": { - "version": "0.3.0", - "bundled": true, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { - "read": "1" + "has-flag": "^3.0.0" } - }, - "psl": { - "version": "1.8.0", - "bundled": true - }, - "punycode": { - "version": "2.1.1", - "bundled": true - }, - "qrcode-terminal": { - "version": "0.12.0", - "bundled": true - }, - "qs": { - "version": "6.5.2", - "bundled": true - }, - "read": { - "version": "1.0.7", - "bundled": true, + } + } + }, + "@eslint/eslintrc": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", + "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + } + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "abbott": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", + "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true, + "requires": {} + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-includes": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", + "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.5" + } + }, + "array.prototype.flat": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + } + }, + "array.prototype.flatmap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "function-bind": "^1.1.1" + } + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "basictap": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.1.13.tgz", + "integrity": "sha512-74mw9kmAdmdkHqtP70YFqHMYzO3my92kZA4axHbKI7V7sOUCniiVP1R+0wR7Y5BO4v5wnrt4sMU3nLjlvzTuWw==", + "requires": { + "colorette": "^1.2.2", + "concurrun": "^1.1.0", + "righto": "^6.1.3" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "canhazdb-driver-ejdb": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/canhazdb-driver-ejdb/-/canhazdb-driver-ejdb-1.1.4.tgz", + "integrity": "sha512-Fw/2MTDyEHR0JqqSLUN/yY+OGLZWgQj3jM07QOpe/Rv0hYKPhJhBuwHQXOrHt/LcGaKyPqXpFDerHJahTtUWJg==", + "requires": { + "mql-to-jql": "^1.1.9", + "node-ejdb-lite": "^3.3.3", + "uuid": "^8.3.2" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concurrun": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", + "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" + }, + "contains-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "is-callable": "^1.2.3", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", + "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + } + }, + "eslint-config-semistandard": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-15.0.1.tgz", + "integrity": "sha512-sfV+qNBWKOmF0kZJll1VH5XqOAdTmLlhbOl9WKI11d2eMEe+Kicxnpm24PQWHOqAfk5pAWU2An0LjNCXKa4Usg==", + "dev": true, + "requires": {} + }, + "eslint-config-standard": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.0.tgz", + "integrity": "sha512-kMCehB9yXIG+LNsu9uXfm06o6Pt63TFAOzn9tUOzw4r/hFIxHhNR1Xomxy+B5zMrXhqyfHVEcmanzttEjGei9w==", + "dev": true, + "requires": {} + }, + "eslint-config-standard-jsx": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", + "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", + "dev": true, + "requires": {} + }, + "eslint-import-resolver-node": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", + "dev": true, + "requires": { + "debug": "^2.6.9", + "resolve": "^1.13.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { - "mute-stream": "~0.0.4" + "ms": "2.0.0" } }, - "read-cmd-shim": { + "ms": { "version": "2.0.0", - "bundled": true - }, - "read-package-json": { - "version": "3.0.1", - "bundled": true, - "requires": { - "glob": "^7.1.1", - "json-parse-even-better-errors": "^2.3.0", - "normalize-package-data": "^3.0.0", - "npm-normalize-package-bin": "^1.0.0" - } - }, - "read-package-json-fast": { - "version": "2.0.2", - "bundled": true, - "requires": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "bundled": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdir-scoped-modules": { - "version": "1.1.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "eslint-module-utils": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", + "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "pkg-dir": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" + "ms": "^2.1.1" } - }, - "request": { - "version": "2.88.2", - "bundled": true, + } + } + }, + "eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "dev": true, + "requires": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + } + }, + "eslint-plugin-import": { + "version": "2.22.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", + "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", + "dev": true, + "requires": { + "array-includes": "^3.1.1", + "array.prototype.flat": "^1.2.3", + "contains-path": "^0.1.0", + "debug": "^2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "^0.3.4", + "eslint-module-utils": "^2.6.0", + "has": "^1.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.1", + "read-pkg-up": "^2.0.0", + "resolve": "^1.17.0", + "tsconfig-paths": "^3.9.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "tough-cookie": { - "version": "2.5.0", - "bundled": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - } + "ms": "2.0.0" } }, - "resolve": { - "version": "1.20.0", - "bundled": true, + "doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" + "esutils": "^2.0.2", + "isarray": "^1.0.0" } }, - "retry": { - "version": "0.12.0", - "bundled": true + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "dev": true, + "requires": { + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" + }, + "dependencies": { + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true }, - "rimraf": { - "version": "3.0.2", - "bundled": true, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-plugin-promise": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz", + "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==", + "dev": true + }, + "eslint-plugin-react": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", + "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "dev": true, + "requires": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, "requires": { - "glob": "^7.1.3" + "esutils": "^2.0.2" } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true - }, + } + } + }, + "eslint-plugin-standard": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.2.tgz", + "integrity": "sha512-nKptN8l7jksXkwFk++PhJB3cCDTcXOEyhISIN86Ue2feJ1LFyY3PrY3/xT2keXlJSY5bpmbiTG0f885/YKAvTA==", + "dev": true, + "requires": {} + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "dev": true + }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true + }, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-bigint": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", + "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", + "dev": true + }, + "is-boolean-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", + "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "dev": true + }, + "is-core-module": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", + "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "dev": true + }, + "is-number-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", + "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", + "dev": true + }, + "is-regex": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.2" + } + }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsx-ast-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", + "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", + "dev": true, + "requires": { + "array-includes": "^3.1.2", + "object.assign": "^4.1.2" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true + }, + "logslot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", + "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "requires": { + "chalk": "^4.1.1" + } + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "mql-to-jql": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.1.9.tgz", + "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "ndjson-fe": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/ndjson-fe/-/ndjson-fe-1.2.10.tgz", + "integrity": "sha512-KUnVQdm+kWJt/2HhiBmZ4EhzliHWXH6GglJDVZrrF8vr8ps2sBVFzijcz/jsXm7P9ji4lWWU3X1D1RZp0F6lWA==" + }, + "node-ejdb-lite": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", + "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", + "requires": { + "semver": "^7.3.5" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { "semver": { - "version": "7.3.5", - "bundled": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true - }, - "signal-exit": { - "version": "3.0.3", - "bundled": true - }, - "smart-buffer": { - "version": "4.1.0", - "bundled": true - }, - "socks": { - "version": "2.6.1", - "bundled": true, - "requires": { - "ip": "^1.1.5", - "smart-buffer": "^4.1.0" - } - }, - "socks-proxy-agent": { - "version": "5.0.0", - "bundled": true, - "requires": { - "agent-base": "6", - "debug": "4", - "socks": "^2.3.3" - } - }, - "spdx-correct": { - "version": "3.1.1", - "bundled": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "bundled": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "bundled": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.7", - "bundled": true - }, - "sshpk": { - "version": "1.16.1", - "bundled": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "bundled": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "stringify-package": { - "version": "1.0.1", - "bundled": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "7.2.0", - "bundled": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "tar": { - "version": "6.1.0", - "bundled": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "text-table": { - "version": "0.2.0", - "bundled": true - }, - "tiny-relative-date": { - "version": "1.3.0", - "bundled": true - }, - "treeverse": { - "version": "1.0.4", - "bundled": true - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "bundled": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "unique-filename": { - "version": "1.1.1", - "bundled": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "bundled": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "uri-js": { - "version": "4.4.1", - "bundled": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true - }, - "uuid": { - "version": "3.4.0", - "bundled": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "bundled": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "bundled": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "bundled": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "walk-up-path": { - "version": "1.0.0", - "bundled": true - }, - "wcwidth": { - "version": "1.0.1", - "bundled": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "which": { - "version": "2.0.2", - "bundled": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true - }, - "write-file-atomic": { - "version": "3.0.3", - "bundled": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "yallist": { - "version": "4.0.0", - "bundled": true + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true } } }, @@ -3307,7 +4329,8 @@ "object-inspect": { "version": "1.10.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==" + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", + "dev": true }, "object-keys": { "version": "1.1.1", @@ -3385,21 +4408,21 @@ } }, "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { - "yocto-queue": "^0.1.0" + "p-try": "^1.0.0" } }, "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "p-limit": "^3.0.2" + "p-limit": "^1.1.0" } }, "p-try": { @@ -3427,9 +4450,9 @@ } }, "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true }, "path-is-absolute": { @@ -3541,12 +4564,6 @@ "json-parse-better-errors": "^1.0.1" } }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -3568,51 +4585,6 @@ "dev": true, "requires": { "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } } }, "prelude-ls": { @@ -3644,14 +4616,6 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, - "qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", - "requires": { - "side-channel": "^1.0.4" - } - }, "react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -3677,58 +4641,8 @@ "requires": { "find-up": "^2.0.0", "read-pkg": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } } }, - "reconnecting-websocket": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz", - "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==" - }, "regexp.prototype.flags": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", @@ -3745,12 +4659,6 @@ "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", "dev": true }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, "require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -3773,16 +4681,10 @@ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, - "rgb-hex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rgb-hex/-/rgb-hex-3.0.0.tgz", - "integrity": "sha512-8h7ZcwxCBDKvchSWbWngJuSCqJGQ6nDuLLg+QcRyQDbX9jMWt+PpPeXAhSla0GOooEomk3lCprUpGkMdsLjKyg==" - }, "righto": { "version": "6.1.3", "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", - "dev": true, "requires": { "abbott": "^1.1.3", "setimmediate": "^1.0.5" @@ -3797,12 +4699,6 @@ "glob": "^7.1.3" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, "semistandard": { "version": "16.0.0", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.0.tgz", @@ -3976,15 +4872,6 @@ "glob": "^7.1.3" } }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, "slice-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", @@ -4029,14 +4916,22 @@ "slice-ansi": "^2.1.0", "string-width": "^3.0.0" } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true } } }, "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } }, "server-destroy": { "version": "1.0.1", @@ -4046,8 +4941,7 @@ "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "shebang-command": { "version": "2.0.0", @@ -4068,18 +4962,13 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, "requires": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", "object-inspect": "^1.9.0" } }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, "slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -4091,12 +4980,6 @@ "is-fullwidth-code-point": "^3.0.0" } }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -4147,19 +5030,6 @@ "xdg-basedir": "^4.0.0" } }, - "string-to-color": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/string-to-color/-/string-to-color-2.2.2.tgz", - "integrity": "sha512-XeA2goP7PNsSlz8RRn6KhYswnMf5Tl+38ajfy8n4oZJyMGC4qqKgHNHsZ/3qwvr42NRIjf9eSr721SyetDeMkA==", - "requires": { - "colornames": "^1.1.1", - "hex-rgb": "^4.1.0", - "lodash.padend": "^4.6.1", - "lodash.trimstart": "^4.5.1", - "lodash.words": "^4.2.0", - "rgb-hex": "^3.0.0" - } - }, "string-width": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", @@ -4251,9 +5121,9 @@ }, "dependencies": { "ajv": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.5.0.tgz", - "integrity": "sha512-Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", + "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -4271,22 +5141,11 @@ } }, "tcpocket": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-5.0.6.tgz", - "integrity": "sha512-9VeOfMGJd0x0vPdz6b2PUT0O5R5l+xWaDLxfpHJJPYpB3INE7ZEfeGo+3GrUjKZ9U1sjJNCvN7WjW6x44HFJ0Q==", - "requires": { - "ndjson-fe": "^1.2.7" - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-5.1.1.tgz", + "integrity": "sha512-5r2jH74SPB1ErHkqBMtw5MH57ULY3gICtvCbJxDos360XfBkDmK5RCSMHsfEfxCRUW92wtCdThlKEOZCLTJuHQ==", "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" + "ndjson-fe": "^1.2.10" } }, "text-table": { @@ -4317,9 +5176,9 @@ } }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, "unbox-primitive": { @@ -4354,17 +5213,6 @@ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, - "v8-to-istanbul": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", - "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - } - }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -4403,17 +5251,6 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -4429,19 +5266,6 @@ "mkdirp": "^0.5.1" } }, - "write-response": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/write-response/-/write-response-1.2.3.tgz", - "integrity": "sha512-Na6IPeWSJJsu3sqGmvVVsEAhgCSjbycZOQJJc8mm8Ek3zX4u2kkoFXDHouWw6Wd0VdAJLfuoWEnHVsGqKv0/LQ==", - "requires": { - "error-with-object": "^1.1.0" - } - }, - "ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==" - }, "wtfnode": { "version": "0.8.4", "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", @@ -4453,44 +5277,10 @@ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.7", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", - "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } } diff --git a/package.json b/package.json index 56069f1..c275b3a 100644 --- a/package.json +++ b/package.json @@ -1,55 +1,30 @@ { - "name": "canhazdb-server", - "version": "7.0.2", - "description": "A shaded and clustered database communicated over http rest.", - "main": "./lib/index.js", - "bin": { - "canhazdb-server": "lib/cli.js" - }, - "directories": { - "lib": "lib", - "test": "test" + "name": "canhazdb", + "version": "8.0.0", + "type": "module", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" }, + "keywords": [], + "author": "", + "license": "ISC", "dependencies": { - "axios": "^0.21.1", + "basictap": "^1.1.13", + "canhazdb-driver-ejdb": "^1.1.4", "chalk": "^4.1.1", - "debarrel": "^1.0.1", - "final-stream": "^2.0.3", - "get-port": "^5.1.1", - "hinton": "^1.0.0", - "lockbase": "^1.0.9", + "logslot": "^2.1.0", "minimist": "^1.2.5", - "ndjson-fe": "^1.2.7", - "npm": "^7.15.1", - "qs": "^6.10.1", - "reconnecting-websocket": "^4.4.0", + "mql-to-jql": "^1.1.9", + "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "tcpocket": "^5.0.6", - "uuid": "^8.3.2", - "write-response": "^1.2.3", - "ws": "^7.4.6", + "tcpocket": "^5.1.1", "wtfnode": "^0.8.4" }, "devDependencies": { - "basictap": "^1.1.13", - "c8": "^7.7.2", - "canhazdb-driver-ejdb": "^1.1.3", - "eslint": "^7.27.0", - "semistandard": "^16.0.0" - }, - "scripts": { - "lint": "eslint .", - "test": "./makeCerts.sh && c8 -o /tmp node --unhandled-rejections=strict test" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/canhazdb/server.git" - }, - "keywords": [], - "author": "", - "license": "AGPL-3.0", - "bugs": { - "url": "https://github.com/canhazdb/server/issues" - }, - "homepage": "https://github.com/canhazdb/server#readme" + "eslint": "^7.28.0", + "semistandard": "^16.0.0", + "uuid": "^8.3.2" + } } diff --git a/redeploy.sh b/redeploy.sh deleted file mode 100755 index 59559a4..0000000 --- a/redeploy.sh +++ /dev/null @@ -1,7 +0,0 @@ -docker build -t canhazdb . -docker stack rm canhazdb -docker rm -f $(docker ps -aq) -sleep 6 -docker stack deploy -c docker-compose.yml canhazdb -docker service logs canhazdb_canhazdb -f - diff --git a/stack.yml b/stack.yml deleted file mode 100644 index 31a4e16..0000000 --- a/stack.yml +++ /dev/null @@ -1,19 +0,0 @@ -version: "3.8" - -services: - canhazdb: - image: canhazdb/server - command: - - "--join-from-dns=tasks.canhazdb" - - "--tls-ca=/certs/ca.cert.pem" - - "--tls-cert=/certs/canhazdb.cert.pem" - - "--tls-key=/certs/canhazdb.privkey.pem" - - "--host=canhazdb" - - "--data-dir=/data" - environment: - - CANHAZDB_NODE_NAME={{.Task.Name}} - volumes: - - ./data:/data - - ./certs:/certs - deploy: - replicas: 3 diff --git a/test/batch.js b/test/batch.js deleted file mode 100644 index 3515c0e..0000000 --- a/test/batch.js +++ /dev/null @@ -1,42 +0,0 @@ -const fs = require('fs'); - -const test = require('basictap'); -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); - -const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')], - requestCert: true -}; - -test('batch: post two records', async t => { - t.plan(7); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - data: [{ - a: 1 - }, { - a: 2 - }] - }); - - const getRequest1 = await httpRequest(`${node.url}/tests/${postRequest.data[0].document.id}`); - const getRequest2 = await httpRequest(`${node.url}/tests/${postRequest.data[1].document.id}`); - cluster.closeAll(); - - t.equal(postRequest.data[0].status, 201); - t.equal(postRequest.data[0].document.a, 1); - t.equal(getRequest1.data.a, 1); - - t.equal(postRequest.data[1].status, 201); - t.equal(postRequest.data[1].document.a, 2); - t.equal(getRequest2.data.a, 2); - - t.equal(postRequest.status, 201); -}); diff --git a/test/collectionMetadata.js b/test/collectionMetadata.js deleted file mode 100644 index 6b3fb71..0000000 --- a/test/collectionMetadata.js +++ /dev/null @@ -1,119 +0,0 @@ -const fs = require('fs'); - -const test = require('basictap'); -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); - -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - -const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')], - requestCert: true -}; - -test('collectionMetadata - create a record', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - await sleep(100); - - const metadataRequest = await httpRequest(`${cluster.nodes[1].url}/system.collections`, { - method: 'GET' - }); - - t.equal(metadataRequest.data[0].documentCount, 1); - - const deleteRequest = await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`, { - method: 'DELETE' - }); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests/${postRequest.data.id}`); - - cluster.closeAll(); - - t.deepEqual(getRequest.data, {}); - - t.equal(postRequest.status, 201); - t.equal(deleteRequest.status, 200); - t.equal(getRequest.status, 404); -}); - -test('collectionMetadata - delete a record before debarrel', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - const deleteRequest = await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`, { - method: 'DELETE' - }); - - await sleep(100); - - const metadataRequest = await httpRequest(`${cluster.nodes[1].url}/system.collections`, { - method: 'GET' - }); - - t.equal(metadataRequest.data[0].documentCount, 0); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests/${postRequest.data.id}`); - - cluster.closeAll(); - - t.deepEqual(getRequest.data, {}); - - t.equal(postRequest.status, 201); - t.equal(deleteRequest.status, 200); - t.equal(getRequest.status, 404); -}); - -test('collectionMetadata - delete a record after tick', async t => { - t.plan(4); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - await sleep(300); - - const deleteRequest = await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`, { - method: 'DELETE' - }); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests/${postRequest.data.id}`); - - cluster.closeAll(); - - t.deepEqual(getRequest.data, {}); - - t.equal(postRequest.status, 201); - t.equal(deleteRequest.status, 200); - t.equal(getRequest.status, 404); -}); diff --git a/test/helpers/createTestCluster.js b/test/helpers/createTestCluster.js deleted file mode 100644 index de5aa27..0000000 --- a/test/helpers/createTestCluster.js +++ /dev/null @@ -1,55 +0,0 @@ -const fs = require('fs'); -const uuid = require('uuid').v4; -const canhazdb = require('../../lib'); - -const selectRandomItemFromArray = require('../../utils/selectRandomItemFromArray'); - -try { - fs.rmdirSync('./canhazdata', { recursive: true }); -} catch (error) { - console.log(error); -} - -let lastUsedPort = 11000; -const getNewPort = () => { - lastUsedPort = lastUsedPort + 1; - return lastUsedPort; -}; - -async function createTestCluster (count, tls) { - const nodeOptions = Array(count) - .fill(null) - .map((_, index) => { - const port = getNewPort(); - - return { - host: 'localhost', - logger: () => {}, - port, - queryPort: getNewPort(), - dataDirectory: './canhazdata/' + uuid(), - tls - }; - }); - - const nodePromises = nodeOptions - .map((options) => canhazdb({ - ...options, - join: nodeOptions.map(options => `localhost:${options.port}`) - })); - - const nodes = await Promise.all(nodePromises); - - return { - getRandomNodeUrl: () => { - return selectRandomItemFromArray(nodes); - }, - - closeAll: () => { - return Promise.all(nodes.map(node => node.close())); - }, - - nodes - }; -} -module.exports = createTestCluster; diff --git a/test/helpers/createTestServer.js b/test/helpers/createTestServer.js new file mode 100644 index 0000000..e27965c --- /dev/null +++ b/test/helpers/createTestServer.js @@ -0,0 +1,50 @@ +import fs from 'fs'; +import { v4 as uuid } from 'uuid'; +import canhazdb from '../../lib/index.js'; + +const tls = { + key: fs.readFileSync('./certs/localhost.privkey.pem'), + cert: fs.readFileSync('./certs/localhost.cert.pem'), + ca: [fs.readFileSync('./certs/ca.cert.pem')], + requestCert: true +}; + +let lastUsedPort = 11000; +const getNewPort = () => { + lastUsedPort = lastUsedPort + 1; + return lastUsedPort; +}; + +async function createTestServers (count) { + const join = []; + + const servers = await Promise.all( + Array(count) + .fill(null) + .map(async (_, index) => { + const port = getNewPort(); + const nodeName = uuid(); + + const server = canhazdb({ + dataDirectory: './canhazdata/' + nodeName, + nodeName: nodeName, + host: 'localhost', + port: port, + join, + tls + }); + + join.push('localhost:' + port); + + return server; + }) + ); + + servers.close = function () { + return Promise.all(servers.map(server => server.close())); + }; + + return servers; +} + +export default createTestServers; diff --git a/test/helpers/httpRequest.js b/test/helpers/httpRequest.js deleted file mode 100644 index e5dd85f..0000000 --- a/test/helpers/httpRequest.js +++ /dev/null @@ -1,11 +0,0 @@ -const fs = require('fs'); -const https = require('https'); - -const httpsAgent = new https.Agent({ - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')] -}); - -module.exports = require('axios') - .create({ httpsAgent, validateStatus: () => true }); diff --git a/test/index.js b/test/index.js index 7fc01ae..92ac360 100644 --- a/test/index.js +++ b/test/index.js @@ -1,7 +1,111 @@ -require('../utils/validateAlphaNumericDashDot'); -require('./notify'); -require('./locking'); -require('./integration'); -require('./batch'); -require('./collectionMetadata'); -require('./ws'); +import test from 'basictap'; +import createTestServer from './helpers/createTestServer.js'; + +import c from '../lib/constants.js'; +import tcpocket from 'tcpocket'; + +// wtfnode.init(); + +test('info - single server', async t => { + t.plan(5); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + + const result = await client.send({ + [c.COMMAND]: c.INFO, + [c.INTERNAL]: true + }); + + t.equal(result[c.STATUS], 200, 'response had 200 status'); + t.equal(result[c.DATA].nodeName.length, 36, 'nodeName has correct length'); + t.equal(result[c.DATA].nodes.length, 1, 'one node was returned'); + t.equal(result[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); + t.equal(result[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); + + await Promise.all([ + client.close(), + servers.close() + ]); +}); + +test('info - multiple servers', async t => { + t.plan(5); + + const servers = await createTestServer(5); + const client = tcpocket.createClient(servers[0].clientConfig); + + const result = await client.send({ + [c.COMMAND]: c.INFO, + [c.INTERNAL]: true + }); + + t.equal(result[c.STATUS], 200, 'response had 200 status'); + t.equal(result[c.DATA].nodeName.length, 36, 'nodeName has correct length'); + t.equal(result[c.DATA].nodes.length, 5, 'five nodes were returned'); + t.equal(result[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); + t.equal(result[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); + + await Promise.all([ + client.close(), + servers.close() + ]); +}); + +test('post - single server', async t => { + t.plan(11); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + + const postResponses = await Promise.all([ + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar1' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar2' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar3' + } + }) + ]); + + t.equal(postResponses[0][c.STATUS], 201, 'has status'); + t.ok(postResponses[0][c.DATA].id, 'has id'); + t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests' + }); + + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + const sortedDocuments = getResponse[c.DATA] + .sort((a, b) => a.foo > b.foo ? 1 : -1); + + t.ok(sortedDocuments[0].id, 'has id property'); + t.equal(sortedDocuments[0].foo, 'bar1', 'has foo property'); + t.ok(sortedDocuments[1].id, 'has id property'); + t.equal(sortedDocuments[1].foo, 'bar2', 'has foo property'); + t.ok(sortedDocuments[2].id, 'has id property'); + t.equal(sortedDocuments[2].foo, 'bar3', 'has foo property'); + + await client.close(); + await servers.close(); +}); diff --git a/test/integration.js b/test/integration.js deleted file mode 100644 index a465665..0000000 --- a/test/integration.js +++ /dev/null @@ -1,720 +0,0 @@ -const fs = require('fs'); - -const packageJson = require('../package.json'); - -const test = require('basictap'); -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); -const canhazdb = require('../lib'); - -const mapTimes = (times, fn) => Array(times).fill().map((_, index) => fn(index)); -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - -const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')], - requestCert: true -}; - -test('get: root pathname', async t => { - t.plan(1); - - const node = await canhazdb({ host: 'localhost', port: 7071, queryPort: 8071, tls, single: true }); - - const request = await httpRequest(`${node.url}/`); - - await node.close(); - - t.deepEqual(request.data, { - info: 'https://canhazdb.com', - name: packageJson.name, - status: 200, - version: packageJson.version - }); -}); - -function rootMethodNotAllowed (method) { - return async t => { - t.plan(2); - - const node = await canhazdb({ host: 'localhost', port: 7071, queryPort: 8071, tls, single: true }); - - const request = await httpRequest(`${node.url}/`, { method }); - - await node.close(); - - t.deepEqual(request.data, { error: 'method not allowed' }); - t.equal(request.status, 405); - }; -} - -function validateBodyExists (method) { - return async t => { - t.plan(2); - - const node = await canhazdb({ host: 'localhost', port: 7071, queryPort: 8071, tls, single: true }); - - const request = await httpRequest(`${node.url}/exampleCollection`, { method }); - - await node.close(); - - t.deepEqual(request.data, { error: 'empty request body not allowed' }); - t.equal(request.status, 400); - }; -} - -function validateBodyJson (method) { - return async t => { - t.plan(2); - - const node = await canhazdb({ host: 'localhost', port: 7071, queryPort: 8071, tls, single: true }); - - const request = await httpRequest(`${node.url}/exampleCollection`, { method, data: 'not json' }); - - await node.close(); - - t.deepEqual(request.data, { error: 'request body not valid json' }); - t.equal(request.status, 400); - }; -} - -test('post: root pathname', rootMethodNotAllowed('post')); -test('put: root pathname', rootMethodNotAllowed('put')); -test('patch: root pathname', rootMethodNotAllowed('patch')); -test('delete: root pathname', rootMethodNotAllowed('delete')); - -test('post: body exists', validateBodyExists('post')); -test('put: body exists', validateBodyExists('put')); -test('patch: body exists', validateBodyExists('patch')); - -test('post: body is json', validateBodyJson('post')); -test('put: body is json', validateBodyJson('put')); -test('patch: body is json', validateBodyJson('patch')); - -test('post: and get some data', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - const getRequest = await httpRequest(`${node.url}/tests/${postRequest.data.id}`); - await cluster.closeAll(); - - t.deepEqual(getRequest.data, { - id: getRequest.data.id ? getRequest.data.id : t.fail(), - a: 1, - b: 2, - c: 3 - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); -}); - -test('post: and count some data', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - await Promise.all([ - httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 1 } - }), - - httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 2 } - }) - ]); - - const getRequest = await httpRequest(`${node.url}/tests?count=true`); - await cluster.closeAll(); - - t.deepEqual(getRequest.data, { - documentCount: 2 - }); - - t.equal(getRequest.status, 200); -}); - -test('post: and getAll specific fields only', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - const getRequest = await httpRequest(`${node.url}/tests?fields=["b"]`); - await cluster.closeAll(); - - t.deepEqual(getRequest.data[0], { - id: getRequest.data[0].id ? getRequest.data[0].id : t.fail(), - b: 2 - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); -}); - -test('post: and getOne specific fields only', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - const getRequest = await httpRequest(`${node.url}/tests/${postRequest.data.id}?fields=["b"]`); - await cluster.closeAll(); - - t.deepEqual(getRequest.data, { - id: getRequest.data.id ? getRequest.data.id : t.fail(), - b: 2 - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); -}); - -test('post: some data with invalid collection name', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/not$allowed/notfound`, { - method: 'POST', - data: { - a: 1 - } - }); - - await cluster.closeAll(); - - t.deepEqual(postRequest.data, { - errors: ['collectionId can only contain a-z, A-Z, 0-9, dashs or dots'] - }); - - t.equal(postRequest.status, 422); -}); - -test('put: some data', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { - a: 1 - } - }); - - await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`, { - method: 'PUT', - data: { - a: 2 - } - }); - - const getRequest = await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`); - - await cluster.closeAll(); - - t.deepEqual(getRequest.data, { - id: postRequest.data.id, - a: 2 - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); -}); - -test('patch: some data', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { - a: 1 - } - }); - - await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`, { - method: 'PATCH', - data: { - b: "a'2" - } - }); - - const getRequest = await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`); - - await cluster.closeAll(); - - t.deepEqual(getRequest.data, { - id: postRequest.data.id, - a: 1, - b: "a'2" - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); -}); - -test('delete: record returns a 404', async t => { - t.plan(4); - - const cluster = await createTestCluster(3, tls); - - const postRequest = await httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { - a: 1, - b: 2, - c: 3 - } - }); - - const deleteRequest = await httpRequest(`${cluster.nodes[1].url}/tests/${postRequest.data.id}`, { - method: 'DELETE' - }); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests/${postRequest.data.id}`); - - await cluster.closeAll(); - - t.deepEqual(getRequest.data, {}); - - t.equal(postRequest.status, 201); - t.equal(deleteRequest.status, 200); - t.equal(getRequest.status, 404); -}); - -test('find: collection has no records', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests`); - - await cluster.closeAll(); - - t.deepEqual(getRequest.status, 200); - t.deepEqual(getRequest.data, []); -}); - -test('find: return all three records', async t => { - t.plan(8); - - const cluster = await createTestCluster(3, tls); - - await Promise.all([ - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { a: 1, b: 2, c: 3 } - }), - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { d: 4, e: 5, f: 6 } - }), - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { g: 7, h: 8, i: 9 } - }) - ]); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 3); - t.equal(getRequest.status, 200); - - t.ok(getRequest.data[0].id); - t.ok(getRequest.data[1].id); - t.ok(getRequest.data[2].id); - - getRequest.data.forEach(item => { - delete item.id; - }); - - t.deepEqual(getRequest.data.find(item => item.a), { a: 1, b: 2, c: 3 }); - t.deepEqual(getRequest.data.find(item => item.d), { d: 4, e: 5, f: 6 }); - t.deepEqual(getRequest.data.find(item => item.g), { g: 7, h: 8, i: 9 }); -}); - -test('find: filter by querystring', async t => { - t.plan(4); - - const cluster = await createTestCluster(3, tls); - - await Promise.all([ - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { a: 1, b: 2, c: 3 } - }), - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { d: 4, e: 5, f: 6 } - }), - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { g: 7, h: 8, i: 9 } - }) - ]); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests?query={"d":4}`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 1); - t.equal(getRequest.status, 200); - - t.ok(getRequest.data[0].id); - delete getRequest.data[0].id; - - t.deepEqual(getRequest.data[0], { d: 4, e: 5, f: 6 }); -}); - -test('filter: find one out of three records', async t => { - t.plan(4); - - const cluster = await createTestCluster(3, tls); - - await Promise.all([ - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { a: 1, b: 2, c: 3 } - }), - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { d: 4, e: 5, f: 6 } - }), - httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { g: 7, h: 8, i: 9 } - }) - ]); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests?query={"d":4}`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 1); - t.equal(getRequest.status, 200); - - t.ok(getRequest.data[0].id); - delete getRequest.data[0].id; - - t.deepEqual(getRequest.data[0], { d: 4, e: 5, f: 6 }); -}); - -test('filter: delete two out of three records', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const posts = Array(10).fill('').map((_, index) => { - return httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { index } - }); - }); - - await Promise.all(posts); - - const deletions = await httpRequest(`${cluster.nodes[2].url}/tests?query={"index":{"$gt":5}}`, { method: 'DELETE' }); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests`); - - await cluster.closeAll(); - - t.equal(deletions.status, 200); - t.equal(deletions.data.changes, 4); - - t.equal(getRequest.status, 200); - t.equal(getRequest.data.length, 6); - - t.ok(getRequest.data[0].id); - delete getRequest.data[0].id; -}); - -test('filter: put two out of three records', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const posts = Array(10).fill('').map((_, index) => { - return httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { index } - }); - }); - - await Promise.all(posts); - - const putResponse = await httpRequest(`${cluster.nodes[2].url}/tests?query={"index":{"$gt":5}}`, { - method: 'PUT', - data: { - a: 1 - } - }); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests`); - - await cluster.closeAll(); - - t.equal(putResponse.status, 200); - t.equal(putResponse.data.changes, 4); - - t.equal(getRequest.status, 200); - t.equal(getRequest.data.length, 10); - - t.equal(getRequest.data.filter(item => item.a === 1).length, 4); -}); - -test('limit: find three records', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - - const posts = Array(10).fill('').map((_, index) => { - return httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { index } - }); - }); - - await Promise.all(posts); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests?limit=3`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 3); - t.equal(getRequest.status, 200); -}); - -test('order: ascending order three records', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const posts = Array(10).fill('').map((_, index) => { - return httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { index } - }); - }); - - await Promise.all(posts); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests?order=["asc(index)"]`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 10); - t.equal(getRequest.status, 200); - - t.deepEqual(getRequest.data[0].index, 0); - t.deepEqual(getRequest.data[1].index, 1); - t.deepEqual(getRequest.data[5].index, 5); -}); - -test('order: descending order three records', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const posts = Array(10).fill('').map((_, index) => { - return httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { index } - }); - }); - - await Promise.all(posts); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests?order=["desc(index)"]`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 10); - t.equal(getRequest.status, 200); - - t.deepEqual(getRequest.data[0].index, 9); - t.deepEqual(getRequest.data[1].index, 8); - t.deepEqual(getRequest.data[5].index, 4); -}); - -test('order: multiple descending order three records', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - - const posts = Array(10).fill('').map((_, index) => { - return httpRequest(`${cluster.nodes[1].url}/tests`, { - method: 'POST', - data: { index, otherIndex: index } - }); - }); - - await Promise.all(posts); - - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests?order=["desc(index)","desc(otherIndex)"]`); - - await cluster.closeAll(); - - t.equal(getRequest.data.length, 10); - t.equal(getRequest.status, 200); - - t.deepEqual(getRequest.data[0].index, 9); - t.deepEqual(getRequest.data[1].index, 8); - t.deepEqual(getRequest.data[5].index, 4); -}); - -test('autojoin: join learned nodes automatically', async t => { - t.plan(4); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const node4 = await canhazdb({ host: 'localhost', port: 7071, queryPort: 8071, tls, join: [`${node.host}:${node.port}`] }); - - await sleep(2500); - - await cluster.closeAll(); - await node4.close(); - - const getAllPorts = node => node.nodes.map(node => node.port).sort(); - t.deepEqual(getAllPorts(node4), [cluster.nodes[0].port, cluster.nodes[1].port, cluster.nodes[2].port]); - - t.deepEqual(getAllPorts(cluster.nodes[0]), [cluster.nodes[0].port, cluster.nodes[1].port, cluster.nodes[2].port]); - t.deepEqual(getAllPorts(cluster.nodes[1]), [cluster.nodes[0].port, cluster.nodes[1].port, cluster.nodes[2].port]); - t.deepEqual(getAllPorts(cluster.nodes[2]), [cluster.nodes[0].port, cluster.nodes[1].port, cluster.nodes[2].port]); -}); - -test('disaster: one node goes offline', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - - await cluster.nodes[1].close(); - const getRequest = await httpRequest(`${cluster.nodes[2].url}/tests`); - - await cluster.closeAll(); - - t.equal(getRequest.status, 503); - t.deepEqual(getRequest.data, { - errors: [ - 'a node in the cluster is unhealthy, therefore the database is down' - ] - }); -}); - -test('disaster: one node goes offline then online', async t => { - t.plan(4); - - const cluster = await createTestCluster(3); - - await cluster.nodes[1].close(); - - const getRequestAfterClose = await httpRequest(`${cluster.nodes[2].url}/tests`); - - t.equal(getRequestAfterClose.status, 503); - t.deepEqual(getRequestAfterClose.data, { - errors: [ - 'a node in the cluster is unhealthy, therefore the database is down' - ] - }); - - await cluster.nodes[1].open(); - - await sleep(1000); - - const getRequestAfterReopen = await httpRequest(`${cluster.nodes[2].url}/tests`); - - await cluster.closeAll(); - - t.equal(getRequestAfterReopen.status, 200); - t.deepEqual(getRequestAfterReopen.data, []); -}); - -test('disaster: recover and still works', async t => { - t.plan(6); - - const cluster = await createTestCluster(10); - - await Promise.all([ - cluster.nodes[1].close(), - cluster.nodes[3].close(), - cluster.nodes[7].close() - ]); - - const getRequestAfterClose = await httpRequest(`${cluster.nodes[2].url}/tests`); - - t.equal(getRequestAfterClose.status, 503); - t.deepEqual(getRequestAfterClose.data, { - errors: [ - 'a node in the cluster is unhealthy, therefore the database is down' - ] - }); - - await Promise.all([ - cluster.nodes[1].open(), - cluster.nodes[3].open(), - cluster.nodes[7].open() - ]); - - await sleep(1000); - - const getRequestAfterReopen = await httpRequest(`${cluster.nodes[2].url}/tests`); - - t.equal(getRequestAfterReopen.status, 200); - t.deepEqual(getRequestAfterReopen.data, []); - - await Promise.all(mapTimes(100, index => { - return httpRequest(`${cluster.nodes[index % 10].url}/tests`, { - method: 'POST', - data: { a: index } - }); - })); - - const getRequests = await Promise.all(mapTimes(10, index => { - return httpRequest(`${cluster.nodes[index].url}/tests`).then(response => response.data); - })); - - t.deepEqual(getRequests.flatMap(data => data.length), [100, 100, 100, 100, 100, 100, 100, 100, 100, 100]); - - await cluster.closeAll(); - - t.ok('finished'); -}); diff --git a/test/locking.js b/test/locking.js deleted file mode 100644 index 4754555..0000000 --- a/test/locking.js +++ /dev/null @@ -1,278 +0,0 @@ -const fs = require('fs'); - -const test = require('basictap'); -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); - -const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')], - requestCert: true -}; - -test('lock: and post some data (success)', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const lockRequest = await httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tests'] - }); - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - headers: { - 'x-lock-id': lockRequest.data.id - }, - data: { - a: 1, - b: 2, - c: 3 - } - }); - - const getRequest = await httpRequest(`${node.url}/tests/${postRequest.data.id}`); - - const unlockRequest = await httpRequest(`${node.url}/_/locks/${lockRequest.data.id}`, { - method: 'DELETE' - }); - t.equal(unlockRequest.status, 200); - - cluster.closeAll(); - - t.equal(postRequest.status, 201); - - t.deepEqual(getRequest.data, { - id: getRequest.data.id ? getRequest.data.id : t.fail(), - a: 1, - b: 2, - c: 3 - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); -}); - -test('lock: delete lock with incorrect id', async t => { - t.plan(1); - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const unlockRequest = await httpRequest(`${node.url}/_/locks/dunno`, { - method: 'DELETE' - }); - t.equal(unlockRequest.status, 404); - - cluster.closeAll(); -}); - -test('lock: multiple happen in order', async t => { - t.plan(6); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - let firstFinished = false; - let secondFinished = false; - - const first = httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tests'] - }).then(async lockRequest => { - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - headers: { - 'x-lock-id': lockRequest.data.id - }, - data: { a: 1 } - }); - t.equal(postRequest.status, 201); - - firstFinished = true; - - const unlockRequest = await httpRequest(`${node.url}/_/locks/${lockRequest.data.id}`, { - method: 'DELETE' - }); - - t.equal(unlockRequest.status, 200); - }); - - const second = httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tests'] - }).then(async lockRequest => { - t.ok(firstFinished, 'first lock has finished before second starts'); - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - headers: { - 'x-lock-id': lockRequest.data.id - }, - data: { a: 1 } - }); - - t.equal(postRequest.status, 201); - - secondFinished = true; - const unlockRequest = await httpRequest(`${node.url}/_/locks/${lockRequest.data.id}`, { - method: 'DELETE' - }); - t.equal(unlockRequest.status, 200); - }); - - await Promise.all([first, second]); - - cluster.closeAll(); - - t.ok(secondFinished, 'second lock ran'); -}); - -test('lock: and post some data (conflict + fail)', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const lockRequest = await httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tests'] - }); - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - headers: { - 'x-lock-strategy': 'fail' - }, - data: { - a: 1 - } - }); - - const unlockRequest = await httpRequest(`${node.url}/_/locks/${lockRequest.data.id}`, { - method: 'DELETE' - }); - t.equal(unlockRequest.status, 200); - - cluster.closeAll(); - - t.equal(postRequest.status, 409); -}); - -test('lock: and post some data (conflict + wait)', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const lockRequest = await httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tests'] - }); - - httpRequest(`${node.url}/tests`, { - method: 'POST', - headers: { - 'x-lock-strategy': 'wait' - }, - data: { - a: 1, - b: 2, - c: 3 - } - }).then(async postRequest => { - const getRequest = await httpRequest(`${node.url}/tests/${postRequest.data.id}`); - cluster.closeAll(); - - t.equal(postRequest.status, 201); - t.deepEqual(getRequest.data, { - id: getRequest.data.id ? getRequest.data.id : t.fail(), - a: 1, - b: 2, - c: 3 - }); - - t.equal(postRequest.status, 201); - t.equal(getRequest.status, 200); - }); - - const unlockRequest = await httpRequest(`${node.url}/_/locks/${lockRequest.data.id}`, { - method: 'DELETE' - }); - t.equal(unlockRequest.status, 200); -}); - -test('lock: all methods lock', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - let unlocked = false; - - const postRequest = await httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 1 } - }); - - const lockRequest = await httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tessts'] - }); - - const putRequest = httpRequest(`${node.url}/tests/${postRequest.data.id}`, { - method: 'PUT', - data: { a: 2 } - }); - - const patchRequest = httpRequest(`${node.url}/tests/${postRequest.data.id}`, { - method: 'PATCH', - data: { a: 2 } - }); - - Promise.all([putRequest, patchRequest]) - .then(async (args) => { - const deleteRequest = await httpRequest(`${node.url}/tests/${postRequest.data.id}`, { - method: 'DELETE' - }); - await cluster.closeAll(); - t.deepEqual(args.map(arg => arg.status), [200, 200]); - t.equal(deleteRequest.status, 200); - t.ok(unlocked, 'requests happened after unlock'); - }); - - await httpRequest(`${node.url}/_/locks/${lockRequest.data.id}`, { - method: 'DELETE' - }); - - unlocked = true; -}); - -test('lock: and wait but node closes', async t => { - t.plan(1); - - const cluster = await createTestCluster(1, tls); - const node = cluster.getRandomNodeUrl(); - - await httpRequest(`${node.url}/_/locks`, { - method: 'POST', - data: ['tests'] - }); - - httpRequest(`${node.url}/tests`, { - method: 'POST', - headers: { - 'x-lock-strategy': 'wait' - }, - data: { a: 1 } - }).then(postRequest => { - t.fail('should not have resolved successfully'); - }).catch(error => { - t.equal(error.message, 'socket hang up'); - }); - - setTimeout(() => { - cluster.closeAll(); - }, 500); -}); diff --git a/test/notify.js b/test/notify.js deleted file mode 100644 index f7dcdeb..0000000 --- a/test/notify.js +++ /dev/null @@ -1,214 +0,0 @@ -const fs = require('fs'); - -const WebSocket = require('ws'); -const test = require('basictap'); - -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); - -const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')], - requestCert: true -}; - -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - -test('notify: post some data', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', function open () { - ws.send(JSON.stringify([1, 'NOTIFY', 'POST:/tests/.*'])); - - httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 1 } - }).then(() => { - cluster.closeAll(); - }); - }); - - ws.on('message', function incoming (rawData) { - const [type, data] = JSON.parse(rawData); - - if (type === 'A') { - t.equal(data, 1); - return; - } - - const [path, collectionId, resourceId, pattern] = data; - - t.ok(path.startsWith('POST:/tests/')); - t.equal(collectionId, 'tests'); - t.equal(resourceId.length, 36); - t.equal(pattern, 'POST:/tests/.*'); - }); -}); - -test('unnotify', async t => { - t.plan(2); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', async function open () { - ws.send(JSON.stringify([1, 'NOTIFY', 'POST:/tests/.*'])); - await sleep(50); - ws.send(JSON.stringify([1, 'UNNOTIFY', 'POST:/tests/.*'])); - await sleep(50); - - httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 1 } - }).then(() => { - cluster.closeAll(); - }); - }); - - ws.on('message', function incoming (rawData) { - const [type, data] = JSON.parse(rawData); - - if (type === 'A') { - t.equal(data, 1); - return; - } - - t.fail('should not have been called'); - }); -}); - -test('notify: twos posts', async t => { - t.plan(8); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', function open () { - ws.send(JSON.stringify([1, 'NOTIFY', 'POST:/tests1/.*'])); - ws.send(JSON.stringify([2, 'NOTIFY', 'POST:/tests2/.*'])); - - const promises = []; - promises[0] = httpRequest(`${node.url}/tests1`, { - method: 'POST', - data: { a: 1 } - }); - - promises[1] = httpRequest(`${node.url}/tests2`, { - method: 'POST', - data: { a: 2 } - }); - - Promise.all(promises).then(() => cluster.closeAll()); - }); - - const store = []; - function done () { - if (store.length !== 2) { - return; - } - - store.sort((a, b) => a[3] > b[3] ? 1 : -1); - - { - const [path, collectionId, resourceId, pattern] = store[0]; - - t.ok(path.startsWith('POST:/tests1/')); - t.equal(collectionId, 'tests1'); - t.equal(resourceId.length, 36); - t.equal(pattern, 'POST:/tests1/.*'); - } - - { - const [path, collectionId, resourceId, pattern] = store[1]; - - t.ok(path.startsWith('POST:/tests2/')); - t.equal(collectionId, 'tests2'); - t.equal(resourceId.length, 36); - t.equal(pattern, 'POST:/tests2/.*'); - } - } - - ws.on('message', function incoming (rawData) { - const [type, parsedData] = JSON.parse(rawData); - if (type === 'A') { - return; - } - - store.push(parsedData); - done(); - }); -}); - -test('notify: one not the other', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', function open () { - ws.send(JSON.stringify([1, 'NOTIFY', 'POST:/tests2/.*'])); - - const promises = []; - promises[0] = httpRequest(`${node.url}/tests1`, { - method: 'POST', - data: { a: 1 } - }); - - promises[1] = httpRequest(`${node.url}/tests2`, { - method: 'POST', - data: { a: 2 } - }); - - promises[3] = httpRequest(`${node.url}/tests3`, { - method: 'POST', - data: { a: 3 } - }); - - Promise.all(promises).then(() => cluster.closeAll()); - }); - - ws.on('message', function incoming (rawData) { - const [type, data] = JSON.parse(rawData); - if (type === 'A') { - t.equal(data, 1); - return; - } - - const [path, collectionId, resourceId, pattern] = data; - - t.ok(path.startsWith('POST:/tests2/')); - t.equal(collectionId, 'tests2'); - t.equal(resourceId.length, 36); - t.equal(pattern, 'POST:/tests2/.*'); - }); -}); - -test('ws - unknown command', async t => { - t.plan(3); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', async function open () { - ws.send(JSON.stringify([1, 'UNKNOWN'])); - }); - - ws.on('message', function incoming (rawData) { - const [type, acceptId, data] = JSON.parse(rawData); - - t.equal(type, 'R'); - t.equal(acceptId, 1); - t.equal(data, 'COMMAND_NOT_FOUND'); - - cluster.closeAll(); - }); -}); diff --git a/test/problems.js b/test/problems.js deleted file mode 100644 index 4b10d35..0000000 --- a/test/problems.js +++ /dev/null @@ -1,35 +0,0 @@ -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); - -const mapTimes = (times, fn) => Array(times).fill().map((_, index) => fn(index)); -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - -// setInterval(console.log, 250); - -async function problems2 () { - const serverCount = 2; - const interationsPer = 300; - const cluster = await createTestCluster(serverCount); - - await sleep(2000); - - while (true) { - console.log('Starting'); - console.time(' posting'); - await Promise.all(mapTimes(interationsPer, index => { - return httpRequest(`${cluster.nodes[index % serverCount].url}/tests`, { - method: 'POST', - data: { a: index } - }); - })); - console.timeEnd(' posting'); - - console.time(' getting'); - await Promise.all(mapTimes(serverCount, index => { - return httpRequest(`${cluster.nodes[index].url}/tests`).then(response => response.data); - })); - console.timeEnd(' getting'); - } -} - -problems2(); diff --git a/test/utils/validateAlphaNumericDashDot.js b/test/utils/validateAlphaNumericDashDot.js deleted file mode 100644 index e1eef35..0000000 --- a/test/utils/validateAlphaNumericDashDot.js +++ /dev/null @@ -1,19 +0,0 @@ -const test = require('basictap'); - -const validateAlphaNumericDashDot = require('../../utils/validateAlphaNumericDashDot'); - -test('correct', t => { - t.plan(1); - - const result = validateAlphaNumericDashDot('correct'); - - t.ok(result); -}); - -test('wrong', t => { - t.plan(1); - - const result = validateAlphaNumericDashDot('cor$rect'); - - t.notOk(result); -}); diff --git a/test/ws.js b/test/ws.js deleted file mode 100644 index 135b9d8..0000000 --- a/test/ws.js +++ /dev/null @@ -1,97 +0,0 @@ -const fs = require('fs'); - -const WebSocket = require('ws'); -const test = require('basictap'); - -const httpRequest = require('./helpers/httpRequest'); -const createTestCluster = require('./helpers/createTestCluster'); - -const { - STATUS, - DOCUMENT, - DOCUMENTS, - QUERY, - COLLECTION_ID -} = require('../lib/constants'); - -const tls = { - key: fs.readFileSync('./certs/localhost.privkey.pem'), - cert: fs.readFileSync('./certs/localhost.cert.pem'), - ca: [fs.readFileSync('./certs/ca.cert.pem')], - requestCert: true -}; - -test('get: getAll some data', async t => { - t.plan(5); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const insertResponses = await Promise.all([ - httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 1 } - }), - - httpRequest(`${node.url}/tests`, { - method: 'POST', - data: { a: 2 } - }) - ]); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', function open () { - ws.send(JSON.stringify([1, 'GET', { - [COLLECTION_ID]: 'tests', - [QUERY]: { - a: 1 - } - }])); - }); - - ws.on('message', async function incoming (rawData) { - const [type, acceptId, data] = JSON.parse(rawData); - - t.equal(type, 'A', 'should have correct type'); - t.equal(acceptId, 1, 'should have correct acceptId'); - t.equal(data[STATUS], 200, 'should have correct status'); - t.equal(data[DOCUMENTS][0].id, insertResponses[0].data.id, 'had correct document id'); - t.equal(data[DOCUMENTS][0].a, 1, 'should return document field'); - - cluster.closeAll(); - }); -}); - -test('post: post some data', async t => { - t.plan(6); - - const cluster = await createTestCluster(3, tls); - const node = cluster.getRandomNodeUrl(); - - const ws = new WebSocket(node.wsUrl, tls); - ws.on('open', function open () { - ws.send(JSON.stringify([1, 'POST', { - [COLLECTION_ID]: 'tests', - [DOCUMENT]: { - a: 1 - } - }])); - }); - - ws.on('message', async function incoming (rawData) { - const [type, acceptId, data] = JSON.parse(rawData); - - t.equal(type, 'A', 'should have correct type'); - t.equal(acceptId, 1, 'should have correct acceptId'); - t.equal(data[STATUS], 201, 'should have correct status'); - t.equal(data[DOCUMENT].id.length, 36, 'should return valid id'); - t.equal(data[DOCUMENT].a, 1, 'should return document field'); - - const response = await httpRequest(`${node.url}/tests`, { - method: 'GET' - }); - - t.deepEqual(response.data[0], data[DOCUMENT], 'future query returns document'); - cluster.closeAll(); - }); -}); diff --git a/utils/buildInsertStatement.js b/utils/buildInsertStatement.js deleted file mode 100644 index 5a15588..0000000 --- a/utils/buildInsertStatement.js +++ /dev/null @@ -1,10 +0,0 @@ -function buildInsertStatement (tableName, object) { - const fields = Object.keys(object).map(field => `"${field}"`).join(', '); - const parameters = Object.values(object); - return { - sql: `INSERT INTO "${tableName}" (${fields}) VALUES (${parameters.map((_, index) => '$' + (index + 1))})`, - parameters - }; -} - -module.exports = buildInsertStatement; diff --git a/utils/orderByFields.js b/utils/orderByFields.js deleted file mode 100644 index a879084..0000000 --- a/utils/orderByFields.js +++ /dev/null @@ -1,18 +0,0 @@ -function dynamicSort (property, direction = 1) { - return function (a, b) { - const result = (a[property] < b[property]) ? -1 : (a[property] > b[property]) ? 1 : 0; - return result * direction; - }; -} - -function orderByFields (results, order) { - const matcher = /(desc|asc)\((.*?)\)/g; - [...order.matchAll(matcher)] - .forEach(field => { - const fieldName = field[2]; - const fieldDirection = field[1]; - results.sort(dynamicSort(fieldName, fieldDirection === 'asc' ? 1 : -1)); - }); -} - -module.exports = orderByFields; diff --git a/utils/selectRandomItemFromArray.js b/utils/selectRandomItemFromArray.js deleted file mode 100644 index df9b432..0000000 --- a/utils/selectRandomItemFromArray.js +++ /dev/null @@ -1,8 +0,0 @@ -function selectRandomItemFromArray (array) { - if (!array || array.length === 0) { - return; - } - return array[Math.floor(Math.random() * array.length)]; -} - -module.exports = selectRandomItemFromArray; diff --git a/utils/validateAlphaNumericDashDot.js b/utils/validateAlphaNumericDashDot.js deleted file mode 100644 index 708fea3..0000000 --- a/utils/validateAlphaNumericDashDot.js +++ /dev/null @@ -1,10 +0,0 @@ -const validateAlphaNumericDashDot = (value) => { - const matches = value.match(/[^a-z0-9-.]/gi, ''); - if (matches) { - return false; - } - - return true; -}; - -module.exports = validateAlphaNumericDashDot; diff --git a/utils/validateQueryOptions.js b/utils/validateQueryOptions.js deleted file mode 100644 index bdaae21..0000000 --- a/utils/validateQueryOptions.js +++ /dev/null @@ -1,9 +0,0 @@ -function validateQueryOptions (options) { - Object.keys(options).forEach(key => { - if (options[key] === undefined) { - throw new Error('canhazdb:client can not serialise an object with undefined'); - } - }); -} - -module.exports = validateQueryOptions; From 730bd8c4e846185291086f344b34ecc1c97852b6 Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 20:43:08 +1000 Subject: [PATCH 02/73] Remove test data --- .gitignore | 1 + .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 67696 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 80513 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 67426 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 63691 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 41723 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 81045 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 102363 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 102473 -> 0 bytes .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 67420 -> 0 bytes .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 59691 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 51540 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 71499 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 75521 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 41772 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 51755 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 30917 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 104078 -> 0 bytes .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 67695 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 41748 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 59464 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 220069 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 41723 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 41772 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 55512 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 67831 -> 0 bytes .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 41772 -> 0 bytes .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 81048 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 47009 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 115192 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 65536 -> 0 bytes .../system.nodes.db-wal | Bin 90998 -> 0 bytes .../tests.db | Bin 65536 -> 0 bytes .../tests.db-wal | Bin 52269 -> 0 bytes .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 36864 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 .../system.nodes.db | Bin 45056 -> 0 bytes .../system.nodes.db-wal | 0 .../tests.db | Bin 8192 -> 0 bytes .../tests.db-wal | 0 .../system.nodes.db | Bin 36864 -> 0 bytes .../system.nodes.db-wal | 0 canhazdata/two/system.nodes.db | Bin 65536 -> 0 bytes canhazdata/two/system.nodes.db-wal | Bin 24 -> 0 bytes 729 files changed, 1 insertion(+) delete mode 100644 canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db delete mode 100644 canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db-wal delete mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/system.nodes.db delete mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/system.nodes.db-wal delete mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/tests.db delete mode 100644 canhazdata/021e9dae-1dfe-4240-8062-38a40bc045ed/tests.db-wal delete mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/system.nodes.db delete mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/system.nodes.db-wal delete mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/tests.db delete mode 100644 canhazdata/02bec11c-4323-4a3b-81ef-4d6021aeacc8/tests.db-wal delete mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/system.nodes.db delete mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/system.nodes.db-wal delete mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db delete mode 100644 canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db-wal delete mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db delete mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db-wal delete mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db delete mode 100644 canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db-wal delete mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/system.nodes.db delete mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/system.nodes.db-wal delete mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/tests.db delete mode 100644 canhazdata/06a1140a-3035-4c39-bf24-cecc9b68b6a4/tests.db-wal delete mode 100644 canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db delete mode 100644 canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db-wal delete mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db delete mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db-wal delete mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/tests.db delete mode 100644 canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/tests.db-wal delete mode 100644 canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db delete mode 100644 canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db-wal delete mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/system.nodes.db delete mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/system.nodes.db-wal delete mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/tests.db delete mode 100644 canhazdata/0adb211a-2da5-4468-b4c1-78f55ccec8a7/tests.db-wal delete mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/system.nodes.db delete mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/system.nodes.db-wal delete mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db delete mode 100644 canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db-wal delete mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db delete mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db-wal delete mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db delete mode 100644 canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db-wal delete mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db delete mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db-wal delete mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db delete mode 100644 canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db-wal delete mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/system.nodes.db delete mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/system.nodes.db-wal delete mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/tests.db delete mode 100644 canhazdata/123997f3-c2f8-455f-95e8-71b26ba5941e/tests.db-wal delete mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db delete mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db-wal delete mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db delete mode 100644 canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db-wal delete mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db delete mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db-wal delete mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/tests.db delete mode 100644 canhazdata/14395033-44a7-4719-a546-0267bafb350c/tests.db-wal delete mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db delete mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db-wal delete mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db delete mode 100644 canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db-wal delete mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db delete mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db-wal delete mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db delete mode 100644 canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db-wal delete mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db delete mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db-wal delete mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db delete mode 100644 canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db-wal delete mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/system.nodes.db delete mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/system.nodes.db-wal delete mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db delete mode 100644 canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db-wal delete mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/system.nodes.db delete mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/system.nodes.db-wal delete mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/tests.db delete mode 100644 canhazdata/1771bc59-449d-41c6-833e-ba27a9f47bce/tests.db-wal delete mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/system.nodes.db delete mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/system.nodes.db-wal delete mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db delete mode 100644 canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db-wal delete mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db delete mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db-wal delete mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db delete mode 100644 canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db-wal delete mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/system.nodes.db delete mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/system.nodes.db-wal delete mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/tests.db delete mode 100644 canhazdata/1a45e079-4520-4fec-b9cd-76f02ee9843b/tests.db-wal delete mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db delete mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db-wal delete mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db delete mode 100644 canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db-wal delete mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/system.nodes.db delete mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/system.nodes.db-wal delete mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db delete mode 100644 canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db-wal delete mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db delete mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db-wal delete mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db delete mode 100644 canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db-wal delete mode 100644 canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db delete mode 100644 canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db-wal delete mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db delete mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db-wal delete mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/tests.db delete mode 100644 canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/tests.db-wal delete mode 100644 canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db delete mode 100644 canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db-wal delete mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db delete mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db-wal delete mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db delete mode 100644 canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db-wal delete mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db delete mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db-wal delete mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db delete mode 100644 canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db-wal delete mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db delete mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db-wal delete mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db delete mode 100644 canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db-wal delete mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/system.nodes.db delete mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/system.nodes.db-wal delete mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/tests.db delete mode 100644 canhazdata/23b79fa5-b3a4-43b5-b7d1-9d97a4a2c697/tests.db-wal delete mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/system.nodes.db delete mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/system.nodes.db-wal delete mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db delete mode 100644 canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db-wal delete mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db delete mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db-wal delete mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db delete mode 100644 canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db-wal delete mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db delete mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db-wal delete mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db delete mode 100644 canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db-wal delete mode 100644 canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db delete mode 100644 canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db-wal delete mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db delete mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db-wal delete mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db delete mode 100644 canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db-wal delete mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/system.nodes.db delete mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/system.nodes.db-wal delete mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db delete mode 100644 canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db-wal delete mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db delete mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db-wal delete mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db delete mode 100644 canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db-wal delete mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db delete mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db-wal delete mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db delete mode 100644 canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db-wal delete mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db delete mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db-wal delete mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db delete mode 100644 canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db-wal delete mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db delete mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db-wal delete mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db delete mode 100644 canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db-wal delete mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/system.nodes.db delete mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/system.nodes.db-wal delete mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/tests.db delete mode 100644 canhazdata/34dfcf4a-5bdb-46c0-9a53-36bfaa8f0ec4/tests.db-wal delete mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/system.nodes.db delete mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/system.nodes.db-wal delete mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/tests.db delete mode 100644 canhazdata/35d65a04-720f-45a8-97b8-77bc34055250/tests.db-wal delete mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db delete mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db-wal delete mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db delete mode 100644 canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db-wal delete mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db delete mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db-wal delete mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db delete mode 100644 canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db-wal delete mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db delete mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db-wal delete mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db delete mode 100644 canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db-wal delete mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db delete mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db-wal delete mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db delete mode 100644 canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db-wal delete mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/system.nodes.db delete mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/system.nodes.db-wal delete mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/tests.db delete mode 100644 canhazdata/39475c20-7370-4845-a0ee-87469bff3a52/tests.db-wal delete mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db delete mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db-wal delete mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db delete mode 100644 canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db-wal delete mode 100644 canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db delete mode 100644 canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db-wal delete mode 100644 canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db delete mode 100644 canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db-wal delete mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db delete mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db-wal delete mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/tests.db delete mode 100644 canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/tests.db-wal delete mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db delete mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db-wal delete mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db delete mode 100644 canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db-wal delete mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db delete mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db-wal delete mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db delete mode 100644 canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db-wal delete mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db delete mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db-wal delete mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db delete mode 100644 canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db-wal delete mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db delete mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db-wal delete mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db delete mode 100644 canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db-wal delete mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db delete mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db-wal delete mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db delete mode 100644 canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db-wal delete mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/system.nodes.db delete mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/system.nodes.db-wal delete mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db delete mode 100644 canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db-wal delete mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db delete mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db-wal delete mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db delete mode 100644 canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db-wal delete mode 100644 canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db delete mode 100644 canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db-wal delete mode 100644 canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db delete mode 100644 canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db-wal delete mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db delete mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db-wal delete mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db delete mode 100644 canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db-wal delete mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db delete mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db-wal delete mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db delete mode 100644 canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db-wal delete mode 100644 canhazdata/51054a26-b9f2-4255-b051-7dc4530dd208/system.nodes.db delete mode 100644 canhazdata/51054a26-b9f2-4255-b051-7dc4530dd208/system.nodes.db-wal delete mode 100644 canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db delete mode 100644 canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db-wal delete mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db delete mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db-wal delete mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db delete mode 100644 canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db-wal delete mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db delete mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db-wal delete mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db delete mode 100644 canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db-wal delete mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db delete mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db-wal delete mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db delete mode 100644 canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db-wal delete mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db delete mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db-wal delete mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db delete mode 100644 canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db-wal delete mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/system.nodes.db delete mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/system.nodes.db-wal delete mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/tests.db delete mode 100644 canhazdata/560475e9-2f31-42ee-b121-679e8507153d/tests.db-wal delete mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/system.nodes.db delete mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/system.nodes.db-wal delete mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db delete mode 100644 canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db-wal delete mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db delete mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db-wal delete mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db delete mode 100644 canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db-wal delete mode 100644 canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db delete mode 100644 canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db-wal delete mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db delete mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db-wal delete mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/tests.db delete mode 100644 canhazdata/5ba0e50a-847d-458d-b329-586851143faf/tests.db-wal delete mode 100644 canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db delete mode 100644 canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db-wal delete mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db delete mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db-wal delete mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db delete mode 100644 canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db-wal delete mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/system.nodes.db delete mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/system.nodes.db-wal delete mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/tests.db delete mode 100644 canhazdata/610debc9-27d6-4786-975a-baad8be2e23a/tests.db-wal delete mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db delete mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db-wal delete mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db delete mode 100644 canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db-wal delete mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/system.nodes.db delete mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/system.nodes.db-wal delete mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db delete mode 100644 canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db-wal delete mode 100644 canhazdata/64bb94fc-a3de-4d6b-a0cf-67b483c0b90b/system.nodes.db delete mode 100644 canhazdata/64bb94fc-a3de-4d6b-a0cf-67b483c0b90b/system.nodes.db-wal delete mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db delete mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db-wal delete mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db delete mode 100644 canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db-wal delete mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/system.nodes.db delete mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/system.nodes.db-wal delete mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/tests.db delete mode 100644 canhazdata/66359abc-8e3b-476b-a949-fdcdbe4d61a6/tests.db-wal delete mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db delete mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db-wal delete mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db delete mode 100644 canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db-wal delete mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db delete mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db-wal delete mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db delete mode 100644 canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db-wal delete mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/system.nodes.db delete mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/system.nodes.db-wal delete mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/tests.db delete mode 100644 canhazdata/6acbbf26-2838-444a-bb8a-38619f8ab768/tests.db-wal delete mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db delete mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db-wal delete mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db delete mode 100644 canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db-wal delete mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db delete mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db-wal delete mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db delete mode 100644 canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db-wal delete mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/system.nodes.db delete mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/system.nodes.db-wal delete mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db delete mode 100644 canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db-wal delete mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db delete mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db-wal delete mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db delete mode 100644 canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db-wal delete mode 100644 canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db delete mode 100644 canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db-wal delete mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db delete mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db-wal delete mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db delete mode 100644 canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db-wal delete mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/system.nodes.db delete mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/system.nodes.db-wal delete mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/tests.db delete mode 100644 canhazdata/74cc49c1-f2f1-4524-8b0a-d04d407db3ed/tests.db-wal delete mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db delete mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db-wal delete mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db delete mode 100644 canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db-wal delete mode 100644 canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db delete mode 100644 canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db-wal delete mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db delete mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db-wal delete mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db delete mode 100644 canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db-wal delete mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db delete mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db-wal delete mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/tests.db delete mode 100644 canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/tests.db-wal delete mode 100644 canhazdata/7ec02e33-24ad-4964-a89c-6687de5adb6b/system.nodes.db delete mode 100644 canhazdata/7ec02e33-24ad-4964-a89c-6687de5adb6b/system.nodes.db-wal delete mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db delete mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db-wal delete mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db delete mode 100644 canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db-wal delete mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db delete mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db-wal delete mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/tests.db delete mode 100644 canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/tests.db-wal delete mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/system.nodes.db delete mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/system.nodes.db-wal delete mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db delete mode 100644 canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db-wal delete mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db delete mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db-wal delete mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db delete mode 100644 canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db-wal delete mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db delete mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db-wal delete mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db delete mode 100644 canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db-wal delete mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/system.nodes.db delete mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/system.nodes.db-wal delete mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/tests.db delete mode 100644 canhazdata/86331b8f-4e08-4377-82f8-86b3494d96a5/tests.db-wal delete mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/system.nodes.db delete mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/system.nodes.db-wal delete mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/tests.db delete mode 100644 canhazdata/8633de39-2200-4063-9b37-bb5b639d2e26/tests.db-wal delete mode 100644 canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db delete mode 100644 canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db-wal delete mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db delete mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db-wal delete mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db delete mode 100644 canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db-wal delete mode 100644 canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db delete mode 100644 canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db-wal delete mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db delete mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db-wal delete mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db delete mode 100644 canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db-wal delete mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/system.nodes.db delete mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/system.nodes.db-wal delete mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/tests.db delete mode 100644 canhazdata/8b9d4d94-29e5-48d3-b248-23c0d49dbafb/tests.db-wal delete mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db delete mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db-wal delete mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db delete mode 100644 canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db-wal delete mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/system.nodes.db delete mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/system.nodes.db-wal delete mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/tests.db delete mode 100644 canhazdata/8dbc7653-ca75-40dc-a7a5-cc7b44fd9f69/tests.db-wal delete mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db delete mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db-wal delete mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db delete mode 100644 canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db-wal delete mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db delete mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db-wal delete mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db delete mode 100644 canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db-wal delete mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db delete mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db-wal delete mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db delete mode 100644 canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db-wal delete mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db delete mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db-wal delete mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db delete mode 100644 canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db-wal delete mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db delete mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db-wal delete mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db delete mode 100644 canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db-wal delete mode 100644 canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db delete mode 100644 canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db-wal delete mode 100644 canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db delete mode 100644 canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db-wal delete mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db delete mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db-wal delete mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db delete mode 100644 canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db-wal delete mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db delete mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db-wal delete mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db delete mode 100644 canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db-wal delete mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db delete mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db-wal delete mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db delete mode 100644 canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db-wal delete mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/system.nodes.db delete mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/system.nodes.db-wal delete mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db delete mode 100644 canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db-wal delete mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db delete mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db-wal delete mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db delete mode 100644 canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db-wal delete mode 100644 canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db delete mode 100644 canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db-wal delete mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db delete mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db-wal delete mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/tests.db delete mode 100644 canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/tests.db-wal delete mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db delete mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db-wal delete mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db delete mode 100644 canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db-wal delete mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/system.nodes.db delete mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/system.nodes.db-wal delete mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/tests.db delete mode 100644 canhazdata/a2cd13cd-68df-4a55-95c7-1969801fa1ac/tests.db-wal delete mode 100644 canhazdata/a7474c52-56d8-42cd-a48b-62c4b35d3002/system.nodes.db delete mode 100644 canhazdata/a7474c52-56d8-42cd-a48b-62c4b35d3002/system.nodes.db-wal delete mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/system.nodes.db delete mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/system.nodes.db-wal delete mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/tests.db delete mode 100644 canhazdata/a7cbb858-897b-40e8-b01c-a3d5695cdcec/tests.db-wal delete mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db delete mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db-wal delete mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db delete mode 100644 canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db-wal delete mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db delete mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db-wal delete mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db delete mode 100644 canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db-wal delete mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/system.nodes.db delete mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/system.nodes.db-wal delete mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/tests.db delete mode 100644 canhazdata/a911c596-2bc9-4850-8ea3-dc574a229acc/tests.db-wal delete mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/system.nodes.db delete mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/system.nodes.db-wal delete mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db delete mode 100644 canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db-wal delete mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db delete mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db-wal delete mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db delete mode 100644 canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db-wal delete mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db delete mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db-wal delete mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/tests.db delete mode 100644 canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/tests.db-wal delete mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db delete mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db-wal delete mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db delete mode 100644 canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db-wal delete mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db delete mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db-wal delete mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db delete mode 100644 canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db-wal delete mode 100644 canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db delete mode 100644 canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db-wal delete mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db delete mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db-wal delete mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db delete mode 100644 canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db-wal delete mode 100644 canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db delete mode 100644 canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db-wal delete mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db delete mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db-wal delete mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db delete mode 100644 canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db-wal delete mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db delete mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db-wal delete mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db delete mode 100644 canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db-wal delete mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db delete mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db-wal delete mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db delete mode 100644 canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db-wal delete mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/system.nodes.db delete mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/system.nodes.db-wal delete mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/tests.db delete mode 100644 canhazdata/ba00425e-1bc8-486c-8f53-1459e3f0f874/tests.db-wal delete mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/system.nodes.db delete mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/system.nodes.db-wal delete mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db delete mode 100644 canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db-wal delete mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db delete mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db-wal delete mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db delete mode 100644 canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db-wal delete mode 100644 canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db delete mode 100644 canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db-wal delete mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db delete mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db-wal delete mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db delete mode 100644 canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db-wal delete mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db delete mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db-wal delete mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/tests.db delete mode 100644 canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/tests.db-wal delete mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/system.nodes.db delete mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/system.nodes.db-wal delete mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/tests.db delete mode 100644 canhazdata/c32a96ad-30f5-4318-81c7-d60a24f56c0c/tests.db-wal delete mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/system.nodes.db delete mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/system.nodes.db-wal delete mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/tests.db delete mode 100644 canhazdata/c53e9b3d-bd43-4506-a0e0-5df1ef6d646a/tests.db-wal delete mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db delete mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db-wal delete mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db delete mode 100644 canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db-wal delete mode 100644 canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db delete mode 100644 canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db-wal delete mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/system.nodes.db delete mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/system.nodes.db-wal delete mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/tests.db delete mode 100644 canhazdata/ca9e8370-1bd2-4b27-9db1-ffe847ce8d68/tests.db-wal delete mode 100644 canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db delete mode 100644 canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db-wal delete mode 100644 canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db delete mode 100644 canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db-wal delete mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db delete mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db-wal delete mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db delete mode 100644 canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db-wal delete mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db delete mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db-wal delete mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db delete mode 100644 canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db-wal delete mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db delete mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db-wal delete mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db delete mode 100644 canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db-wal delete mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db delete mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db-wal delete mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db delete mode 100644 canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db-wal delete mode 100644 canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db delete mode 100644 canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db-wal delete mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db delete mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db-wal delete mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db delete mode 100644 canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db-wal delete mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db delete mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db-wal delete mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db delete mode 100644 canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db-wal delete mode 100644 canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db delete mode 100644 canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db-wal delete mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db delete mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db-wal delete mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db delete mode 100644 canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db-wal delete mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db delete mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db-wal delete mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db delete mode 100644 canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db-wal delete mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db delete mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db-wal delete mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/tests.db delete mode 100644 canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/tests.db-wal delete mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db delete mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db-wal delete mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db delete mode 100644 canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db-wal delete mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/system.nodes.db delete mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/system.nodes.db-wal delete mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/tests.db delete mode 100644 canhazdata/df7e844f-91c2-40a0-bbdf-a6cf7d7c586c/tests.db-wal delete mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db delete mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db-wal delete mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db delete mode 100644 canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db-wal delete mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db delete mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db-wal delete mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db delete mode 100644 canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db-wal delete mode 100644 canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db delete mode 100644 canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db-wal delete mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db delete mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db-wal delete mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db delete mode 100644 canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db-wal delete mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db delete mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db-wal delete mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db delete mode 100644 canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db-wal delete mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/system.nodes.db delete mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/system.nodes.db-wal delete mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/tests.db delete mode 100644 canhazdata/e4d0a6ab-49bb-44d7-b4b8-f125089508ad/tests.db-wal delete mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/system.nodes.db delete mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/system.nodes.db-wal delete mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/tests.db delete mode 100644 canhazdata/e53f2406-74ab-4317-8b3a-5b32fb5d4dbf/tests.db-wal delete mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/system.nodes.db delete mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/system.nodes.db-wal delete mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/tests.db delete mode 100644 canhazdata/e625e1a6-709b-4442-8ff3-1b731a734520/tests.db-wal delete mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/system.nodes.db delete mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/system.nodes.db-wal delete mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/tests.db delete mode 100644 canhazdata/e8c05b12-3c9a-4e07-af88-f61ee1b7453e/tests.db-wal delete mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/system.nodes.db delete mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/system.nodes.db-wal delete mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/tests.db delete mode 100644 canhazdata/ebe891ba-3661-4d4d-83fb-75318bdb7740/tests.db-wal delete mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/system.nodes.db delete mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/system.nodes.db-wal delete mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db delete mode 100644 canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db-wal delete mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db delete mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db-wal delete mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db delete mode 100644 canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db-wal delete mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/system.nodes.db delete mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/system.nodes.db-wal delete mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/tests.db delete mode 100644 canhazdata/ee5a1f91-8e80-4a4c-a4bd-7fd8d1f0aee4/tests.db-wal delete mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/system.nodes.db delete mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/system.nodes.db-wal delete mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db delete mode 100644 canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db-wal delete mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db delete mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db-wal delete mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db delete mode 100644 canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db-wal delete mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db delete mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db-wal delete mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db delete mode 100644 canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db-wal delete mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db delete mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db-wal delete mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db delete mode 100644 canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db-wal delete mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db delete mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db-wal delete mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db delete mode 100644 canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db-wal delete mode 100644 canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db delete mode 100644 canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db-wal delete mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db delete mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db-wal delete mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db delete mode 100644 canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db-wal delete mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db delete mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db-wal delete mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db delete mode 100644 canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db-wal delete mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/system.nodes.db delete mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/system.nodes.db-wal delete mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/tests.db delete mode 100644 canhazdata/fab663a4-cddb-44cd-8ae6-ef092c7144cf/tests.db-wal delete mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db delete mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db-wal delete mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db delete mode 100644 canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db-wal delete mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db delete mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db-wal delete mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db delete mode 100644 canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db-wal delete mode 100644 canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db delete mode 100644 canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db-wal delete mode 100644 canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db delete mode 100644 canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db-wal delete mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db delete mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db-wal delete mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db delete mode 100644 canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db-wal delete mode 100644 canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db delete mode 100644 canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db-wal delete mode 100644 canhazdata/two/system.nodes.db delete mode 100644 canhazdata/two/system.nodes.db-wal diff --git a/.gitignore b/.gitignore index 75cc15d..ed6c829 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ node_modules +canhazdata certs diff --git a/canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db b/canhazdata/010eb67c-ff7f-4659-9450-702c2c13b741/system.nodes.db deleted file mode 100644 index c87c50cd86bd4c0763a9c3ffe16571d0f83bb09f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db-wal b/canhazdata/042163ba-6d26-49fc-8f63-4ed7c96b05ee/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db b/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db deleted file mode 100644 index df58248862962098da055bb7edbacb2faf828d7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI5Id3FI6vw;zoay0|I09B^5IdvQEM>a-?g)brM+BoSZ$D#> z_Lz25j{WTLEbb=Lv=83DF;!j_{m9|-bOL34W2z}+7TNmD$aPj`)6<#$8HH8+L$y{M zvb~v+>#VF|{02q)Fxk5^BiC73vH1HhYr|na*`55vCY{CnzZSNpYr$H)f7vvy?{4o| zFTS_6v#XgKTeTdT=Cm%G;ksFu(|Twhwv5`A*SEIs-O@U28MZAqiw${CP1C5>g8fUn zsaotkwDaN4uH0DLq|SFVo%%G?`M++`1U*Xj^US)OuN7PWhw-ax|Kns|&5T@UWfkMM zXVKmyudK_mV)6H1)$;r|mVeIjAN2fFJ?}F1`)V_5{|)2lT)iwJ-1(H`0 zeO9&CBxyZY=?`Yyp(LY1G#QOVrXCNAu;N8n);wwIv=)t5NEyykx~en1RjSiOmQfS) zAoNKosXbnZEahI{S6S4Qev|q0lqUZ$)+#kwEu>e_AR?udHWAO7Fy%tTNflIa<%P*y zrN8^@+Fj_y9x-pOCZ3ELzo}k7^o(l5boD5}(h56%575#^fQ~@`1V8`;KmY_l00ck)1V8`;K;Xe7z%<)c zuU`IPqca)E6rCu~zW-#*%2 zv2}G6+f2ELX(Lyqo-@^}A9aJ-eam!u%ZZ$^g>vaEXK?5h1V8`;KmY_l00ck)1V8`; zKmY_TFoFK-+IaldczgUS8-LBlx7hf1ef+&X{z4yrtdGwpu#p=?QZ|X7QRZBgAvjhU zf~6FcO*bu*TE-%)l2PCDh0N+ga#1&uhkoes)Qf!{q($hJlxH`R^{D5?qKtfMAQDPB z97bu%={Vp`(a=6g*!YE4jhrHtB8`)T%e0~F#$HC*i7Bfw_nRhY5*m+JMk8C$cZm!$ zUP>A8P-GcTv#g+25%o!f_JVq3Es`mDWG<2gd1S~1G8~WeMY0!<7TQg5-~3Ph>2Hku zwwZrv=D%3^Eh|5t6|kDUFt^R}yvPcjm*x2?WBpcXkySibNn^b`lonX&^OPnB%xRSt qIUD9G{l)B7X^}H#uF{{#KYrf%$5->r!>B+21V8`;KmY`~B=9fQ>36^Y diff --git a/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db-wal b/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db b/canhazdata/061b52fe-1742-4588-b523-faf0084f2a0c/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db-wal b/canhazdata/07eb432c-2cc5-476b-b67e-ea8132dade58/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db b/canhazdata/086560c9-ef42-46c2-a1bc-ea4ded6f9e88/system.nodes.db deleted file mode 100644 index 5a880ad8a5faefafe1c48acba7974c3c23c2a11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 AxBvhE diff --git a/canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db b/canhazdata/0a5577cd-521c-417f-8801-d932e3368686/system.nodes.db deleted file mode 100644 index ca814a1a0464be6c1b494b5be4b7e741777449ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*!EO>k7{KxQ*j)%)jT%inXv`kk#*lz)DFttMGdzXB(nxGeQ%D<6_CY-GDBisI z5K4RrPdEb$Tq<#sPT9hLny<4>r!({YX1h&xySqQWf0dkitY&3i$6qF?u0^TKPggxt zo06GTd|oZkj;?yjka;>9ap=lgiI>M({|P%b`3GiS$>|uyp(|@8jrlt|+lM+n#Gxx| zC1v^N->D#I7KVjiQm~fuR(I_6N|n;lc-M8#hZiI7&By*=sNB7qyRrh8wke zQIMUstS(!g_b+a4=}lW6E?b_pPP;eu={lWKW&ASZniiu6gU^Fu_q24T2Op@69@8O>MZwmq< zSE@-c}B}mC8|Fe<;@+bw~M=ey4RZI{=%5 zYoqW-um8@Dg&ERiiUoXG>y=Nt4dZp^l2^bIo z1Q0*~0R#|0009ILKmdV_7Z4@-|NoVGnu1Jay{8{iAixw5KmY**5I_I{1Q0*~0R#}R zBOuBbbL-)AJKZPhRhGBKB>FiTBY*$`2q1s}0tg_000IagfWT@2ef{4xj~{wrnn}jo z3b3{!^XCAqZ3YaC00IagfB*srAbmrsbi=cr&}1nU?Ko7ISc{h@vHUA0*7fK0YbB#%6o={(Yui}Asj9uH;$0l7 zORQ~K{n=L{pYN20rC+j?Sk3=+;#99(EjKRqEc0Y|I!e8K-yaNxb<_`|yk+&m?m@n7 zh2375PfteH=Oa)0r&o_mO-9z{Bai)~=*pay8I-FRPYg?s7~L3r8VsYO^09jIfiTo_ zn)>&@ZK(yit>SkaNv_wHz5XZl>wW)S72o1eU1Dt;>rcnko~vF*l5NZC&%PF&&L7$N zDmzJ5y~DYsdGW@a?mzY_e%Rf2UEkRc{kl`DHJVPh7PyYrJgC=$APSnkCoH{(8)Xms zfqyvN+36iw`-POoJW~|7RkxvjH1cYbOupj>UDv5a-N*|gztwPqg_(qu^GvOlTdf5L zu2c0Zemo~N565eG4Zj|=yh<1@%2XO>+ai~Hn0uDn;T2-)3k7U*_A<1M`KFw0s`a<+ z`}R}&xxFw6-`G6?Y3e`fb(7X?D>d6nUv5puZ0>P99)DJ`xNUA~JTn3aAbIcYwAerZ0R#|0009ILKmY**5I_KdH3~>!oBE@Nk5p{_{r~J^F>9=l zR0tq|00IagfB*srAbT$tJtED&k3e1)cm^ShZH#qTcMyhtR`b zJ@^2;KCYoA~FSJxt@l+>)Kf!*s5ZFV!7inJgt1hv}a6oV;EzzB;LAFAi2# z_N-`&WI>HDSoUMRoQ<6IY;ApwS=5p+$N!Q|9dw%V*CJQhUp3qR^Z3ns|5?iKicCdi zsgChCifA{eG`Y%Dv-q30*e2iP-^J$PZ5X%48;pGrf)3Y_9qU!k9E+p*ZW2VHr}{GP z_BN1ZgKYFXkbFQmn@D9G2QrA}hnq%6*&G}Hai zOBm<7qVOkC1k^(4WxfnGts&?qsf_(Fl5rTvf#3I|DDBlJiso(Rx_8`F_ZxTLbN3Z@ ze^~Bk%Y9?HRUQTZuUvvaS}oV+;o+wJX_FSh@froM^T00=+;0uX=z1Rwwb z2tWV=5P$##4k*BxlaEiB@d#lZ-Wc>=o6Ym@s`h#X&p`kJ5P$##AOHafKmY;|fB*y_ za1a5`xG?{EeS%K?r+oTPTXK*{uq*^1009U<00Izz00bZa0SG_<0{aPY)^3`g9$ut; z!m(y--k921I4|`Jqx~Ym^ALal1Rwwb2tWV=5P$##AOHaf>?c6q|J&yBLzheiZcXjn zKX3lmb%4wRBnUtN0uX=z1Rwwb2tWV=5P$##{+j@O|1Zp?m$xYMDPOdoTcxf*``=>6 ziXZ?12tWV=5P$##AOHafKmY>AMS$j?n9M(NTmr6joNb}JI8bpXle(LAWT2EMbrkia zuaxQyRMv^Suw81Lq|M9BghSVV6lUr<+g$%4pNMdJKwQvVL~45Nqh$y{00Izz00bZa z0SG_<0uX?}Q5B%^pGMLI~vqV;l(V0Z-3Tu<;DQx^H2Tt`j({p7Z#^oepS6G|J`m3?p$1y%kB6fwf zIjev1UDj;wuAHy@2`h!wTq!?n$|?W^UydUAexS$lJGe0rYchsT4xW}XiRz5Qk< zAM}QUW_^^|y3PD}e0FzcZIronn|ahd+`DtkyxL#eyn0>9Q^w_^voB}odxvXBapPxM zC2q5tUjLmuPSBHbPSU9UwDv!X@naIPE3D1g>wi>#eNyeW*rzD6%~}16oosiv$a;-k zfItXW@2lfAZTan>*KcpPHdp)Ic58KOeb8U+w!5v>e!tz@+S(uN>~HU6d0I;^7Y~m6 z-GlM6nwH_t%5|Loh4j%!E15t&Y;3Hrx8wXb8ZR0pE54lNhT6@WPpIEqo3+IC_4U^n z|7<1wST^fvv3&vr2oNAZfB*pk1PBly@Sp-AtL5qN<6?|zWwv`I!stlVgO+D70t5&U zAV7cs0RjXF5FkJx3WO}g@Be4n^EuE6v)%nL2Lc`f0RjXF5FkK+009C72oNYnAY}EB zetP(_nBk`yHH?1}Gu3@06Cgl<009C72oNAZfB*pk_Y1`1|CMz5p;sw&#>d~o&3S0Yw-_ z5*{IlJLrzeE{}+k0E#Ss2ni?(5(63#Awft0F)orQkBAUi)C7D0DxTk|{#Mnk>2teo z-|jy9M|CoNYwA?}&Z+P3*L6PU)TwiRc`E(?@aH%l>U_7zMo*{ z&1~maucb${6*me($F>YL^c_nzwJ215$G6llbOO^%A}_H$oXPX+Wu;8Dm1SmRHY-DF zQO37Y=_*EBGHB8zvk#@V7f(#xOzQ691GBTt#v}8op?_k3u>TWm`z?k2=@H}k9=B(4 zO-)w(U^Tr4C5tDd@}RraOPx|?=Gf*@`mZvb?v(Vc^t>?1?4e1QW%_#h^|22Nx@L2K z^EjzEqY4BU^@k|Smdj>rxfvH-g}?Mdf|XAJEM=y;Y1@f6MqmL-CXBa$mogUi0FuQ)kb9S0N`1 z{efN5_G<5!IzO%Jn&u*j>wO~4L7AGL-orKzv48U2z>Ap{Y(n4Aq|5SqeJjnB-Pjt9 z6%ugh56mtw3$Na~Z$ri~r(`03;IZeubo&A#^ zxmi)u!cE{Cnsh0zD`|!-a$Bu~y)YiG3@}TP`_ejc2Z{*22){pkEj_$FU8TOnnLK*) z#?5rrxRD&yPpZbvdD3_252U7`j_RNusAEyD2Wq`4>qX@D9^ms#j?W#_)7-$(R82E< z)%3kY4LsXWy+BK}P8>LqZ3*#Nfj9V#BFE<$;PbTX8%0*YfkKV!0AzVPvzX!YZ7Dwg z{%!~whDqFC06)(Vm~QQjI+0!q2g;oWO^E#d763h)Q7MwSWSi+} z44`KL(DEZUD{6jCW8Q)$UCO5n(9aqgp<%WN&~@aBeF?n??_P8*J+3`lrN+dWJg9Sk zo&`Y9NFM2+RJsbWGQ*@m6M8J0jjp+sjjlO=^VOTbtqjf3uv;YPI;zDUD(VG-uJszM z7h&592zo9jXxla{&ksV?jg3Gx9Xn8c&-BzJ3Zo!4BU|@vVGr~Syut4jIYG~Xpl2o5 ze+mr=n(zmjoM!oE1bwnd(2ooY(J)Q&z5ob4M{KGiiF@KiddUo-=YY`iJ;95a7HmS_ z(4@=q>x0lY4GGaOTSREY8Pd2LF2M~-J%)oxLFD&YAoN_urCTK1gk;S*Ahi6*&5D{9 zZUW!Xq)U0-h|tcE5Dl|Mgsvl3>`&-Lba&ge^tkq1l`0cwmJoWbfY7rtd!c0_G(DQl z5c;+pp+7k+MMLZ&L)T%QhHJm?qF!L=TCaXerTd^44X1eOTDmWLd4(swA>FxnG8@u- zl^y)(ucf<{k@2=Nvc7L+WTQ|6E=+9v_m$QU1u$$*f*m%vJ)?MT~U_LoQ3sLQ)r$bbAgp(PBO>Hd@11! z{SJD+k>>5CrqHKmhI*s`y-DAD(H5GgMn(rorMA#K+CuVO!HY?vOzZM{ZWsv~Uynh9+Igt3O6x z7y_hWwusSnrhvzqV+ns7=6N1yJ?(SNvel!kRu_zXaL zfe6(^5_iUl^r{(1F94+FJA)T)-hw7w%0~p!_w5*^VV0s5^Q+X6EA}PyBDDJ= zKzgA{t%);vQ0E}Muoa{m(nwk+NS`6W0n)ek0qHO7oTZ^RMKdN@sUw?&?*A$31(L4y z>aP{;g-5`jH>1W@54)X*Rp8>bh>MCYEJI9gj`P~(>ptmJ2O__B0j2XvPq#?6 z3CWs^Kxz4r`=mwbaECArsVQ=S(sksfA=mF4dJ#&$A1J-3SEx2|W(lPiODMe{i=}0v zG=E$Rls?rTrQf$xnug#M+F_P+=>>SB#L`W$^rGZSP-%*l8CME4IZqjYrSI5=rQfkL zoQ8eU_}PHzCQ+)5q!LUw0n_r`!HYRA<@?%&CS8`gEli)<5l+Kw5vCDrNULEw_Xsp0 z@_Q>_x|tCwlDTA?>1nKAx(S$;AGujk^J^OO7BuNnKH`4qu=Ua%;WW$^VY-f7u`i() z!Sovd)6FXNCeGwRo%c&OGniiFBRm?iXj&#r6OUy5(x-(meQjqv4aJKzUB~v|*e1O| z)3siM^`hwgn;zRKt(>Oq#CF(nIWZ0DU~e2odcnG%Oh44v42Fgyr0GROFTY>p zJ<~1FbW?IIsO+eo5v#b96lijRP6ADz-JYhuG|%rY)v`ebB(edVZV{(CNaFrDk(y(} zJX*kM`TpR=tahCvItrR}nY{rxePIVc4YNg@MzkS~yP@uz=8l9Wq|w8`=~l+5Nam7l z@-x_Gvjv=%AGujk)51;Q8=7<}ukCUA)d;-`#e&%)PUCc>)sdSE2~7y6UkIFTRjD{} zCRa1Z=~fY^n{33iES{E$)8|NF^i7}H4yXTNhLo@Pf#gM=u7g`FUQsXbbgkE5y@=PY zgQu5ro@V2s88RCk)in&4Egh_BY7i%$8YET_1d(SYdMxDWCcMFK7&%Wbfu~!Nt3hQ+ ztjxGlpvj$-0eJe{K%RcMI#MGCQu$c`>Lnso(YlmN0BZRT;l&)6_I>R_t}aU*2-KG= zBQ?wxfg0h4v>Hotk3bW;TfY`Sy_8WZlDTA?>1hn8mjKlABR4B*eobTEf+i;^9{}~O zd|k??ww~2;TDP?>wC-zB|MaU{Kd#<+0J}w^u0vPsOz1^(V?AvxJuaItizi-BcP^gE zhE~3Z9sI)INO!j@(RaI2mv_6;D3f-jVcpfg{(BQDfvvT`8`C43=dxPhRqU+mZ%%hB zBWrez?tzFhvVls<$X*{%M)peY=qA}wMmFhXJ+o=7C9Y{j4ts)U2)h=h#xt`i=AzAh zpwut&v-p87=lvp~WyD@!L~0P323sagv)O`av8J+Tje5-HYO+n+7Z$#Sdqt^VWSJV5 zhgtoA}aBe@%)33ZIT933OeS#JZ9OC2N2 z=opb7xmi*3YZ~(wG`XGfxsqnKc$>ImcDJ-#7H4Ch}f1k(aAf zo;b7AL|!JfdrjmenQdg5P2>wCHJZq02RD)5Qni%~(Ti>5I=o5k{-2^=Xd~Bp_1B8_ zLNDUAAG|3&PFcyR+US_E?M1%IW;XTN(?+&*nrCzpHTEn$4A{fR&^Luty#(tes$KzA zFH5cpm6i00C;1IcE>WhS>I)UA`uhu&z#4gw&c}PO=I4ICZ{ML zV0Cv}to~LtvWDd%SJ%NSb|>^Au72Xz)8pDJRjN;%S>oyyx^Hjc>SZ~@_+)Z5ACd#E zK39pWzdK7V82EweMX;{pTP#~qFMxHe*I>Pf*WM4XUd_R}V`-jgc3jm81BZ22hlc98 zzN1F2;ptlB27w`7lXw~4D1r4VzwE#D`+m=pC11&T9EXuWzP zTCYf9Ynf<$kpu@?pRbD6pRPjJkiE#(b$|~JaMBBGUF$ViFJkM>H>JlZYdKpRQ74Ku zJy4S;(@Gq}cYV_n4+U94^p@Cq4Q#zCxjIzV#LA2-1)AJV8Gx-X z?uf0wwm7is8o7|tYk=!DqE^vzw`+iF`A*@*9GCum?Lw|DORWsoR|euW%+lQmqd^dI zNUPyG_Xsp0xV{9qUdxCT$tAd6qZ|C!*+2P_n-!InW-=dWa)z=4T;E;+uD>vtuVI_Q z7Xw1-@D=+NdJ$c}8+5%^r3%HFCA#K!?kyeHtIJaGS|(jzBEhexsy8p}fUbXUFknM> zig3I)QAc>Hb-(YTUcl>GuYO9U`=A%`+Ckv;o*b`jvlHohM^o8cPHaXe%hgoZ>)32Y zr`QNwpJqrEuiBNpqgBG|J;3WV$rYkPNIBsT6u*b^1zum;DPF&A5Md)5lA2Fn&Hm2s zA#fF~gS!WOE#E7=n556dK9H-+a@+x5zj6R!!z|st!Pkg6q}6<#dl{M#U*8VC-jhKq zl1qHO2Yf9*axii52;oN{BA`rev*mZ~x4sp^8gk9@3ST7>%&p(Wjo8ltyE*n2_Pdn8wh%3iTD z<4S=hmnj1f_FY2|_UD@0c4H$S(s~+Q*n5dxMJwd)r60;6_D{ZBcrjT?Cij6{U6$pJ z5c_r8LN?6O{RoJSphH@X*twgb2_g2gU!Lx7?#;Lr$tA?z3&fTmxmi*3YZ~(wG~ssx zAol6Xi2Y~VQ#Pzq0HYJT4q&lMp%-!8Wia;MD%B{?EHU=p8yS0#6v&pz*!*el^;Grd z#T_&Dm$%1kC{HntZtOb72gf++1<0=T8mt%Hp&tTd@5>>(CiDtVo8=D=P?9t`unUT*?5DefMyX{VUsXHZmfy zf4r1l&ip>YSJC3R`#{<9{lbfxmU%+okc(!e%qaWTsYYX^aiFo$xT$eVLvOf^=QK_= zE;KGT9&7}S7dNgnUfFnE<44LipbfipM*?Oe?2uMtcJ5?oLYVzC!0de)yCS)S+53Rm z@)-hw9QC?8<7|#B{cBl>MDaZlZb&wAZa?%T+UF$ViF9K~BpuIl_ZO7NW z$P9GVw>(cZU5l-!tGl|YC4sGLvEu}0AO!8bh~5%t?+0k_lUyw-`^CzPD+QX|OBn#P z?-?4jKiU%ZX(K06`v)NH{e-Zhm38-nwBOj~hqM~CbDuyHLhYvmwfATIisTY%?+0qjkKL@O`8ADs3!0p#e1O__>=3md6Vo>A zQwW2#>kt+@6?zeCFMzf8SE)>KW{I`;Z)NR$Y&!cj)~P*t*p|uK`~mRwRQ2XvL$db6 zV%&!I6y<>JI?4w}Iq3!1uJszM7ZKaPK9U}%9LQlibZpnx*dn`*VX>hjv_@E9n1LE6 zNylTOw6(A!ULI^8qPGOw2LRjqC0C5f0kJaUN`WTNqYMDsmv;l(-&+#!HnJkQzX#er zKo~1pc=rHkTfS#_F~{YEzIGwkDVCbic6SG~{e%d(VVUkqz-@#c(rVn!odQh=x7UH& z2Qr35atXH&0Jr4_Z&uX&n#Q~ZO)gMA!0od;$L+U^h#MJD41>4p7#4dKdJ%7b^Llz* z`#_cY6la!r`#^!W_p_<7r2)50-saDOdulfC9-ggVWJ1HL^_qm~v`;q?CjT|V5!Q6Eai`@#ni0wY!qr~>XDpe}ZEHU@NEzEsD9(2oO zZvI%fr)Kk>T`~8^`eQfLr#J_6*Ks~L&Pgvocdgf8y$HG=0CXQJKz9@bo!E`k#P@a8 z4E$L24fbDC3k@T7wZJpP(0u^WTY~OGfbN5mD@TQ12b}N+n%qzM0=nkP{^qwd>xOx^$354>TU?o7aLgdfss?9SZ{ zO$fVZfZc~OmPK+2yAJ`o<%e%p)cl&pyai1zQa-@$^TT5IL;c7bSx^*%yXz8K;=D}wRw`Y^7BP1HA85iK7WdR_K6eD{{cnvM2Am)-igdtt9qD2h7WD#r z*Ln@si{Se+Jrq>dbNDtr!}DF!RAb9z@a@E*8U$>{l8zl4Mr5#QOKea0BIOZyqXggU zfbYYSD@bKstjxGlpvi-j0pR<-QNj18S4w@~$c`lc66kxKuvRoX;5z7AzIS*r$K{B= zb|Dw3n9=v?A?f>zWdMhDx|;*P5rRmo@jG`6G$8=|9`JiTV_GDa@OvHjEkA&>qUP5$ z<}GM)7v%%|zH@i@{Y06-kqN~y_`8l{v1g&zG&`idmLB($pI|Tl`&;Q=#*x_lX0~zV z?dk4nuwJb@z1m=xYQxamm0k{QSDLP+U1{>fcBN^|+m%)mYFAp(v%O+;%-HrKU$qm* zXFZU1pn66pQDe{2!$8y6oNi`&Ikb$}3yeq&BGX`NlxQ|v0x;H8D@yb@u_N2G{q~aY z8y-Waj_T5Tawa=j4PrKmH%P1?2qMp72e(^xVmp51#Ht%xY`qh<>Iv)fj1soqiDvqt zW-}8`yBWoHVzCFMnadFY?){go(+9D+HmV zx~?0miDg+)hbDP;g7$)*BuU@~uF78gV#6DJt;4P{iKqZNE3*^Wk=1TQfo?eLT2vzp zm@U`QRL|EURb$GSk?ZK4#BI-Ou5Gcm{yg>upvg*ahisZVJqXp8!cG(&(tn^G(-(!%OL}3)fW@PKW-JXq2BV@1{GA-F89;Oxhs^^5h>iQj>$)KCD zW3^{Grl+|9D~+ZZRC>1ZV&K`Vqd3qKtrG`MWLxcNcBy*kC#LFH0kdVW!ZDF`HP#Z> zv?7OHtI<~6h)HByh8p?~J4$2gIr@%osbR=w4Kb6*OYCgOfWm&BPwV}lvmY)s;?ClS zyIzH$@slsLve&7V{S1~zxs`o*!mm)vY-RJ&A-%g}>)z3{vOimHXu|=;W_DenrFBog z@1kC4X4iW4Q!3pDy{K97S~RndJSXX!3l@0L|?CN7&5%@#>bAHu59Q{~GP=Bh-KuEp&Ax zYiF;^?FLcO?tpQ5qOV=Zb&jQG?d&tdx3fRHwW$sB#fCP55NUNoJNFDUp@#N1(a=7U zwO)~2YG@xpLtFk0CM#-wO=I4ICVa+nG_)`7x}p7zt!-`OQfz70fh=|{^dbg-IvD&& zmFg8|mKglVb_~8g!AV19GB_V70tSEH$Qb;wtr!ju6d}Bh^}(@DdI7>~y$0(w%MSUe ztQW4-5BJXW{MP+hbN&qs>0bNZbhk1xW*^-{Hf3aE<&=@V?xKwBZS~PjG^LDeepqE> zOFE2h1vX`5t0gOIdAqdAn(V^IzbndWZmDBw9$VnTRjn{^SU+CKI_F&9Q6tyzbS-j& zz_5jumX(#mr7Y!^s`Tm#Ej5)^ZmCMouh7z>(#$PY=^YkY zT2K~qOI3Q1g_au1LcvmnUS^@Cd8LtCs?rlJv^1y8=a#DURtqi7Ds#D|Dm~glOEb!B zZmCMIx6snGGLu`X(lai!q$tz5r7FGWLQ7MMl3S|M!!ELPOZM1|9;V%dzW1!QrcRj- zYU`tUp1RMT9cT_4!(y>zvLxv>!r_jZAl)Bh-BysO8vM#necGbo9m&IN-XkP4NLl`2B`{NRK2isI;=h!AcMw!kINmD2Lt;|n0 zKgtakOnq#R_d1N4N3)JABy-6&=>!Vl=27&q$-l*9MNJDgfp2KSS1ajBws>h2eQbYM z>}EqY#ZI<5lEwaoUew9tQFgNZ?*e(M_kjzFy=--`L!BG{7WG0eTdmiPI$;m=A`t)1W9eRHBL{IU@S`{| zEY~2Z? zV>yf?gCdF}5Rt}zF*S;F$3qiB@y`RrH!{9OGM8+VpTRbp8$faSH<_%cY2haD4NWdn zUO@4?Mug&@%V`|>6j{6uWwC>y7ZKi9z~UQKDp{P#qdaHvjlnE_bRsY=lf|D;f`i5H zA2EwRp5r)tP=xV1+6PBF=>-_C^%|@fk=yS+mL8`Z%VAu1Y|UiD=vBuzSg*M2vN8C2 zth09(bl;0YEn=hBMLqG)Jc{V$caR*$j{(LvBv+KmF|jh^N`WRnM;W{`&1LENF`F)ot1WSjg9w%I%e9G8Ea$%>j5ZUW!Xgs*i19KU;XIQ|I`IWj8pcpb}P z4?{2F@jnKSAFEQ&;!GaqIgcM3%;Osq0dko<&Yv-Z#~&CykADbA4kr|Wybkxl;a&vt zTCc%+5s+VgEIm#+o&&jN`?_vwzG^UfQ_awzH-kH-8pdJh1-8px5)=21A4c@@TSyM% z#{uNWBv+Nnaj`PvN`WSulmUSJ1!Ds8FYn=fNam7l@-x_G z^Ei-P{*5LpYFfAnd_xny6bg|1o{=K?M^Y+BPDLiKgIVli=tWHaMlkvDDpf7cs I4I9b*|MI*8pa1{> diff --git a/canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db b/canhazdata/0badeb35-596e-4200-b1ab-92d608b71c54/tests.db deleted file mode 100644 index 23e6cbdbbf2661a0429414c81529a321e2823ba0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db b/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db deleted file mode 100644 index 353763cf760b77213679aa75220935ce25895936..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5UC13r8OP7;IcN8rv+wu!S6(7^my$YhXJ=+Vu8bm5*7iyTr3lXM&SJ1_N)jx+ z(W)1{kRo0bgepdQ)r%?xrAQI#N0CyYO2MGuM~k5sttb?cS|mP`yvZceZ8vRB@-}%E zCeQPp?EBxD-_CjFFoHzLI+Y>13 z`;YbvvLTcsdj-tYj=kG6HT^3THtj!X`ickT)LsEIwPQcFzYndQh4O{H0%mH*K5PH@ zqrHO%i$f<5y+jU8t<5*J@bKtiemHsgmO=l%lgCdDKm5gGCrYCBKQ8i^5%bO^! zc@@KZ-b9mAhAM_#RQEbw|Qh>l^UhvxK2yjsEAXcb4696Qz}`;WmDBG(V|t! zC4H-uimDQM#b^^Zj0zbGnw62FbtGyLrFF@5-KsPqj#Xl1l;|pvv`VuElr*CyPZiZX zi*qT`MsnGzG$h0-#k@=bjD+7;f(l-Oml{}go+_c@D#_DUrT+L+J>OsRKj44JPyLVi zclw|8EB{{q0sl?n|C9Jp0 z@t=46XB_`0j{lA~`6`?+*}ZtjCkL#%W8H1*ZdrHJx*OJAx9*yCSFO8Z-DT@8S$EO8 z3)Y>t?woaJtvh2~-?|g)+KxRL*;hU5y4D?9cVOMVbsg)Hi|+VHZ!%e#>`rc-T!s6B z68nV!>F@4Ug$yow!;7AK!Mon|J$v?{ubzFI!%WM1=l}nDR~4_11dsp{Kmter2_OL^ zfCP{L5>Z zwD3QW01`j~NB{{S0VIF~kN^@u0!RP}ygvz$-elMO>ESw*>%acL_-8TiPncM1B!C2v z01`j~NB{{S0VIF~kN^@u0{fHzeEvT$Uq7^M>PH;&rvTUOAQ!#|=(^PaFN_3`01`j~ zNB{{S0VIF~kN^@u0!ZM-BtUxZuKA9?ze2h2@c+X6((K%1yy(vOLub$@qn-zk228*G zWSg;wC)2+WUI7Up0VIF~kN^@u0!RP}AOR$R1dzZ@MqqqL&-3QIRd2`ppm)e)Ugmwo z`-FF=_i67guk?<3_j&hwU-AA!yw{2M8u88$@6W_LO}yU{?>XZAf_P68@5jV@0&C?Hnla2>H70Ubz{I(`Y)s-V z8N=K~V={NanADv&M!0jvNOu+t%iS4cGS@dRa(7}(?2gTgu{$y*ay|26 z=V2n)&`Av0))fTzD2EY2z+jLy4W|quHG@D8S>2;xoyoL>lQk&UQT4!PHZRmo!&MUdeg_SYevM5>{A z0zbw)Nx^}z&dXpWi(`l_kegn_F#HIXq);y@X_Vxu%BrN!^DI~vtZraOK82S>1*bAj zRR$x1NJOT~h?mfWU@5Icm1%RuCd;U(AeQ9}lFgS&$|%WL1&s?9IfKUKscD|pkb}OA zX|C&tLWGb^WjxnR2McwoWL(D$O<}l!QIAzr#j2t@gY@zxuQJu}V7_iroe2RgV-=hg z!8lu%bwgEBHEEqzGE1spj%j$lQUdz~st@B?1og_{vKp$CL}l72A%oe50ft6Gy|fv# zHPkT6ayVb6Fl@3?2~h_#U7|FO|Ik@#Ud4L9j{pAWx{Uun^NQC;#p9#mFXQ5oaq;}5 z_}Zj+$}j#tQ#>|P{9(5E)@SSB!pFSuzoYQj&fo-CQqnq!R4icf zTSZl{1AAy(#tEZk6N46uVHXYN)l{iSD_tq08Ehv?!$vDC6ype{+^}lRVciJJ!ZdEQ zEGre4WgcvGnVkolU1r|6{>Sw{?*F&VLazP(|IFvF?)v}9`Qnv@;(H6li;GvZ7jVM_ zacl?@Kmter3EZ><$gW+TcbU<*uFeTLV3oSe`dgKHWXCFXSsAn`9Xd<4tx}iOLz~iV zJGlRU>8F{koN)jDvQJlAIpO~QWuNx8a>D)p%bq@K<%G}wT=q0vD<^#Zht`pRhgIN7 X6|U=6PWy8I|E8U!VZ)IC66pO8{!Le7 diff --git a/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db-wal b/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db b/canhazdata/0bd9db31-2771-43f9-abe8-0f2ba34fa8ea/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb?9474S%)TlDLOfQ`Q?lco6%m)@lti4UIEjLa zzu+iBNyWbaqM$*dq=g7XK}~VI!c5|1b?BUPijAG)JJMvv(daijpM6MP+xz?O+s{Z~ zJ!T!3lXm*@Jk2d)Ss%QAbHlWz*vAe2o-H8jn;VuP^K@OGR^4<~rn{%J_~#64*1uwo zl|a}1Y1K_$}sco6gFTt-t@WwX#x<_r^bwac67(UkCO!*7#a_aMg8g z?CtD(FTS_EyJxwZ+qGJ8-Hlo{E9-78H|iDtXk^lkys^D=?~&foNYRemsy5X~ih*jZM6RH=N^h^=h4`JdKl> z)>W*iU`;~vI;*IN;v$V}$wi)7uDP1*_pfhHs_VxW7IV>9AOAtzHqxXKNnBMaWirx{ z@<`G`R1J+~o`||ivRH_jk?s(ujl`oUW=t`fF~+EnoYNvJa@s^`l^1yu@rcigv}zN( zjTDKPrCe4tt>cu6qM6XVNjVj&&L%}FqeST|+Pzn|N(gBqC21tGL=`k{xZb8%DJoga zXqpvDZ&Ah)UeAg&{;R)k4F*pQo*TR{$Of+r-X6R&m<+ZC_uW$%(3L}o-Xy8r>=oa|5Hp7y-co`2F?z^2_b z<>BEcA03`q?i!945P$##AOHafKmY;|fB*y_009VGLIGlVuKD<}ud8D(_U1S_`lRX- zB4U#v009U<00Izz00bZa0SG_<0!uDHEE1ZpUib7{|9&s<_1%Dl-31`a@}-C+-)Go7 z2tWV=5P$##AOHafKmY;|fWUbLi2nJB`RU=)x-S0x|LMp^o$upZ1Yoqg%xu09H5150Vak31Rwwb2tWV=5P$##AOHaf zJeUH+@JVTO7MIz4p@)}F9oleCjy`>w}2n&yCqTX_f3=eJ=3IqV4B4DO~ZZ9G_miR zhWW?0SA5&NDtuxZL9AhDQqQ^i`46t+dsblg&9fjDQHVEJ&Y?wY8s>xm1Rwwb2tWV= z5P$##AOHafTxx;->(*%W)@Wz+D;a%FMz_i6cYE}`J^I2PeQb{|W@*DvXB3u6H8FXC zxul|w1eHbI&|IoXt|~5@q8jQO9ku=kOQ~uyooSbejOt9pF;$hURiUy-rz9Tscq*!# zH9Ea;rc)LRUNM^UG@%n7H;N~599QWukg683lo3@j(W7diXr-8-v@3`fcZuyH>-uB9iIRch*7815up65A2XJvU_wMf5>G|y2yE7JIo^x8=C9O*M7 v{X>E_(mZFw%t(I|zl}7{88b7|pU6Lc(fP-h^UT9mK>z{}fB*y_(51k?siA8c diff --git a/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db-wal b/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db b/canhazdata/11d8be16-ef71-4147-9622-eabde9e70348/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db-wal b/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db b/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db deleted file mode 100644 index b23ff1a0bd8733f860d3bcae68638463a53e6466..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*O=~1Y7zgmKewpkHio2r7B1q8fW<6BWUHvwFiz0gxzk*hERl%scS(4y-GdDkk z9_H%750IOJ;6?BwxD0|HKs?8%W@d8;$n+NQcKPrs%`x-5Z@zjqajh%8&gePjBnL;)-4T+it9E zQJpR;HNBNhj6a}gU#I%TvQpDq*|7MBA9?rhfBfN>5C39SZ!zEE6-Seue5abFVes_m zV0v%&^8@qr>q#q*jQ(t2n?o;rOwD!}PPDSyd!beny*-#ORnFdDEEVid^o9MRdB0-z z!J=QdYxnmr>=*{^PCk3v51+`#W*Qxt!=ppbr!58U{ND@d0KGx=?`7@tcx~ADpU3as z`|nZxWm&1|t!!fagJrbG)VkVd*|7MBpLi$ig#84UK>W!n~(H?11;A}ea%=t^>HY#}ODnI;q7-Sh7t&%X_(4>DoPN?6OOljMapf;Xw4 zHOabZ8*6QuOOLuqQHZ+8xXmSXGvk_%g&1?KD`7I5Wp&z8H>nDh*0du?p(sRM!#OsmoxKJt>})8rue zhb6zVyCpi0mZ>M&r{K8!`sZHypX2hsw`_RXmqJMRYhG@ zanNPJ#D1575c^$574_;cL}S(|M%HBn#H`B}hkM>=^w#LT(ZkUz91|?EsRAr;f7H9e z!n1qP*}cJV@#5NVPfx%9?)0T)?YoE_fB*y_009U<00Izz00bZa0SG`~MFHkT^Z5xk z9})OBHwS&uZnOD!RTsU2=O6$92tWV=5P$##AOHafKmY;|SVe$&EO7sNeTP2!uleIY z?a3;UU|9%200Izz00bZa0SG_<0uX=z1TGU`UOaR^J$#4i9Y5M);b3i_!da(Z7+n?# zo`(PgAOHafKmY;|fB*y_009U<;4%UF{y%h=A9~kyVE)=Z`_DK3;yOU?0SW{l009U< z00Izz00bZa0SG_<0@o%$-~R{h(#y}?8rga;+Rs?0Yqz>RMS%bWAOHafKmY;|fB*y_ z009U<;0gkie`1k;P;QwfZ&RLEwNldPG|k%B?~#?~0F^V-p00Izz00bbg=>q=)AoU)D diff --git a/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db-wal b/canhazdata/12f562ff-6e9a-4fe2-902f-9a79c9fff53a/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db b/canhazdata/14395033-44a7-4719-a546-0267bafb350c/system.nodes.db deleted file mode 100644 index cd626d6032dbf745d1b355ccf44ffd2f44e1901d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 Q_5T}okcJIM0!X0uKNnzC5dZ)H diff --git a/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db-wal b/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db b/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db deleted file mode 100644 index 5e9d62990cbc2a9dd152c6d2abd3206d472b729c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&u-f`90zbxe_Ytuuol}e6a|W4i;V8TL=;6yyk%XFMPH%Q9}4icE=3ZoyDjgr z9{d`)bwGh$_6{qI0(*cxK=xzo^w2qhfFRL7jLpMQ8UakVSnyu#nh1*+!7ggLU1Vs8;t^;QQ4a{eDLIGpULoop5d{_~@Q>7CuD z2ln}ole#>z&6EAc9FKDVsvo$z-mY#h%f0n;HX_mGN&)TK4ujcK7 z-FAO}X~V#;chu~2FZii^W~bqiJv=&O9<9lDum8P(2Iv!tcZ=wAyw+^~pXKk~`|nV^ zS_D1Fowbh1k{y`RMo<*W%p>7OGTI>B5M-QIu@k z7NSt56iHRcxX4o*TbHa!Qd#7NS~RtyEOaI+Z3VnA=6E`Uve#^$=$K!+XUwr&K zAOFV3eNO((T6W}hnFx{BWmZLAmnjh+o zywk65R@FPK7XlD~00bZa0SG_<0uX=z1R$`v0<`}>aHk)-=ThL_D!=|SzAh(4*xcbn z&mjN-2tWV=5P$##AOHafKmY0SG_<0uX=z z1Rwwb2tWV=7Yoq!C*1W%E^dHF)=nVux@;$jc$X{T(D@%dcj>vnZTwmB1|ZJqT10B? zxX~d9KmY;|fB*y_009U<00Izzz{U&E_MgGvBmD4U;|KBz351@z=5vUxEmtr@QwTr+ R0uX=z1Rwwb2>cfW{sA6uLB;?8 diff --git a/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db-wal b/canhazdata/14a923bc-b85b-4cdb-bc1e-9731aabef421/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db deleted file mode 100644 index 6863d3227fe47c0d13d2847883402a20102a8384..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKm$~90zcZpKF_^#G~MZ7I9voJtlbkc11vlhXp+)evC!LB{?M#Cn`>&pyDq$ zicnJVFMud$kSJ*(0#Q&?9Ir5wY+?@G=A6P=-|-!3GPBX>H=d6l(t3CO`}UhpiKRTE z9G8=J@$x*)4WcOTzju8@wz8(|6;9~AYSMHS6pWn}BOUs9&iV!k*3k<15M^Zz=qv9T7eB?p&v?b_bX zzVX7l+q-*;zPa7-sjhD{RXbhRn`)z(nnxq!ZsfJ?ojZ>-jz&h^$gOgd-!Z1H)obCw zB~_Or_8-{&V0Vviu5F3QcNJC4smb$yT^Bp(VNrit)FJoR$d3P`^~-DjqoRJfsG=FH zjB)+uVzoC!E9;PDWb3zIQHtVMQhY{=@73ZHwHR{kca2SqgV(j=bM-QdgMcRuqpYne z8Z|YeS;9-2SG(7Z!QZSfAe_dKan5QeMSvLc=KVX_PiT zEm@vXKMd+TZmXcpgQb!FCR!JXRgs7l<+S2Fq!G(=n&o*(gEr2}DCXP`o28NdAZiz> z%^Sx3vY}}#w<&95nzvC#8B5YStdrW0(xs99BBYDtC#;HtmQ$8S0gd7;qvCZ)+p_ij zENX+&ua`zTwAU5aeZqalecnyom)*DAx82&^a__pQFkmPF$2mQko$kPPCf$Fnu4{H( zqwDHjSL?cJ*CnT2vHu5P$##AOHafKmY;|fB*y_a1RO)#n9!)kG80qy4suL;fNl{n-{{Qr6G3Q+d#zO!C5P$##AOHafKmY;|fB*y_ zaE5^R{9l)kA9_lTA*%c-z{(0ac@EIZwg3}D00Izz00bZa0SG_<0uX=z1ny4(qL_|+ z^zsj)+J>oU#8M~ndCV&)#9_>5{t9Nsln{Ub1Rwwb2tWV=5P$##AOL~;TR`NWu&jry z$E{1&v)0^VR%X3uy(*swfHH0Y^Z0IwX^WdCeqc^y6PcE5GSiezZW^*-rY@Vr)MOKy zs%&DD$R;I<=g8D^x_JHru_u~ksJgPE?_m(NS5}^J?-pzw1Rwwb2tWV=5P$##AOHaf zKwyLd_G`*)_U3G7_6wPPMP@h2>^F7xojUtmoqeRvE@p#0hx52(Z7wnl^GsypEu)&2 zQ6-Y|woTTs)-O4aJe!AUmFFVKZdC_~%t##2(hoVUWAV3c{5H)RZ&GHQWl5S+p0y%x zv7d|aB44q{5!{At8phnOV$bpe#`C5WS$i9ix;F|UpJsj%&`{(N_A8P7H|C9JiqX7H zgIweWmNO=DM$VbY7o1gT!xNU*sb}=bl64k*dE-C%r@z*U zTYB+@Ui@qnH;v+Aj(~B_LYywkbDtx0S(fK3DzX0+smD>gEYkdUGU+1qIntL#`jc2) rq&{cEvPf4HVs?@GoH0uy5#%4g==|g3JoB(s5P$##AOHaf3@PvrP1bhx diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db-wal b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db deleted file mode 100644 index 1ee16e41e39e3ccd259ed4d184d64f92b39a6bd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*Z%@-e90%~bwH?_KBSeiMCT3B#;DZCY{#pBM^4RzmwAWsfs)!kj_)K1i5B4^A z<^vO-_#PyS?*o6gbv!U&%AljL?r$Im`1*eVnH*+JlUWq~Jg6$I@N=l(T{?|D#FTB&0G^*q}ns&$lE zDwcm^mmTxtiVdnv|7+`;^YIa5KMaFTIwMm?14o}xMjHX0$RgW`h3_Pua0AZ~(v^Wo zQsqhM^?X0@*y_LM!ILk>Xv6lpUF9dXuv008o5Z#Vd=-gMs>lsuHx8s?)J(cTPr0Fx zN;$%{!%zfa7>RD`1(EA1wc{kz%%P>U*9}FOc75UcaaTl2*)*g;_7dgWVccVlKI?Q| zbq1Ylb3sS*3$%HWoz~_>jsR*^;Bcb--)uf?K5cF`=N~rKtegNhX6JNno-J8tOLhGx ze-+B<>FHOBi%S&-i7`L`0uX=z1Rwwb2tWV=5P$##AaErC&MZ^UMKmak+H8K}N?p#q zGM`+lntOGu2muH{00Izz00bZa0SG_<0uX?}1p=IL`u~5%9$fJGB7e+pcKTtFsbX6Y zfB*y_009U<00Izz00bZafrSci);9F5hmR?4`0_u^L=?IEW}!UT7z7{y0SG_<0uX=z z1Rwwb2teRY2+;L^Q$K#_iOz=CZuGGPeD)lmJ0XiCAOHafKmY;|fB*y_009U<00Pw! zpzHr!KYID30z=}w(6d`BFj5Qw0uX=z1Rwwb2tWV=5P$##AaJ_`Chs4)T|>rb3kkFf z&8E=vAGv<@+}TSi3iVx1BhDvp@hPWs^a=q8KmY;|fB*y_009U<00IzLVgZ`}spGbb dWjp{Z%(g7!Zb!}#fB*y_009U<00K)b@D~q`<$eGF diff --git a/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db-wal b/canhazdata/1522e6d1-1fbb-4dc1-86ea-9bea48c4c8be/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db b/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db deleted file mode 100644 index 623da60daa7393eb2acd284da872e9187dab2c1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5TZkn`8OKlcIj8%a({sPyc33gpgpIX!byanDJ-LcVXp<)ulpt7r!^LbiWEVqT zH0nbhB!~|IA&M(`%0rZZ5+n%G7$ii95^z!QlHihuL==KZ46=T;JG+&Ybkdt-F3x@p zHQzTgJ^woO>*}vAr{{dX{?&Jh*PH8IKCalEZ?DJPPkOyCf9c+n#+t*qZ1C&b6DX>C zPxcJ5A(Rt41XT)ExB7%pKj`GU+4gtTCc~F*?O(oEZ)$WM$5mR;Mn{~AT4}12I;E0jTsCFJ zl3MfzCPtha-+8*!cU}$`CcK=u#U%r)#EK}X%S6&L%^E6X&1k_>O>3UTN{Y0RT(&9= zN#80(MWw2OGa9EUqk=bz>Y~nQ)Wn76qS0BcTa^aHu}U#7Qq^b)uS5$_D!@xCMpdO! zEp%KaDs5Hj6JnKg6f@bxHD#3mPDRS85?oPLD6Jc*n2wTGC1-qF&+}%yWpB&-pm)q; zUgmwo`-FG9_i67AukcQKcYF7GU-AA;yw`~LD)BB5?@z=#PrTm{?^)vgf_P67@5jV@ z3}*3%|8Tb%iz4M7F(z}jj7i;1Fg$TLjFIlTF~VIlhP$iA#O{hQ%w0Ana+kow%3U-j za~F(B-FagYcg`5;&Ke`!8DqFRZA|P=8N*!Pn8=-gVagpFler^fQr9ykab07iJ2XbP z17o<`Hzsx+W0*^fiN+^-lgZL#dvf#S@L#?gsD-4zz0+DUxatkBdhQi(zmZ(L_`p{$ zzRh8#WxdP4-|v@-^&!wl+7`*H%}S zmlhZ1=VoW7r~Juy5weE^_m#w>G-9_szSa;sK zbJm@;?u>P(tvh91-?|g)+Qd4Ok^QM>UDvup>kh2jx2|Jda@8fhVB4ggyBR+JVK82u z8P0DlPkK{F7JYYP+S^=TS{uzRklFsq9^`W*!%jJe_M(Gf9Y_EPAOR$R1dsp{Kmter z2_OL^fCLT|f$^=qFuX0iCw!TNKPTbCB>blnKJSE&I^j2*@Q?lQJ+(IQb&*O58E|P; zmMIl!#%QK0O=Z$lWhIm@bRA3@23{izNHeU>7sxuCWeW20$`k}xp@pb|vCtB75i3Qb ztgfiYKu{}LQ(iVIV@kv_V!T&2aUF9Vc&R8$p-M)Z zxPeTT^2yjLb?L>e zN)s}&N?m$-tJ0WwR;kO~(5f^du2t%C$FwSWn16h)^N&wH^A7R}4W|q;r!$>$ zh{aK`$|T(6B9fFtET%%Kk`{4P!muD3u5=_-odzo!x?3VkL2KX!BZ7qZ%$u4Ps*#PT zw1O<|!LsDBjv^CJ;ta-(NH#F zkX*jtWu_Y*%nMe*AR<$!LX=P~<5XubQi()lbrJCba0GL#hUDfFcqMQejAs!4+9Z)li+3OR;f!=Y*ktzOIE2%#YWp&=FG$4*u z>av1wRq7LBmAb6*Ta_IDj`wH&|Ew22;)VYih37}%AKqs}XW_q4%;e~bhU4S`@g zOE|2=vIe$5BiQ-kDXc-`CZkzWaG^w{5-o!xC9G$`t0<2em@9JzC%~o{t&&K`0w%v@ zR0dnHSIT9aFj_Qb?~=u^TMF}Ps&!QBy3|H9*i3W{OFLL7#t}@pVc$)`x)GL`Y24JZ zD0N&ED%j{UI}g^o%)D{^kL!Qj|A!kK_P}VtQ%!50#Y&2_kzDTm{{PhH-{1BBYcJr?1aWK#5Z)kB-oEnB$%|K@iyTRGwW|26NfwsOM#|7+guZRLdf|JOWy*2)Q=|GDOA kxK>X1{0}^+78ja}MrXBd<#ZtT|8Lky8a5mWAc5Y00n-m!jQ{`u diff --git a/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db-wal b/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db b/canhazdata/157bd405-37db-499c-b20c-884f39a059e7/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 I1pb4-Z_s1gfB*mh diff --git a/canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db-wal b/canhazdata/1760469e-7a30-488b-a1e1-5d1a9dc0d493/tests.db-wal deleted file mode 100644 index 9d6e6a50c3aeab7ffda167e4b7138308a1f2ee69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63691 zcmeHQdyFJUd7qx0ncbP4ecbwNAAXz-+$_XOTiw&$)7?`3*!YZnKA+F$^ZAK6uAc%a ziOqo`$5CLz8vKY&a1@+GAaR(yAaSISM8*PzgTP8eO0X0ui2_Mr6@(+KgapS@A`$X^ zRsHp2ZfCb5{g0rhBTo>-YQW@%yT}>H`%XzF4nRl;m^eZ1Q1||DQ^};`M8j zb3dk&4LJEfYy1~=#rMt{bcLmtB&Ag9${hTtmfnNMka1MlQ%?5IgvnvN?Fae2n=6$D zqBlmMWNVPd(@9$Y0-x#pdHDQH?mT?mwXoaFQl46n1Al>MLrLw4t}>%LkzB1PQ()GW zEAgvRjp{>mZ^yVxVL(iF=8NDWadQ_7PFb5t066 z#0MBF+C@jiTSuk>A@wf**V-e1{Ra|IOdy2tU59h8Hu(jmy0KcRe06Fne(=F_HK?Y$ zmFm00bB8=DbZp1ys;1?eaL`=Ujg4519J{CchUb}@R#|-K+32C4d3WHwFA9%87)I~? z_QO->4(WDJGkb2N+Mc1QrsMdkr$@SKg}Ud4ffkysQ8{<0YX!F7^Fq~eZCy28*HWF( z?W%4RIj(NP{ap)w=7fG=_bfvVJlj%DEeur8_AE7k*rpkWZrpRzoH66llAJ-&o`#Q? zz#kbQzcTrwj7o;sz8SK+ny}rxvGStwqVmJ37so<`l3s?S&7=b9R7FgNVlqZnI1x&v zQ{4w2FNeRe9*ZY8)=?44#aOqvATnWc7_O|&^2<;iFE1ZMd`AwH>pu8g8r`eaM(Llk;<%q<{2InjJk%Pe;fX)O8N_aal%JM2`nRWeIr!;&@`|% z@2Q>^X;3A{dKCAGgbF+q%8UE}BLRqQqw(8|0U)zrHoxodM# zc{kc*V;QnTd?KjPXv4&4%bv|(0P}d=U*a_wsN@Rj=d0gb)X&#~LLnTnB)@Ty|2Xw` zvWt)MlOVI`w@<;3-}hmDdT(fLMcG&_cnl2gF>u{5vMj?vV8Yeqdc^weH#d*BM_`KoJl!6)Hbdf;oC7I-Fj41_wn#1C>=O}KoFPOihr zKl)HY+Eib569-8gJ3Z5e-gM6l!9f!GhU!~UPX(WZWp=xPV;a_Y4ieontw^(7=&yId zj}k|L>bpUx+PzroMv)75@FBasxMzEz9jQ)afx9NuL)C?Ty=wcK=>-}%VhlSqN7j~W zNzT9xiVl()z@UmaNDML*60v;?<~u35t(#H@$@8^woFtU^GNe6EE|Mt`qoJ6Lsug@T zbc=MRpaNnp68Th#do z7%r0OysB$Z^4Se1_DQCyLkDdtzHjVTb^lcz!N3VgjQUbWlt6<*F`3z)!6#$2&rF`E zX^Bk9Bqc`s+lo0qtql)C6g)Eq!Uv&ZO+tZ zh9!#t&-+S}ag}2K>IB*e78|8>r~?iS`1`jtM5I!wPi^5VnM!>nlKVIpnXhCC5gak( zjh1{RbdLU)U7QSD!UPLB`AX;<{V(y#@Iqh753VcvN^Z#cO4i}}%Za#BY8$JYc@8Yk z2;&I+1-5}w+Vo+rfn%9!V1{1k#gU=K-HAx)(ANzchQm}N@I#onU~8)DX`!lt!@-34 z5PCOuidDVFk-(~+r1X^R%B#koX_7}O8Moq1NlG6nNa^o2Mwio+{4%8ea+_zYQxh>8 ziph%X3Xh3HvpF%H{)Ath>`@VN3GD1MQHF1XWK%J{gF~}s_1CfP3?Kds*NX2oQ$N9K^LT}2qt}l91zP6OjJi%E`Z>Aniu}kw5PqmeGX$}DT zFMpJu-W#qLWlzk-D5n99=gbr7MvgKKh^BO<-H&xBJ8z-_RNq)F_%4%aKs{IMnL*^L zq3OWP`YwF(Ob4a`IbIJ=#YWg2*LUgk9B_lel&aVSrzE@$r80E^Unxs$IfVBe13mm+g45OD%&D2I0m z6Ey23lH2uR)O(-Yp6i#}ZAnfsnR1)eLL|43ZZEf=5mnrIx?XvLSuni(qzg1I6tj=6 z`F^_QB=IGauHy(K(RHg3UEi-^iP<&~>iFaJlrNE1o?`a#wUF^O&)r#)2$RXz?T9<^ zbxf46uZd7buw(l{4lRTn16^a3lt0r}f{UUT|9YhpI z2xOROwB*n#J3WJe%;QB4trD-ncp)|?ZYnyo)(>VC;yPS^;8%HkrLnPEkk~qZvB>v~ z$mkll0*DU6T8BkR97l(*cF@z{1((2w7hJ|#io_3nzZ*HB8hairMdEvr>KX9W)B?kZ z9L;x)pb#7SeOA`CorV{&`&Cz5w70hL@rB9H^Zitu;#bku7 zB&JyDG*XdWSHLgA&&xQIvKh4oxswfo}pT{jpNm@ z9Gq(fn%dJ0FVu|Cb{%ItSuNtMhLLNbxs8-FRys0SJx#K@Az4=|_#hJwgbC{#k*q#G zP*#7eHHx&Rn=C`-ex8K&w21LgOh(xX#|CEAPG`cpAyrw+6xKHb9I3G0*?0c2t|Vnm zMp>Yu><}?qBuvn-ucuD`^cc$elFd5(OA^Gj%ufHEi0$JH;7aSnD4qW2x9a!jNt;PY z6KQBDCaaCk@CSt2Xn&rxOGsWzU`-}zrw|Sz?T!&idu%Xoggq9ujpRO^X_0oHV)n6i zDY3SH76i6L+7zK&aBJJCBVlqECP=KE9G$iAG?14~0^Mi^u93vPH2ED}W5kp#3PXi3 zX~4I?UE@I2r?(iSoegvtU&TJuqO6#sHRg^gIW~n_**%*mkw9=^366 zTVG6KL|dc@PIJbp`b>Jypq1dH@oCB0Tfw3};XrJ&?k-916I)8}Z?uP(-*lU0$leJO z-!mfSLopd?D;yo@?#}dyZz|~%h7V>>OPo4>1ag~-?;T#p4Q-LsH`!%@i?Xl8Y>hBM z%l_iy>=an%80!17%_YI56PI!_CBfYYWP)bv&aouH7dBS~dETB)c^hMN`|><*mt|UR z;>5}1?Vdbur^e;&W1CTzC+?w?IFSwj#q87I2Z*@KQG`omPMHzO1+QXu>PVQ}n6U{@QYT4Yl!7g zfk;53B^i#NG0?TrXgMBvOb{cI;U!)fKK-9ihX3<@MH&9Hu+<~k);e5okqmEctQKT= zvSWo6!Qzr`;HU=dPYF9Gz#f-QSNBy1CWCj~Aa*>>A5VsNVc$&C>^iCy_%`h00FvKz zJX;MN!_~FW@qME==DXWXlHoIwb-2>(=VERazuab^vK39c>ES>y)t z2=%`^Ga@2U%mpAecG#H~85iyd4f%H(BC~-z4WT>= zP2ca-g`QsM4Q_bPTV$z1p;hL}#Sv+9>es{Kh_w7=T5z!eJ4yw&DPk5>KlI7}H=z7~ zE4csr<^O>Rdv0XP|NF28Olrs3yLU$Zf4$!WKm;Ilhf?Z9x|S5PkGd;1rS1)_>A4AW zCzHDS^VHq5W7K`R$R06(-2Lxw;4Pt%ZHmG+J`JmGWmWfO)*g@mAtB7%z0Z-SwWL z<89-z%<+cHyS^ork$pn)6FlA7lWBkSH8Ahi@9@*gp77J{jY&Uy0jzE#AqDFt63IEY;N=UDaa0 zr)!aI`=+0^{7gA%NzN)t3&*h>@Fz7T4`eAV{!EiRQYVzn14=qc?NdVISbwoF+*lUf zY8moZqmitZFJM9xlM%PV;ejcot#l--S;rSTr441t9LYKgaHJzyJHG1_YB?IpBI_)$ zQ92-)IT9vl+ka2qw$>OcjVc-f9KizVu7-WMCeEKs z`cCKRd;6}?_bZ%1Vj=JChLt*5plghwvau;((tvMYUE?^_TU$&sZRNb(O_}cQi`v`$ zQ;4TTx$91^={!jDx%IwB!L7vn4 z#kv!Fk>{$00n00yAqaIZfQ`<(R%AJ#mcyPOkLQjMbPai);YJ27pKKW5C(txa^`qET z{n!Hi7rIugM`_MjRiDZ8S(4{1$@*NGv%PvA;Mpuq0c6thp|T|1D#Ye1$?kU^OQ zp2-vVj$I`1OU-5C0T)@PEf3S_-dHaG;W2y~n5Q-?(yyT8Fy^09OrZ_b^D#d{F@-il z&&PZh#T1$eosW3~#T=^s!F*mtF^BRkV$9b*3+xx` z)=#8cPWNP$r^g<)q9~n(^YC#7OR`d(s?{6QGtJg)dv2cpV1mc0P+hUJ4@8*Uj>$gC z({Am~o?bYq>FH^Hi?6^xx^-V$#+H50&56GTXXmCa%UoNAY3yc@*_N>-ai}wb-QHu% zXTjjVtSok`68yZIkg@^>_t>pKdCI$9-cn!u23+Vn|D!N|Z3$84}aUHII z{y83BX>Y6+T(8N@D9bSP0Jcb1;YEAc*e#5F)pcE6wKWemQa3%-FBDT(2)IiMwCvcG%+6yOXInW)~ml`EDLb>3R-+eELa#TFg<~5t?t+5n5lM zBeWb~M`*=pL|I*0hYHZdbJp80|1k--X35EK?24&t|BggLPzTtT=n$b~QH;gO`#x^3&3RKgDd%JPiRU_Ml zD7vq^zD5jJfw1Z#XKngnI=c)f9OAMqQhiWNR%lmvdf;?#qthL?S*yaVIPP?3Ln!YWwmHS-u8B&)&AyvD8lOg{ zYvL3>0J$dasDLwkcYG6A&aR-rk+w+RZvbm-cZ!s?smm5~9;HftaAYsD#uj%X)=m;@ zztvpcX_pc=&GLX2WsSj z7bon+ZUnm%o;xJchlQVsEVz>9jP;x{_sbl)U)qxWFACP86Ar{Sdy9bFFZU1ae)*66 zqAnP^;WA`&iG=u^h#^r-M&Am@3557uD#Y7zmAFhHejCC;Lj36VLi`y%HpfBS>PVpH zl{lFxU1NllT_*-3VS?uU2r2P7k;;x@GBh(KzVAGww3!lLWcQogL8cPF1G7m=d{;Mz zPbm{=cm`0mbRM3TDBG9!o=liCnUt~3;fbuw}Z{Z{qyJux{!cZY=ZNRtBt#P30 zb6ZS=n7dGkx1~t&*MSm0j;IO*A|bED%RbOx;PQBp5-;%@j29~LKYO95#GmX_;y+1B ze12nfGbL_YVb6;K8>Dv^wmQ&ZjMO(nOLYRf7yE|UwM}EZchH2^9XfYNWEt&ZRj+Ym zl!`J>N_8d9)rAk_0>oGg{Dm0~=DkuX7UuP0?UKZdfqWGOvbN0Ufj>WZC;80(jHLZFNxONG)`#e3Mc@oXhXB%! zZ5+9Yw3}v2ja0H%2>0?B>pchtNxM^+rr13fz>cynsmqzWw1EJ5{OAZ=uTP zFI44oQe^q-LY1FFT(=Emn0ZxRc7_JSmdA@!d5PCxyik>&`$AEb|5~3akI(V=%EHEK zL6s-3CzwuP*uB6~Ez5@WQsXFs*Arm48wu)7Krpgyc zmCs9-q#lClHE?2Rx%1D_#bzA%O`-+vxcQs4mZ$zLK-nadRBry%?3 zDES>D3Uhcv8O^`41E@=P2W-Rkfc@f}aksS4ZZ@WN^|gI8Qe{CT7n_;$ z=;sKNzAfgqr|z4xK)|RABIMP%nmjx`2`gA-O&qRhz|iFiYs}_LzI9LBnaMuga}ar1_dt(hCC#q5JX~-^{YK+w{|6+^d@`uoNT^^ zI^Q>Edj3=Oo9?=N-80{Be*GQd_2zoJ+eN$g@M_Hcq}Th>7w`*`+E|0;z|`;VAo#e;HguYlRN?J%}~0Ii*d@`b$uX5Y3$*8cHF zdq<8GN6#L8fgIhpHovchhbNASW9f@GIfGMYPoEop_|B7O&i0(UPuBW~9(eOJ zy*|9>z?}cb9r%D|q5N&H?C0lo$d3OD?Kge@Jd~g96)^j@9me*%d#$}6tSS4s9kTY1 zKi(^fS4i=FQas-;9_$zU+4i^9Cc_tR9qgW~H%X#lO{A3+Q53f-t&zS};!Mk2CN)h|4i#&lb!D1y$^=Vl z9jRRLrd4T`5UZ33mPIm^G>>AaSkqKAPbx-JEgD@lJkhymRazN;s^|MF{s;UI`I-MQ z|91bge&yfe-{-$U{C^VvCF1{)_|FpmSH%Ab@qa-4M~MGz;y+0IuMz*>egD#kaN#k$MZU9#??br-BV zZ{0cT&RTcIy3^L3vaWC4iFNIPJsH{mde(KVJG8E2-GO!c)+LwR@$uedvNYM5+&sAk zp9@MH76N3jvsV@3T=IsOJoln^(Dglk{(-NYe~Zmb%X+)dA9Pjm{gD6?Kmter2_OL^ zfCP{L5UvbW`Z&^ziePkJBm zKH=T&ecHRjQ{D;hly|T9W$!=4dyROn67MDA{h4^r6YsagdzyH^Al{S2`w{UTgDiqK z{^ssLgo4NJwlTupGA401jmg{%V^VkB81Aka!`xM4B6kH0%iU#Tq`PEH<}MnOx(mi6 z?mU<%cjwHb*qsF{XI_n#o3v<&`tFyhOWwJH7 z4tIu-L8tsaH~wLUEkpuH00|%gB!C2v01`j~NB{{S0VHsZ35;*;h2d@C>F{L|{+xsl zlki{t@Y#O&Xg~aVKm5}md{^%m_$)4SE>uO8Ocaf)T2WOoP4i5!67mQ)F=xS~ZZeta zSW=k@PUD=#kk?m6RM#wzWL`I-jDm5lYpE-qQXBc`2F9gHg>? z!c%xI%~V8V9+kAr@`R=;YpO(5vSA|davn38MLsDuoWiu+*O(|8xOB%-+P=~C}G-nN`O{qoA;TYmF zYt5*+fw>XV68>T-m(DhyHRzg^YIsVy6cSGHxTH$Sk_wqJ==4jKr7~E}Ye>VcSx%uqAD~M}JkLr< z_g?ClRdrg6h6gKx)wLE0H~n)CeLW;_SCwK^3Le)G>rQG}1zi&BWXNq7tjC1iU~ zveMM6p-rk}u33~Xk+U#y?rnMn^CpF`+r^H4hDCWgf!-#&a_U zvD)lk(VAyT!a2*}b-`ScRZSMb`-n1z@l5lCDi)Q$TCCpk@-=Cx)`rIS3E>e5T&_^$vZ91`VW9sm8$bs7JE>J_hzibqGqU&h5lihNk=bSC-Kw-n23D!l{Rz&UC(oQcH@3fJ>6|)w`t0#r)=1wf zby>l;)@hXxtJGzc->S6Y-*Ii`|4)12BVPF5QTY5Qe0&ssW7K&?@U8+(_+lh*!w?8| zG^|?7)GXj~1%Ki?qbgRCHjF0_2Zd7B!8Xe>nA^gFEQX0O#6hbR){R0_Rr0LNn>bUI z4z^?pOI0m$%6SCq#wZmuR{{i8qEeC9T=O*8ghe86nk1&MCumg=EmfJUDMU7N-LNE+ zc^YhVnVkpgU1r|6{>Sw{#{VJOQ$i?8G7a&SI)xiWO~|E^*FXM0_4#YN{(pS7czLe) z?p*QQ{8hyQZkSFS8-fIo01`j~?^^<7$F9!1%;;NJ=W}G+Ds`Flw<^t&EvwXJWzecL zPc|=8>acofRa(UO|K(RRTRCC;|B9=tt(-9af5p|_R!$iIzvAw*R!(^T&lPvWwQ<7x ge;~vrswUD3?o^A~uPqeQK4< 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ⅆ#!I&0~1 zKm958CVzi5-OD%VUT@BW&4X0O|>{4wSdZ*IEp`A*vYw1*ad19y1Ys@>9 zRuk$}TG6w!YIM!W_CjB^W5;JBkanPYMmJU?&(iyWrm=UrnVprsWkgsQOo3`Is_I<;P45O>M^qic@PF916&EgGWD+q$nv)I9%wjJA!A3Blh zMiyJ|gspnQ#yrEAt#_iCeqXbh38&KvBRjU(tv^-M0+TH|7_+xrSnQq6y3Zyf(3&W& z7I&6(mpz^r`fOFg*ksccg1)1=t{bVbWm#dDUh?b&okcy4AEl|3}WrZ@OnmtA8V zQUP>UW+$*itJ4ev-Ei2os760vwp>S3Jzon|jVWV>uA_Hjx6{yE+hR}sdF%;5la=1? zv)A0|L0^r0GmJtz_9EBqEZ8<1&-K}Em#yK#O3zgFJ=0?=DE7l3GDBPU?aq8;8vU-# zu+!JrOFS5i`l{#jebx25I+H;+Bgg8@bxlum16CT1wFj*9Y~{tkv)Mp#pb@7APH0=5 zS$3&<-;Yhzu>xkxV1;8M>uRLMu4#o1yH=y4xFM6swhXoJJM1Wpt>@@FzNPm2?5!bY z9D1>x-E39Z&+{pRA9VJ^rB2*A{BRFfA!z*MOTFyF)XRPv%VX z#`^GBC%pjSQm^59&9g&(CL4t-jl;b!J->Z_)}4PNYYAWXp>(%0F=n6KO*Um>bLEtY zJ?^4R>}mDMy=Y3A*!y9Xi7n|cxfR%yiLI8btmXaEDr>TH-=n*#?8+^5EzM&KT)3*$ z4;(g**Jp!suJ5R!Yk0aAxnb1f|@OSz>gBgkA!O=YoQslq5T*HS}i=9a3AL~|`ID2?1w zmC!Kna?d%8TIB`npNg#o6*g*TQK&XwbnE!(?x52G|$uY49|B>Q;jTkkHK_kB1^!Q-eLC^3?nqy`a8DA z%k$|+fTpDpwxiTZcG&>^5y4$wydVj?QNSG*N3k7A5Xd=w|e%&(<}Ey#6&^1>L~*&U6s{b_NS4fczJY%+ZLj)h({$o7Bl zPLJyxtJcu8A4T+* zKztn_epGP#sI2pqnN|ukc>!er5PxvuApX6z?1ndTBoe;>5?{~o7Re9Ni#d!VpCXDQCXpslJa-Q?p$g<@f#U1LxV%*{*MZ{V!#F8s zel0a@L9UCG7f}4%PEq{RIgKNOB8$uT<$D%-5#jv}SbV)oBa1UjEWSRR#gEo9?^Gm< zKaT_li{C$C7XMm~yg#wy*1^=Boy4?^LsI z(1QqFQ|(9nz8Baoo0H0aso^0+Zwbba0mjz_w~)#)zB1EFfhI4c4BnUKvi!Vh!1!-~ z$B`w``0b$aV;SNixkTf~K;z=Qlod6VtA=lALQ6$tG=9(IX#6t(a%5D*aYQB3B#!4E zhbB~oSitdP#JOE0C30O$Pf=zX#|k*UE^?x~lJ*+%YpG!in$U~!GaNrZ0UZAXh#WZ- zd0YlC-?h+-c>MRlmoCWGW3O{pAN6q#H`aM1}Hx1kp?`P;zc$F&MgEzV5pgPh5aS77pE3pGHw zNG4BiH-pI^oC=e_HN|pxp$O$N-Z#d0@qb0V0OeAzqCy+DsdazLPrg6@S~ipW{{g;6 B1VaD- diff --git a/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db b/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db deleted file mode 100644 index 98e72bddf7291f7bf066d2eafa5658e633629534..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*!EVzq7{GD6NjG&8ViO=Vaj9UP;NUH3lPtZJoe{49Nu5X)j7?p|cB2o%p|7zU z2P7`M15;mQ*ll+~1GQ2^qxJtuU#&@w>+k0_s*)x7`QxkH6x(7Nx9#lDMVg@$;`4`# zo^5SZrVX$E7D)9)Pgt_5$<8cIQ&`NFr?BxC9N5-hx1W_wlcQOhrm!eu{f?>jfywu? zG)-YqvifVU#qRF$tIOz@d|6n{YdmnZchEYB#?M{nY|tM$hdnLalT)45UAL#xyxwtj z+SB!oNxyLHP5bQ}zUyaaAA8+okm-X7pH$pW z$w@Y<4zlyXxu}@;b?o=Q56o9h%l=kx{bx zYscbBUX^T8MfxvoY$?Y>A-+3~+3AejH0d|(9%Zzr^VHA7%vWjTg(_$VZI$HhrfT`V z9|x(Q1WjLT|G9s=zH~-=UYh7EZG|dqN0|zmo~KOzRJEHr^5XQ!?}mXG?fG#OCpzh> zAP=+(((aLp<2X}!7>2spj^gG~YPxm9R@P2iTBSN@sUY+sm3Wz_LY@0r9_c8E5>e}j z{r#nxFi?2}8giabqFMi~t;bvCnKm;iOh8uc4}BYQqbz&;o12?2CjT01`m=1hOuQn1 z00IagfB*srAbzI0#Y=jz4Y*DF~cu3 zs+{YJnT3X=GXe-8fB*srAbmhkH2e^E57{ST!}E(EmN0PI|Ctr00IagfB*srAbb_u-w>eOr2qf` diff --git a/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db-wal b/canhazdata/1868adac-4f4d-4bc7-888e-f555d296827b/tests.db-wal deleted file mode 100644 index c9af840752a7e0c7630c73697987c6b7dc869c34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41723 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 f8D`PjU5$`N!&k(MyxkREqwzv-_nR+rZ}= diff --git a/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db b/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db deleted file mode 100644 index 99d6aeefd7f3c2fe3f88708f98eca8a09de2eb21..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKfvt90%~7ectWyNF*Kw5jsTf6kQlIyEFT$FbMHjK~Kr-OIXBqWLrd3M53VL zF9?MxsrVN_6f{Vbv|xcKs42qB%-ClyK{@9vWqlXtJJNXOtnqJmKKqb7celUqzWt1N z#s%ZB9JSMzr)h2y!}#F+8*94N#XM~A^JIady0KUWqNozi+{?%dj3Ow zu6U~MPOEA`Z+IDdCK+ncJ@wac<(^Y6cE-sRly8JjqJZ&-)d>SYloMJNTM zNm@%PSdmg$*PNz7SZ7UD*Arngpk`Fa zI-^AtB{YyQU6l#==I0OR_R+nkM2iXE)g=q>WT0Nf@(|(=4khDw4XOX&S|p zC21Bg$(t%w_r@7cW`ETf44xW1H+W%?3|<+$J$PqO4mJk&JW?3Ym4NRbpUr-IV*9=J zw_e+I+pg1g?Y3*RU9;_y(tbfJtYC?#+00Ckh9ZzB(_nhONd(>ONuHCW8 z{ryiq+CQ<}F&r--009U<00Izz00bZa0SG_<0uXor1&HC;`t8TQs+PIf#c^`*PSpd5 zh+T#N1Rwwb2tWV=5P$##AOHafEV%$Nh_63--BbVi_j{hJRs$Bc3P6_SLlH}U%&>b9 zfB*y_009U<00Izz00bZafzt{Q_4O0|)x)P%UHt$5$6t#%?KChR0uX=z1Rwwb2tWV= z5P$##AOL|A1l0TgwtoE3GkOd$^;ZEFR>;wFfEKm~*f0bj009U<00Izz00bZa0SG|g zdb>N>wx9)ob8dZqr|0@=wS;lEuba^A=_YVJ-3Zs!P3$_l z$y{4Ek!$HDbxqwQ?%`q!F-E>lJ!h-uKRB+@vpn1EFX%Cl#BGu&jFYgY8Rsg$PmwgV z5Lre=SgR~MK`dDu-CspSg8&2|009U<00Izz00bZa0SG({0{z#G@%XLr*7#R4{+f($ zk@4^5_QXZ5nkWv=as26jQsO-cMjmucAA+S);g2z(5thubBkjpF{d5uUj zuKtcP*2Gj~tWsg>m_{OGaawRLnrt-Jdc???CsXpso+k_P$eJg^@yMJfd+~_OlbP6m z^MCoLzp?V$cK)TE|KjAgocwIgfaTl@@!KrV^PHixvOG`zB>gthJZJIDNPm!C8)=?1 zeP*QF#A_qXb2ZG2^cQje6KS3mycyZBC;uS-_*v&4U(PEJdj$aqKmY;|fIyc5{{oQx Bb1VP= diff --git a/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db-wal b/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db b/canhazdata/1a242741-f3aa-4e87-8228-dd62e1f1170c/tests.db deleted file mode 100644 index 582dafc95be4db210a667b74880f2866dcb44ea5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 F{tJIwT8sby diff --git a/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db-wal b/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db b/canhazdata/1b06ec65-c78f-45e1-b37a-e3829547f535/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb7Qg$VHX0SvgXs@!+FQ(*TG-m!2se_WtEO@NVDHd+ z{`&6Tfo5*+HgaT|TTRuDHqEBmYDV@+%eZU#&hGx5TUsYAqpsynxh?OgX&UuLcyvWK zRg1&>_TS$>klPzO)cL-qQ=f)9|2IvVpa;o*oLQgqwPwfvN&M>C|1jAXGb7hqS;zS8 zS+qCFE90=(0BEc^hS1h$OAUI;s6AovZXGW1W(eaVgrIMj|s(Dx;d0QANUSlQp9CODUsy zO3&)~6!FfgfF@&<-1Z+p%+Lm&O zZ7LVohH}Ezm5XggPWUwcp7)6Nr1y-s-r-_&7b3unv-xD^dCfYn*=My2iT2R=`1qp_ zj_+D}=oFG500JNY0w4eaAOHd&00JNY0w4eaOC`WG%T%`?T{1&o?cz8)xl^^&@X;9v zfB*=900@8p2!H?xfB*=900>+P0!(9`dfI3}|N6TF$EMYQm8}A>b$KY_Qp`Mp1OX5L z0T2KI5C8!X009sH0T8%M1ej)f>ea)?RnW8mU^3e>R`l*ZJAEbQGT}$8AOHd&00JNY z0w4eaAOHd&00JPe6asYr-&ETVJ)wGIx_T90WrdyX1GKUcpkojK0T2KI5C8!X009sH z0T2KI5V$u9Fxq}nZN2%|tMLp{zWs860{A0T2KI5C8!X009sH0T2KI5CDPy zF#-2gZ8CXdvN!peO}=E4TWs>HKKWLke5Ox6)F;acZ0v=xlx-U1l!I4g2u@UnU?~OV z<;|+Jk%`FbbnNWab6bJAbf22wTq7@)iA)yMIs4S+9zwKT5SR$?f9(y7MD6P_nvZMEaMXu2u zNJwnB1672?0XRT;)1+OrNpV!%q~$--%cSvm#_wk*RqWXQ{_PW=WAkiKj_To`lT^E$ zv3IX`+Pc=o7*u#XTR`SJZKla=iuGYoRazOYp3?fCuw$M7lHOM4D0;)7s^CiQtJ~=`u{v({RhnLbJ`aPc(#kC6Um0e* zOSO(N%Z%k;eaiOu9{+9bUEG3kqrc18SJR}oYtNEt$JOt}-g1}*q4fMrczKixzbTbS z13wUMl)8>9vpC8Xn?Lypvj5)fEj!YWBjqPTD&+~^NfHq!Nh;h{5T|~iRMX2@Z`q?~ zt;kJ8(sD!LhnXu1MfZ*7TIf0(#8yW-E$w#`%dX zyg?Q*eUPP&mx<8J1L`^Og!E-B@|Fsu45BcMgK=2|uB*b_5l%}=J+33-P^BV~D)r;c z&tj=)@&0A9)hDdcc-H7Ne(}Z^-uTEHWp4bJtM9r|WJ9PMMYgKCQDm*vd7-{|vA&!F zn^Se2)oQnD_i8J(%e8W_v}X!%^XLmOw~n9L$ImK9|MJf4-l4E9!<^PpHnH|1qeU@0uX=z1Rwwb2tWV=5P$##{vtrf|1Ev_ zp}V>rH}t6hQ!9K{E{ZTU0SpWQ2tWV=5P$##AOHafKmY;|C`W*f{~P+!%lo?fX&(I7 z!}CJdZq-YQ0s#m>00Izz00bZa0SG_<0uX?}1Ojyb34Q;O3Fbi4X$#biB6sSk7uuUb z*MBtht>-Mg?`P`!f9PIB-n4ZwJ_H~D0SG_<0uX=z1Rwwb2teTK3DEwZO63|(ytsO6 jc6>&*q3`)@bL?#yZ-gljfB*y_009U<00I!WiUNNC`iV-) diff --git a/canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db-wal b/canhazdata/1b487e49-bee3-4199-899a-2f58a45ee03d/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db b/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db deleted file mode 100644 index bf08faea983c3b3b486e8e944369b4292a869267..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 diff --git a/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db-wal b/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db b/canhazdata/1e0365a6-6064-4709-99b2-e81c60b7fa45/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbk7{KxQ*j)%)jT%inXv`kk#*lyzSZQx~GdzXB(nu_&Da6K;eGm^kiZ?Gl zgc4uE6VAW_NrME^Y6NObx06HLx*T1Noi~?*tC6z%gP`l#b}wk3c?~;g z_X00FYw53AejE(fw{&JLYpa$Qt$ufHpSIO0RVObqwrMebF#Iwcb^E0YJ@`;%^q7|U z`ES^If*$Gk6GoKtm9Y2!EPu21Khg0$3|&Q5l9+!s%=SjtCZa3}%Rk>x&1RJO(su*` zB9r&ld`&y7oCSXMr0o~|)7ojV)(yJF_DRbx*6Kl}-Kp2hep#=LW-T4(&j+2>`FvS5 z%W$LcSI>XW{OLp4Gl8sBD&=xT&%f(Fb6>fy-8}&+dNAr zn!)K60R#|0009ILKmY**5I_Kd6btC%KgY)@&ToHHJK|`{{!TubBY*$`2q1s}0tg_m GR^T5$K%hkc diff --git a/canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db-wal b/canhazdata/1fd538b5-5949-4ede-b8a5-47d1bc77050e/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db b/canhazdata/1fffb8b8-0271-4a02-93fd-8e51aa37b6d5/system.nodes.db deleted file mode 100644 index 5a880ad8a5faefafe1c48acba7974c3c23c2a11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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%0DG-WCyF!E)*xTqX>CjRdbK{iq=>Lp0`^@bH~{<3 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 S#%mB#=_3vQEqseR=l(yrccFX$ diff --git a/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db b/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db deleted file mode 100644 index d8b4ebda8b0e87852cb80e03ab18c10864604880..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&u$Vy9KiAUvAYnq8a0}D(3m~6jUfT~Yw?CR!&AueClX6(3TflXK8Ob%#hVu& zLWwWo31?t|q^ShbYQa&5rnQnE5Y)F*8h$joBTcVUdiZ~1fi?YN*wdIbhZz5d<;TY zp_Q2BpM9@9ubCU?eoHR2oDRgVbvizqIB!meXJcg#hMlfw+x?E;^BQ)? z?{~cPyk%|O@}xEBUfa@{x2&#Pej1Lh@6)#0h0640$~JvX9*n+>#@#{TL=QevDLtlT ze*PP_UZ6)h{sa-`dd2MhKhNLn`=99e9)zw!D{;&}9b|i{YZGCXnB|{ssAeqkYq3w;FPCcNTD@4wANfc1e6?3^P!cAPmQtx$Ea~-k-DmDA_qCfafcu@USj%5DVz0KG)mD1B6}7@_ zHv6jM|0U`PGCl$bAb|Nlxoz4G}eUP`owAEHQ^F%duj0R#|0009ILKmY** z5V#cqQE4%k9zMU7(KZhvi%ViQH{z=ZAb5?MbV zC!7)J6#)bgKmY**5I_I{1Q0*~fn*Bk<3D?Q$xJ=DS-Tu)N$%p4IRXeEfB*srAb>!U G1^xk;^`B}0 diff --git a/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db-wal b/canhazdata/21525803-7b78-4f8a-acfc-ab142eb40930/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db b/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db deleted file mode 100644 index 5a9186a8db4633264fc6173f735d782579f945b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5TZkn`8OKkZOZS}9bKkk&STWs%U2E;C?&_|3aut!#CQm9TL9nVXWHHGuyNe+& z8ucL$62ymq5XF@|GSWZ-|4Q)*L~*u^{>7|{N8-;;&#dI{(3d$KGN%b>5KQAu-0zXd4U|+vo_z*!lM(%l4IG6Hw_1;&YnIu`tYffr_c6=cb%;2!^7c;$~1?M z4=Zz`I_zE8Q@B0vIC)73J z@H4$W9CKi=|KmgWfaak5b+_#0=XJo&{|oK6eg6WKCwB{&J=+dq`@P-P-Urr}z1$91 z`^O*e6~!y0_&zC~?-vjBi@j|7J8F~Bi?<9eUaL37+|(swB~25a&{QXeN>(>Ct+JRi zUF))xy`k+R&W-OpS?W74b{DpLIev7L44qOfl7^>oM)On~kYhQOCec)wgf~W1DRe@u zN*iS0lq6Isj+2t=lnI)~RYhf02`bZE8(X7T=vJk5(sxRn)lx}OK_wJ4u>mEW<(#sF ziK>o`GQ7P`tAscu0qu!pCaH?k3Y40XDp4|;)k#yA4HvaaTI;kjzP0E3v;MNb<$usW z;xk|RAMroo-{ybXzuh|>A$_T zxv{>sy0W}+2ha3_C;P#V`@yw9G}*ZvDVS_Kcgwk( z&fReCx^vf@yXxE(=Po;U$+?G|yXf2n=gvEK&bhPBopJ88a|7p2oa++nOs3pledl`4 z9XWUC+<|lZ&Lx*!(hGNN>baZY|3AzQR)fjH^k{kBKjih-H`W%X=4O_*dfS_1Wo&bF z?eRwDnkLQCT0$Bfts&D;!Z}qyW_smR=Oy8l8?_CehDG^bm>u*^i#>N00QQulJ)r4x;ze<}j$5T;_Eusmv2j zQ^itP(aV_D6;rWPRg>sAoUl|Yo|uvvDIh~|Ss7|dR#TNHOhabhCgm&~=b2<$r8N~? zK}O=3LH1w!ri$l6aL)29PQocwSF$d-qDHBlrc9Sq3IT6|l*77KS~96ZU-6X5T*1Mr z(rSr}8lfburB2~}T*XxydZw(J+Ej`ryiB29aYIcEl}oi0ji`AocoL4fWJ(T)U9upD zgDx44!+w|S#UbgEnRxQa|H(i7i$U@Fu=wGycxhBTG%9}U7597BASpGOb{UncMoSZO zP17_7>JasziZz@zx=tz%X9t&gYewZI5?rbD&Szh%(tu2yQkOHdRjE(LPN~aT+^R&# zlvC<*rnf3B6aNaO4p&2)(vkDTb4p#Vm^P)OTbO_RTIV01eC8ec|HlW>w+7KG!|17D z^u1y9`Y3vC6g@hM?jJ=jc+nGH^q?30-S0e1gllzL#X7Tz;FWqj|1Xljf$Z!xf_;APgDSDeNnur^ukMZ$v^_Diow& zj~kh%;c})+V;Y`OE)&=*O*J(}YMRK5!C<5fT$16Esvz-u%@lq*DDbz+oy+p3F_ykRWaS28?S<Oy+)n!{cTI){2m0b`@efka$O7+n}7w@)gOK@Rzo-`ETPII(8(BKvP4z9=2@%K0$FoPU3#ikrFpXIl)Ch0 ztx9ub#VK{^@miH;$+A=G(kr$q&5$Lh)TQTaRhlM;oKlzGwN+_~EIOqwJ#ed%PZpd~ zmtMM6X-wvwQkR~*RcS=#oKmOzq{BN-o;iEY-9qjSPn|q{_W02?GV7GOj0mlD8j=~O z)MeCYRqEmV|H@TtD<_=)!-74FFO90LoHohOota%$-mOX-WZ;y#tj=4N)=A$fby>l; zDyc-upj+rDtdk@dTc8C##HAO!FviY;hT}bbweQBNp!*z zAr;N51XhGi18c)XY08acF|1|lxMtzD$jc^=Vda_V6lSen>aKK?)b`S*AI|JYpd@_g~# z`Qo{StBM6&H=Q^(1PLGkB!C2NSOR3nt6E&x9$J+SVf_EfyP2(=F#i9hyQ{67F#iAM?@3|&|E4ZapS7M(`25eCo`!4VgwOxL ggCc1TPbtEE{#fWXPDc-9{QriXq+!F6021i^7mhe&N&o-= diff --git a/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db-wal b/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db b/canhazdata/21e8985d-5b9c-4fdd-a672-1315de0b9b2f/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb+#3eZ;5hp56qM+h0 zIEqkG@h^ZVXpksrAp%iQQyi}_lWgJ>x;>o2*(LdoG?__c{l>qKz1E#~*S~MS`II=? zBieC08Rx&AWw=E&?fv&|Zm3Z;{dmC7`wNuy%?(YFS+cLsyBr2<^TRV({4)kt`A^ij z;>f-~?{XNdtz!O$%=SUq-wn#p2k2qhf139pkJpNw|3~?&YyYFNe>v}R z7_6;g{`NfETXIx=$hKnnk6+P>;#X39MvCwC;uF0XGWY+CO{|00jpNtqRgs5b#q)$l zWtG!7;{nYY!DwCaG!{{mi>lI0b&c2`U*E38_2bKhy1cB<{w8J@i6<;bYZlQmYFZk% zLdZyQK!Y|&7>lbsZQ6yA{vt*fDQ^OiwP{6JScf!@Ge+|!X(?~xgtIc25$i>fuIWU- zD^ggBGzx@_l*{bul+i3}8k)7dsvD8!T*xchg6#ezq>B_qEUN3Yq%4TIjFhA_PZH_W z#7!&8hP8a*KFxj~uWOF;kn^~6#d+45IiZs|FFLQPe+;3mwt(%1VG!i@SPhvyQbTAv zYDjHc4a~OGkl3agxNXQG3~XKf7TZJ(kv#sc`05$(F_9yzwW8?dyy0Ay7@ z6mcnzJd%U}1Rwwb2tWV=5P$##AOL~OBtSIVRbM@PQg(ejvQ2|nN8iO>0s=Yyg3J%`|>~k-#th6VrnBR2tWV=5P$##AOHafKmY;| zfWUGDWc>-xd%}Chd)`aEm%X>Vx4p{S@|LqRSXBzR?&)0+w=1mUj=H}(-PG=;RyQ@f zsnJdKZc0w4MDtx$dd`&3f3QtwWa-3E&w^Y=BTkvep$HpJYgy5U#!<}Q|00Izz00bZa0SG_<0ucCr3yfdWrqeg4JJVmt^eZyGO{Tx;)9>`@ z=lb*`eR@8*`7X=jlvhzeQ@9CwUfxtq4Wsk3=ST8Sl_o!a%lRlM+-8cSKfBI{q zxMLPyn8nXlaoZ}+=L}fQRfyYFdG2$DE~*!OjgWB{sn1!wFp@?_cSY)PrZ0*#yF;8V tQm^}Ni>hHC61$7k=M}SXpZ-Ao@$;@fzM8K*>=gtc009U<00Kh_`~%e0bqfFh diff --git a/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db-wal b/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db b/canhazdata/2232dd7b-3025-4d67-9663-de4efabe3f5d/tests.db deleted file mode 100644 index cc6ac3111c20251ee8c09f099ced6996caff356f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*Z)?*)90%~bCh2HF+)$ArNYQo72e+m9pJ#QC#kZhI?*c*RMqAvTxfkMtyp28c zf#4J0gQNI9=3SeXO{Qd9vjqA*`1O)=xoDxN5$mr)GtI|rodrIs7h8?T?JL*_jlab{itI|px^Vejy4`jU0 zLsq4gn&sbmO*S|8U!8cr=uT-luW-jkx@+%xlNY*nG#+N!UdoAnaL7eR*Ha!RoxaZF zly{obcJ9QSwcFTxHxx%7(?K*A{H<(0x^^jJx|B0{Ia^BKOAZgOZK!L5U3>DRp?``F zL}rY|Xgnefxn52E{`wll$&QG*#%d%{XbGejlS}t?A=d;lBY{rEnk|-8-;&PI0g~E)2#2+wQ z_Qf10uvsX)gt>|1xpo|yiK&`JrYX1+2<8jnGbczK7Pywr242tVg<%wMQ;=4lY;P~k z1Rd2!pi7G!iE{t9+mGAN+dJ+0Y&y2&&H_}MpVO(nm@?EK`l`_8{JYtFb)Od(7hh!j zyHvMnSTh75009U<00Izz00bZa0SG_<0!tF0#L(4MiIxnlQSDU;I=xr5q{Pq-1Rwwb z2tWV=5P$##AOHafKmY;@0ZOR+|9?UrExxI4f>wL^p}NGeW(Yt40uX=z1Rwwb2tWV= z5P(3*0+e*Adi3yV$?GZ7JuURaOp%_@1_BU(00bZa0SG_<0uX=z1Rwx`%L4NLzph?C z^h|w88}k*Rs;bEKmY;|fB*y_009U<00IzL4FP%oUsJDMK9^DP z2DV>hubN7zW0|X!d0SG_<0uX=z1Rwwb2tWV= oR|MqspC%r=xI(fbGX}1> zQ1KTWMJTEG7eEv=NR+e?fhedcj$dIWyNPuuo7)u5`i}2NFYh^e`)1x}#+G*0_WSPJ z&xmJSGG^^q&kxU|ZWF`!;Qd=0TI*)c6#kw~ppdsV42{fDvOX83T5I#^X)XRa1MB>U zdaZa$_UEEhYpsj%h*&TD+DXT(Pa2 zdprBii|=jk?iu#xwycJ>y&;QwxNgg0Lk`^|&!q9ZxxI6`r*q`V8qY1US)Cfww#v2m z;Ie6JkNrn>Kiu7`HrKXP=evff`n2@Z&{6j5f_`f9S@zp-748?y_GzG$pZ?h?C+6h&zou`;3sk1EQdIHFT7 zV;YMr392|qL>MlLbj>7I6KTq7ramQT$aqOvm8j8G6{lqu)lyE2s7mF+NQ9V8q&SVH zMJ-Ay;zC7=B1t(4uM-)sKsHKyB` zPGj1QX*H(VnB>G%^Y8ml`p@}S{k9T9+!YWY*71B2`^0iiEce)2!O-sM^6>DJj}Fgl z_qgK#1V8`;KmY_l00ck)1V8`;KmY_l-~l8+49C_#KlYVa=4v;`$00JNY0w4eaAOHd&00JNY0wC~k z5+H`_>sK%Ts6^lSKf4EDHMtTy41+LOP3Pzp1V8`;KmY_l00ck)1V8`;KmY_DVgjoE zgy%ixJ>^~YUhpPf=yC5Q?=}5K0JLrsaDBB~5~OZltHkYT#avIT*mbpvTt}ajDIELugUlh8UJpMzcmeVAVtQdLfAW-Fl1?4Q0lqFo!B95js;VDnTkj1sAM{ZSAd>R&l z#%UT-CYh=d9M=WSk~rjrEV7IRBWIaP$s>E2D##;inF_}vbD8SJqosCJ{5StofBG9M zzia1T+W9X|e#gl#W(9P!7veWno|jpn3#&Z;L;6jmWmfURNPm-F6KR>1zA(~X#A_lg rb2coD^e1tfNXwit3nTr3`r{W}f4rM#9!3QMAOHd&00JP;CV_te^G$KN diff --git a/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db-wal b/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db b/canhazdata/226624c2-b82e-4232-98d3-3a750e305a11/tests.db deleted file mode 100644 index f9d9132e9c10c02081b0005fce1c7702768ff05c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 Y_ac;6ddc;oX;eP_qwh?=hK=O@e>GzS_y7O^ diff --git a/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db b/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db deleted file mode 100644 index 836aaa3c20f76fc9b243adb681976f6acc255062..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*&u-H&9KdnANjG&8ViO=Vaj9Uf;NUH7{1>)E}sZDKSFQx#Uqn7?JRy=UU> zEKF5cDOvutmtuea_{F>DzhzKZ&Kulub#Uk&24lyzJ`K-Cdq;21l20E7{b-oPuTSIT zT-Yb3s@wJ;)@i+G$9fRgwCoi~0qZD${)r>D0zw5|T3JAPEL zKSn3Xs5(r}hv%YVUdhVd|2^AG(EZJvq)GnS+P`Pw`z%aVSSi{2f0F;!EZa*{XHjG+ zS^l+SaV4)xHmD-~m)5tG<4YlaSe99IMz)U5+S!USI!Kcw@*>Yu{eBQD&x>Le`K>^; z!dQ1&e&~dO7Q271gV$fI(Lvh_ov!XU%5mJ5@}e+RIt*MDYA1EtiSERKFGdGJx83ST zsi!)=_Lb*)Z573xmP(wo>-lk~oA|D27DaBDxNci@UAL<|$8nTS(opHt*ILJ+pSBWF z>xpLbRr9R5G#5I$yFf$cnY4z?a|bkJp4-XH|IW_Cox2a2E7wLqR_E)y+{!-km!aI; z+bzt0NoM* diff --git a/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db-wal b/canhazdata/24908b70-0031-4a9f-b963-9b0f02eb7d65/tests.db-wal deleted file mode 100644 index d3fac7165978d0853a1bca31b7b00b7512eb95ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 102473 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 Hv0nfGSwwQY diff --git a/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db b/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/system.nodes.db deleted file mode 100644 index 1b79651483c5e2aee8e95822e93a041540147e70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 HB=`RVN!$cf diff --git a/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db b/canhazdata/25094428-5cb7-45c3-98a7-d83910d8bb36/tests.db deleted file mode 100644 index ca38a872920e7acdf4b09c4c487db5c110bdaac4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db b/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/system.nodes.db deleted file mode 100644 index 5a880ad8a5faefafe1c48acba7974c3c23c2a11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db b/canhazdata/25c7b6ad-8971-4995-8d92-9ee89145d895/tests.db deleted file mode 100644 index 3585aa63f22bff90418b446f33034e7c673340a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db b/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db deleted file mode 100644 index 68770d7fe19c105eecf91df5c0a73cb23e1c20ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%a77P90%~3c3J}XjIVmccL5RY^@t)fWOODWtIWz|_hdHy2?tjBSJZo@AY(WQS!Gt1F@IfV zdsfDiNysX*vSj%e?~_WUyFOU|OxH8Z`BV>V^y;m;dvKfSJA>V!ac^gPcR<+Yb`)0_ z>qR1|bXX*MQNctIWzW=5J22-IukBEX$JRUwlZq z-EXw}hIT({-B(&S%iRAtHZ=|&>EqAp?Y5h^K`V&46<8j(6Wiv(5)lu>!19G~MBMTT zQ^$y5abr6SHpYhwb$IEl|DY@#so}-KZdoC>!qDNi=L#-dFXnO3Znmr_h+?NbbENN7 zPe-!aP0R5uhkJ=@aa%MSTzH}2aWnCq(2Ij4nY~TFsg{lu1-@@Zk;fg&lOr|Vga?V| z@K%`Ef#Woq!g6MA(=STXk!;_K+qT!{jfS6aI}#T6ZLh&yFKNe#-?l|Gdz*e1JETxJ zSGZDGE8J550->ysfN3`Y`OnSrOTxor8}h+N*t+BU45ym zLfN!sOk3trYuqQl*TciZmojFT{5B0ULjVF0fB*y_009U<00Izz00bbgAOT7YrY=7g zW$0SIC&%gNO4WiA!!Qtl00bZa0SG_<0uX=z1Rwwb2uuYip@zEe=#mVU^9caDEH_0= zbA diff --git a/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db-wal b/canhazdata/28125925-7f62-4b10-b7cb-e1f95c7eaff9/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db b/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db deleted file mode 100644 index fc5f6d252ae73e9f526e5cfa32c5710eee70a011..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI5zi;G36vsXOx$EVp#E*g#TEy+@v|)nB9{;Kc2=T*$o)XV`EFvz+DTz2yaS{a; zf5B0Nl8S!;L_vc@NedB(f|}y^6=sr6tV7vkQ#k7!-zU9&XH|ALNn{6jrg zJf(XxRi-uRV*Hkh_F<*(&QzJ!q+{{-Up9urVzN8=iA-9H`G4)$SznD-ll|+qb!&Hf z&w25^t({%N-q@<-(6-krQ4iPbN~~8y_poN%)V#H|eR@sjuqJP6Zk8MJRG+prU5)my znYOO6_t4IVJG*jYbyGFIW0njLx(5Ov00JNY z0w4eaAOHd&00JNY0v9Df)aNJq)5E8gF8}`j=8CUYHaQuk1d&qhLNjQ z9YkDCb#Ee}@(l-^ioB|+N{l?sWEqJ%FGp&T<@`*^BYTl7$Rlf!496pLk?h4IvPfoP z|IPp8pZ>-w?%BnccJYf-+;xh}nE~Bwh4@XD=S61d+$_)cNWby4$Sj`g=^xT-JS{TQ z=X&~+c#Wrp*4^f0!=C&>+{V))XUx1ltr*BZe%blQyLslJS0DfaAOHd&00M0i_!n`Q BYr6md diff --git a/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db-wal b/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db b/canhazdata/296b5acb-943b-4d04-b9df-8bec8ea3bf9a/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db b/canhazdata/2a80cae3-a9c8-4222-ac72-5f068e442e7d/tests.db deleted file mode 100644 index e68d88a4548fdcc17bfde09526507868c5af4d72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db b/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db deleted file mode 100644 index c150ee35b6198cf5eac5c97163e1c1fc1ff73c73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKf^!90%~7ecEfD5|4rtGU99@hY347v#*MP5RVn~lZaM!(tl>_f@g-ru+1d`bfA z5$mL!wzHS#X>JqCdjGv!o2E6zK56jt{sOYTwP_hLPuGoE)lFw*wtG5@f6l;W{X=uC z1iBu~s%|vTkh6Qt%k0rB`A z;WgVeBMu(e`(SThZLM$X$@eT<&*_-+f5X)~=wV%dn$<4%*NPqg$LlxO{zrBFa#nTI zSy{#P`?J;F)~%^smK9rn{}rn&eCNoZbY6%|ojq;V~|$TQ0|*NB7ujh$(AVdt16{TMmka+ zNm_`ip|Q*pQCCS83o$p+UE;KncofBqDMmBK7!{IpT4Y5|n<%aFB2OY7@p+NfY+|>O zA`!Ec%ZjFToKjIVQ<^s^r$W`)v`A%?D1Ak{_v+RNA#J22jYO8Hg2oNk+Y~EBC5stN zvqI@D%2>kdd66c6_BX5`cqn*0xE4GcOad0#Q_*nRK_*}T!%f;56OMp11`;)k5J@2gN zpZ3lbw1dG%M<0K9bl=j!qzDNC2tWV=5P$##AOHafKmY;|fWUXuf**q^>qGcK~J|2v`CFIr)Oj5@yDf z5P$##AOHafKmY;|fB*y_0D;Rbpx^&@&EtojGRq{k`6|HD3ORia(9*U56GH$35P$## zAOHafKmY;|fB*z8rvTB9pEQqN{z2E}fBwIHj_l>s#;PCy0SG_<0uX=z1Rwwb2tWV= z%MsA|CkBHj2G0zhA7q1<2X77D9!v+@gXL@tX4L{=cy<>gY!mB*z4o_3+x6S7*LK~u z>$F|F?UJ)Du|}auJ?HA@Ke&$XS%KX*&w^M+A>KkchnBHvm=gjJfB*y_009U<00Izz z00bcLzZU4fW{t;hj(5kuknvY!e20vGv&Y}r=s^YRKs*z5#TI*l1l&U7vnRc1TsLn(jQ&q`Y6)KB#O5#zEr=rSPqtgp# zI%Too6{9&%6FTK_qj(a>ag~k&scI2R8Brw@J*pOpR*ETF6h*Al_X?g1KJs(jPja0D znKiu7vFeD*X;#y$Qc*00kgS=G7P@OOau>;hJaQJva6GaX$zD7ni)1Da-}qPl>93vg zu3LWLmOp#t9k0BYBVaXWAz_>4d66S@UY6%Ii}c$_iyX!CB2A7+uZ^_Gkv=!l-y~=w rEpj%@jr14s+enL?F>@pRf&Akaoqv2a&pd1u1Rwwb2tWV=T?+gI7ENm! diff --git a/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db-wal b/canhazdata/300211e1-7111-4b33-9798-f06a89850303/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db b/canhazdata/300211e1-7111-4b33-9798-f06a89850303/tests.db deleted file mode 100644 index a3deb89a31befbe6dcab983caee83e19475ed3ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db-wal b/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db b/canhazdata/3137d97b-49ee-45b2-9ed0-0bd51a839e1e/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbcJgf@9nK?#Cg-PL3<$u7H# zAuk&BArBJ7hky{pl|1DkN+cx+`PKwf zeb1?$K{kYPa<_olvu*e7*)#oX6gKTYYR(l8%7xtmX3w^R*!}^ub{fhTb_Z9(ZJ%!!#j??F^zUT1Lo{8P_?(!~uRZVA5orqu9>N{qS3sdLrJ$GK;b>eO~ z__{M9&Up8DU-te(yjO|$3h`bf-k*v09Pxfjyr+ow3*tRN zydM$oQ5eM^{>|NHEaI7a#F*6GGDf(Y#w6~BF|oUD40qRzVeYCik-GwhB+cdFiDL-5~_01`j~NB{{S0VIF~kN^@u0!RP}Ac0l_q(`>RlS2}w{ztYp zH`doySC*F+7v|??XQrq8$#~?sutKmeD+A=9JQUGN3tvD2NB{{S0VIF~kN^@u0!RP} zAOR%s{v<$p?zZ{p;VKk&=)p|CM@Cm!2pI3f$5Y78hiBfOAhFg+00|%gB!C2v01`j~ zNB{{S0VIF~4ln_@|L>TuAKEl^Bz^Nyfa|uAH@*kxy43&=j0BJX5-YW4y@a^ zF1hTIUa)Oa&)p2)|1j`2M$_|ScWsfZOq{JFn+yKz%<5ckX}P~XWgZgQ`hG)Z;3RggYaE7Iq-9yFq!3wCUq4<7GaT6C2~o%EECAQ%k!vCf=SJk;3?$bO*0kIghwSU zvs}(eNARx-Y8Kgkn%k6R8==x)j5rM1zJ_qP!-j%eOhXRiI)&u2rOARUgJG9U$w8;JjbP9v!*S5>lD#+}T{06-KKXz7r++ypUUP~c zI>n2_;-O*jJGZ#s-G`*qWXfh#&Qi(BJb`4)JU8bIgUr*hs%XtKAvkAQ8ntIsCd9W& zUCzF?+|0)=l8II7a)!1k9q*Cx6-ph>;#Q?4GO|it&h%EL4dPj)E>}aV(iU;8QkN^H zRcRCRkMDQ>@yTc2CjLJ@2){K5Uv|PLo$z~3_}Vahb{IZ74DTO?&%5ChZup=Z{=@6s zO$2KY=9OxAO1X?Bgz}`MO39MOGG%!qO9hvIu$tG9&|R~fLV@_KOGrG=N=O`E>V#Ew zT0@WzR$^AyIu_hS@f`XMNCmGd#UNbpq=uB+qLx*#9G5YRh0JMILjZ>i?Gkp#OUjjG zk<1buX%;M%8PrP(crDLhuSiSi5g_!JaV=8F=w4U43KnG?*Nxx_D3p-xU1X)HS3{dr z$y~E2uObmF)Q|u^j-lcZx1e4Suc(r;qK%HAb7QgQu-ClEswRs-Aubc>^)we$G1GBD z+><&^GEs|QF5|LdCCG>-Pobw$4P=^!?n*%4q?u4W)nzc7n$D<6HH}3E{Zmw%BZ{1+ zO!Hc^rqUu0X6h!BnNFaMS$Q9-w;DyC_k z#jGrqZW7LdsV-3(`+sG|2$3icYX9$lu1o*_Q?Gb+R6H^&{xU8e92ZYdimy(J$Nl2( zQ^mtm#UG}NZ%!9a&J?fDUeic{Y}kH-Wf@ZyoUlof!*#`~6t10EQ&sY;%$p=rm2T}f zX34r$Qe^}ena~vUAil`7qOuV&Wr@gj+(Zpr@vTZTWX&pdiBzph(`3~ub%|!JN>gOT zDs_o?tx7&wzCx)(RBTn6kR_|sC33bZjme@_>JnXBl}2R2Ds_p#tx6u5w@O{2bgPm} z=B!eeNZzV6B(qkjOSErQa>$HT>e3^$DhqPEQp$cbqz^Y88a|FPNPrMcp}bH%gs*R&RJ zXo5I41PLGkB!C2NSOR3*&d$4x=v!y!i{!|aN^d{vZ&g|#TURJ`m>IMx&67>5)MfV2 zsx*h||5x74Y~_UO|8Kgx+R6#n|KD`Cx0MsF|G(+!vo=on{12=LUGX$r8>i#={10U@ bgU3}Ol`Gz~aypRf|2OO)4I7RGkU;N$`(k1? diff --git a/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db-wal b/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db b/canhazdata/31dde352-32c9-4272-bcb1-8324d0325d8c/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb5NL^wAO?uUlRStA9>tp%A3}K% zoM}tA_$N)=w8{P^`8sX#b++Gc+G(@fZohx~5*Nb#Fm5;fz@xpCTpbVO(J!rwaN69HvW_Y=la|Exw4SrauTU4t<7Wo^;GTM6mKSxy3*R5 z)xY>EwA(w&XUjk1a%nYJdf>)zbz^n&>RD0$aCUOpc=6%*swl1BCCwf{kiuaih!X>HD4|D*bwlWH$gpQFq+XZ0`k!p=^a^%}bb zff%n|*T-wxv(4?7>-)P0ot3TbUU#Ll(RsPD+uvGW8LS;_ce?$p?Ll`V6nQPZTs%D9 z-#r{Jt9cpjJr8OA7xG6RtzrVrxW2x&ww>m`)q2#bSn<^?H#TnGd}8zF+N>q6udhF+ z_+zW+$Ff;Zi|rF2K!5-N0t5&UAV7csf&VHHL!-!t9~V>9YqQ-e5l2U={%d&#BS3%v z0RjXF5FkK+009C7l0XbGeg8j%hjXA2XS@4h4g@>|0t5&UAV7cs0RjXF5Fk*FKn%^8 ze|q@1oZ+V$HI9E0Gu3@06Cgl<009C72oNAZfB*pk{}xEc|7-d5Lr-$*jE}#^oAUtu z`(eumn|B0ogDi&Vlnp<|XRC)T1!F!H3)c diff --git a/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db-wal b/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/system.nodes.db-wal deleted file mode 100644 index ca41d2538faf755867493783f8681bb445609d31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90998 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 YdlAYjz2th)G%8Q}pKs5;l0C`&|H+I5ZvX%Q diff --git a/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db b/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db deleted file mode 100644 index 377dbe27fcb2f6cf1df1cadf6f1290edf74f07c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*&uSAv9Ki9J?4~6Ju|-9Sm!M72!?wHGKk43L&*CfSZe{{OYfBnzZ{|Tfc^T$`YDYnJ5-S)FT7wLvlh|eD` zdbYQ%GVOT%w?M8gdcu-bO|)lWy29FQc?!$FU}9T;-F{X!O^jw?y24r+>vv4G4@|tD zh3N`wC9A*oTI}u~zq(9*$(M!IyvB*Ey@T)|89#TOvq6949QKrOPfnGtyKYbA-Fn+q zc~8|hCgb974^zr*jaFpH$pW z*@+%i2l{+)E-L1I9sB)nyJmqNuID06>bLv;9TVSXVYP$X2rY zYscbBUX^T8Mfxu-x0K_d5Z@ig>~uzMp7le!M;Yy@(O%e$bdsvf zOS-Mhi~J<_(y-a}bQ%Yp-1q%X7MWq4IMit#Dlb=2=$ZFUyv*0W$<_^YH&IEHWTMs< z`}<2XAyIh*8giabqFMi~t;bvCnKm;iOh8uc4}II@Mp^dwH#aw5O#HR2>Cdw1GVzK4 z0tg_000IagfB*srAb`L<5s;$l+M^OR6HaBdM2q1s}0tg_000IagfB*u;2uRV8_R_mhkH2dZE57{ST!}E(EmN0PJBbiL009ILKmY**5I_I{ z1Q1vkfywhn-t6~z21yxKyfN1ikcOP+2{a8k*W+x;P&RWw009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ I1pb4-Z_s1gfB*mh diff --git a/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db-wal b/canhazdata/324e69da-6f7a-406b-932f-e951cb000ca4/tests.db-wal deleted file mode 100644 index 31d40da7e568ffbb8b0e489443b80f9f65cbcfea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71499 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 q%-OIo(kN=*WxQ^(lk(XZfwQv&OL}1eU06D zA$a3EIEwEv&*?ulnUZbITIlz{uO}%dzmxMx8%Db1{QU7%u837JDwBG=dXwr@3i0{F zaaY&66h;-V{}+gp$|T`8o%ULZew2J#KrEmyWJSPFpY!WVc*#4Cc@m?PdZi8>?Uzq zZJ9~jO{%3~JAYu0+O6%pJM0{M?6#v`CwZ%yA6>guak!N?csbh2+)4NMuWe`=?QM7P zq+ouE_B#DyuXEHp5(U+-p}+qvQyrj(Dt?b6&*QaVpa0?b^|^md#kX;&Dz~zT<1dXz zd#Y+3d6oqme|cA&$+HF9sXYB>mRrifsSw`{L!ET`W*i+l`i#=wNCU@j+U>ek4Mmc<#|zHc|kq2BHwFRw$ljWD2-j; zZj1hg>n9CAvOOzs>{R#Aw89{6T0s!EUC;J?$G26pG)_G)@O{e(LX|QOLn{nb-l&~6 zLO+NTl~R;jVsmq5CL~%Mftt+nNmR$bQh8i?UfHTF&aSg3cNUPwnf0y~~8a*R`00IagfB*srAbi_?Rcr<-yehYHGmmlUgaC$}n0R#|0 z009ILKmY**5I`Vj0V!%y-+K5o=YF!JmznOE$&!gS2q1s}0tg_000IagfB*srAaGeg z{r+$2#}7TzZ_2{t0R@+v+}pC8JO}9BdZZ%+5I_I{1Q0*~0R#|0009J+LqPrhZ|Fxa zpR1Vj?f>ddgiMc2U5*38C=oya0R#|0009ILKmY**5SXFBaQ=}un}^InGDFl`r&4o< zWSBIjCbP^yQ(58l5qRarItB;ob$1j_oxR8z<-ip^P2T3VZ}o~7w8D6Hxqs%^!g zIG6>crL}de-=JzAqJd0(nuQl8LkLy>*{zoakngyk$wRNoD zo>hC3vWjK4HLJh>s+Q-!vHWwE|Dfle>iIHjzo#~{4&N|N_SLJR4AVr0884*_cqp=r zr&(5TzlqW!jHL8}S~Jx#;-G(Rrz)QZ5hqnp#g!K( zbCv$?Z)%S7kn^~6#d+45IKoMtmz>wshat4}CSbclc*3*$l)TLDsg&A|N{MZ&6xxVparcy-f-*q2zpLU;f*SlOS-9iMIak@U4dDgSediH5=A<-oaK05m3 zqocdFB}@uQ5C8!X009sH0T2KI5C8!X009sHfpaCmG|N;!KlUjMeYGdY+3_z`=UP4{ z0|5{K0T2KI5C8!X009sH0T2LzOF@8X%vDz#_2{dAzvtL=Heh9E0ob}+6mcomJc;K#5$X-m^s0su?00ck)1V8`;KmY_l00ck)1Xe?U z{3iy3CkD?9UKk{UR|ann-WgPb?ZIjm2D1_Y*F8H6;nb1NSosJ`Dadm-Et6WtBCC>7&+~=M>Oyi+HSAUGA0hAH0AU@;7!qxjceHWg;$O2B9$VIlZ4B( zA-`cSBM)Qp872?pCTJ2`9Ru`w_k=exsd1Q2PI3DR;+>1w@&Zf9;{?C8<8zaAM z=3komFIIlb%I|ZPUWk8VZtL>gWec6>^8CEc`mIuzt$3~yW4%_X%a%S@Nn_4`lsfDU o^OPn>%x;ys>@jnd{(}GbdHauFh#eJ0fB*=900@8p2rNY4Ujh$zxBvhE diff --git a/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db-wal b/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db b/canhazdata/35eef729-9f26-46c2-aee1-488b7de619c7/tests.db deleted file mode 100644 index d1f8e0bdd68cc9b3c59de180ae6fd994f98f41e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*OK#IZ7zgkfKY|j0C<25K5~`qyU@>j{ws+;RL|g$po{1FkXw_E0j@|DJi4d~GHP7AJceom?#^XDVy}7eBve$-+Ij=U9UUr}*n15@Q z?Jm_Osw@r5zx|l)@jd>_-aEaHacjKG*caQT-F4*1d@C^f;%FtM4}{zc3K0h?5@8wz zLWVLGYM>)2qa=>gh%FucWY~Xak5;_M_jRm1;SHn|p(;F)#yS_7)OnZ|VUbGBsF@7Y zM2DG>S_dNZvP`5|mJ5FnrFj@>-47Hs3+UM(@iUPP{8)r>;fq{rkGhn~MCsVeiiB}~ zBny9m48lSLD#=CIms;de7zsbgeb1LgN^|&A77Og&XhjE!%(BoIvM^aFlSMz! zqKN3RQ2jxYD%M_Sz21{vm0LXKyUT49*#O&%6;P(6r zFn120x$}Q?yfuHV&OVxD9~>OKr}%TJyMtIh1Rwwb2tWV=5P$##AOHafKmY9YQG3etu&L`)pj(Z2MK>z{}fB*y_009U<00Izz00ba#5&_P*Wqx{nm7?Bn z|Frz3{3zlipqLf{5P$##AOHafKmY;|fB*y_&_Dssx|X^0@CHTw-~Y>8SJOa5bO{0w zfB*y_009U<00Izz00bb=Z~;31@0i;U-7@{;mbnz5w!-JPN2sj_STF=2009U<00Izz z00bZa0SG|gd> zQ1KTWMJTEG7eEv=NR+e?fhedcj$dIWyNPuuo7)u5`i}2NFYh^e`)1x}#+G*0_WSPJ z&xmJSGG^^q&kxU|ZWF`!;Qd=0TI*)c6#kw~ppdsV42{fDvOX83T5I#^X)XRa1MB>U zdaZa$_UEEhYpsj%h*&TD+DXT(Pa2 zdprBii|=jk?iu#xwycJ>y&;QwxNgg0Lk`^|&!q9ZxxI6`r*q`V8qY1US)Cfww#v2m z;Ie6JkNrn>Kiu7`HrKXP=evff`n2@Z&{6j5f_`f9S@zp-748?y_GzG$pZ?h?C+6h&zou`;3sk1EQdIHFT7 zV;YMr392|qL>MlLbj>7I6KTq7ramQT$aqOvm8j8G6{lqu)lyE2s7mF+NQ9V8q&SVH zMJ-Ay;zC7=B1t(4uM-)sKsHKyB` zPGj1QX*H(VnB>G%^Y8ml`p@}S{k9T9+!YWY*71B2`^0iiEce)2!O-sM^6>DJj}Fgl z_qgK#1V8`;KmY_l00ck)1V8`;KmY_l-~l8+49C_#KlYVa=4v;`$00JNY0w4eaAOHd&00JNY0wC~k z5+H`_>sK%Ts6^lSKf4EDHMtTy41+LOP3Pzp1V8`;KmY_l00ck)1V8`;KmY_DVgjoE zgy%ixJ>^~YUhpPf=yC5Q?=}5K0JLrsaDBB~5~OZltHkYT#avIT*mbpvTt}ajDIELugUlh8UJpMzcmeVAVtQdLfAW-Fl1?4Q0lqFo!B95js;VDnTkj1sAM{ZSAd>R&l z#%UT-CYh=d9M=WSk~rjrEV7IRBWIaP$s>E2D##;inF_}vbD8SJqosCJ{5StofBG9M zzia1T+W9X|e#gl#W(9P!7veWno|jpn3#&Z;L;6jmWmfURNPm-F6KR>1zA(~X#A_lg rb2coD^e1tfNXwit3nTr3`r{W}f4rM#9!3QMAOHd&00JP;CV_te^G$KN diff --git a/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db-wal b/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db b/canhazdata/3629bfac-a3bc-422d-886f-42ebcfaa076e/tests.db deleted file mode 100644 index 9652ebf0f1dc1f4f4a9f8c5c68492021173c404f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS4~snsj${*WxQ^{zB2Y(G|Bl_aI*MHFoEP z;EnI#D89!$r~lYwO13p?q2B|)o-~}Cliw$880nJp^T$`YB38wyOzQF5n^dP#h|eF6 zJG$1TFsgX{zd#rtcZ4P@s%VcxRk@Y%;mNK48+NSouj z$Dyj+%7W!zel6D5_g`o&&y)H@OdHLjt*|7}wppoc1ck0a0HwP2tBVgCBuzoz2bI8>EeS;YKH<7`h= zts~E}VELE##F;!>u${`&e`bA4IXD&KyJ4u4PTvfJuA|Q={f*toYqr9qWd*I&w%let zv4VOKTWQmeoy1FbT{{x1f1lsZPmKPC( z{#G@k#OMYA1Q0*~0R#|0009ILKmY**rUFt(_5c4uJesbV--4X)<%jtt&d3NLfB*sr zAbYB?1T_fB*srAbIv&$SLGeo_0SG7!6 zKx#6}3^X;FWjY)6{70#$o|{fmaqE4*`-V~uXYsjvNA!RI0tg_000IagfB*srAbB+9=IOdIsk&KMnQWeg#h){tbV^7?T>yYqlL}+N(c5f*ZF#Sc-?hw z?(ZIWFWubP-M8GWom%x>ce9pFf5WZiX5IIXmrU9v-{09ge@X9nNzpF3U2UmzW4g|G zogZGaU9-f&Lwg_X?W?WzZ9Vv&W$Q5=bNp|(dILSG>o1eK$nCXa`~UI$&AI<^UB8}G z-7KuE;{5%|Y;Wt<)J2vRn}7E;t1N#feo(pcd<{WX*y|FW{Zk(Jh%;{xg^bc{{NIZ&S#uTF&V~h&P zIW4jxr%jYrd66d(kETXivx(D2%Js-ep2UD5tZYtrdg$;SPCIoGoHFme-XQl zROcyAV;!lkVnqdO5}MapMMV@BXQTp6?zSA1%ZdgI^NbqEEEqFc{1uV#emxI^MKSL<1E#QZYMG^D6rV)O}G`Sy` zCi8vMq`qgG#CLVWBHuBuxNn;#_K9fbc}i?y3efH?B!k@ zC&!;uUFh^N7z7{y0SG_<0uX=z1Rwwb2teRU2oQ^e=5C{oe(T@u1iro+u(YcHWL0j8 zxDs0)lY{^SAOHafKmY;|fB*y_0D-F{KrBBrUp;(USI08%|2sA@Hv=r8kdyDpEMa5} z2>}Q|00Izz00bZa0SG_<0uZ>|0{ZiR*F1jc88b~{o38>at&r2_04;3|Ffarl009U< z00Izz00bZa0SG|gataXr_(}8V<)3t2{{8>$b7U{4Hf99@2tWV=5P$##AOHafKmY;| zSdM_sKhf(w)qAe@VlV5x+Iy$>Zg1S%?k#6!Fsc>^!?UX(VVhVd?6kiP+OFSry|(MN zU8n8ZZI_&Ni8TmK>N!_G|ABN}yW=^*vTnm5_DorMu$Mpp0uX=z1Rwwb2tWV=5P$## zATXyu_YG?}e0#V%{EZC1A;UXl_=i3G!5)5T4?nSoa|V0B#RuWI5lLKCDP=O!*?99v z(n3@Xjb)yQx=ONGh(R|=BatPlpmD=>9^qIisuK}2nr4O4S%fo|@OseE`FmwjjZFkD zb>8AgP+8Os&7~UWs^YRKs)0_^TI*l1l&U7vv6#rH&iflvRmoZvDvNXi;DOImQRS@B zE0XC1!Gc$e<~&X4n8%IcNgT&jI`C%6lss@}$$~s^X320onCUvnfXtGaIDG4W`KP~i z%DZm)m0SMmm3O@I0XONT_%jl=S)OOvL#JhV9^EC~HqtD6@zh9vlTI6HmOXu1q&15K tZKPR_hG~&TN5pR<&2q#{jr1?_k6(2D@k?=_ViFL500bZa0SL?`@E_L5Y%Kr) diff --git a/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db-wal b/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db b/canhazdata/364a81ff-27f5-43a1-8365-c32fe35222a6/tests.db deleted file mode 100644 index 85c78161b1b031a1e019ff800258f7b1c7a97704..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*+iKiK7zgkf9X9OJ(u6dW5D2FAF3H8%(#%LJ-8pS9OJAYYtVXcp;9#33ckz29 z7yBB%YoU;vyhF?q$OH5N+;8^a3*!_8uOcP=4}6~WS{lvwleA`anm4as@oVflTb6ab z`t@U~W6szg51&n4?TWXo@bkX~O!;ie99c-Qw+gBnE34JhSos;bOPG|nnpeIScS%Q#i05NRn>q4R1Y zvMNuia%{s)6^2X_be1{>}r znrl;l`|B^jJUD+9uK&^T-uk^Z`{lL0{H!zBpHP*e2L(7AdhXW4?_A$nJ^;XL z-7(WaM05!P5P$##AOHafKmY;|fB*y_&~X7e{~x%=58ZM7&2Usu! zAOHafKmY;|fB*y_009U<;L8-C^Zz~f=;c$2F!1~~F9G0Qtp~q;nJWTWK>z{}fB*y_ z009U<00Izz00bHo=>N1Bf8=2Fo{#?Gqn8{*k(_G}YaNdmdUZy%8G3a_jiE6^YK)LG z&ILLIk3qrZ`?j`YiKb~X8qf1jDLcE?`-zW?rX z;u((_C*{=7UM}Kp5ySZKgPWV$>tdcb{Jl4UQr_G&G%`oo#>|xKt;~j}H~j^Lb^Iee zS3G40GgGd&vWoFrD%yvYy*D%EdMhgy|L_%KG%D8i*M25zy~TW~g`LgyWIa2)YFjt< zcMqJGZtU#t8}`}sHJ*w=Nne{ndD>na+eVERr)485Dw49I zERH4RJZn^~E~`d}FwfMQ*XM|X;q{$LTt7Ko=+n!_HG|l#QX{f3Y${1*CUeTFD5hnq zos-UGbjx*1X8$-pk(W`oj>)Y7=n%CG9cmZ51MMQ$Q!WZ!SHGIN zj&|I&waZ;gJLa0&r7qDfQ{(UZPx#OJFZin+E{<*?0>nBUPhy|doU@vHT3bl8hsH-o zpMHFF&(cGukOTn`009sH0T2KI5C8!X009sH0T4J>0>p4^efe>y%rcj|IZlqRRGn-1 z=nMov00ck)1V8`;KmY_l00ck)1TF;uVh~^7Z8T6{{f7h3Rl5O8+XW!2a#O^m7-Q0_ys|tsg)1jE<3*`lkR(E9CS!KubFUbPNI@00JNY0w4ea zAOHd&00JNY0vD42QIDV0k6!*s+4ArIZ=WN3F=--dBAU9YXWZPjV3c3ZXD zs@Yb_S(O-LU#Fh4)$<>$f$11S;@L~O4};j9G6i9lfB*=900@8p2!H?xfB*=900@8p z2rNio_=Yi=ygk{S{6;3n1?4Q4l%-tK zGKr@&2X-`7|m8O|mSaOfr>`IB80nr%A+1S>`zl$ActGt1M$75`e)f9rqwr@ys| zJ9hDvUHs}4x1Hhvhx9`H8}ZvL&s}Ed+$_(3kzuRUWfsp>`jZS=r7kmluF@UiwMt!9 o!#t&HCUIM(E-PlP5<&j)^UgnhAr>lv009sH0T2KI5Lk%7e-v$WZ~y=R diff --git a/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db-wal b/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db b/canhazdata/365c6640-85e4-47a8-aa1d-334a6f44ca27/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbdjc>Jgc2=TC>r)2E0MZ_gJB@rhoPNJaV zFF1-&Qt>ZmR;kjK{@nZ}uaZb++dJbzo;>jjbgImu>6X z-p;=B!n@nMdxpKaE$gvuZ^*J4uiLWRkYo2~ByUGv+uphJNatu|+>YE5oAn)I+E%s3 z4lbFt9!hK)i4)GsJZOT2tGi+n(njJ53sT7Nub( zLc&;F;-H z_`}09%WcE)0s;_#00bZa0SG_<0uX=z1Rwx`dr*KFj;%j_9I9%WtGzi+jy|cn2N5x4 z2tWV=5P$##AOHafKmY;|fI!a$h(Ub))$4(J>pvWLuDTnrvbzAJFJFr2`98z+AOHaf zKmY;|fB*y_009U<00QR~AnNBQ`lp9as=E63|EE8TIqxzs9s&@600bZa0SG_<0uX=z z1Rwx`GX&J<|F(Yo&{KL0G4)RYR#wQ#bAVPh18f)q5P$##AOHafKmY;|fB*y_aDNIA z!}ax}mw!-|=q~^mj%Bat+5N-}!ypXqPiU+P0uX=z1Rwwb2tWV=5P$##Ah1FKm4CwX z9`YXdE_u&-GcWWq??vxb{X_tiehaw1x?2+D?ocqc? zoPKUjKQgBmv$%=R@;K#H6ws8VfyxjZb1H(mrdb*%dD%2f@Mtm=Q6)oGNt$F*W!e>- z)0|f+4f7<=g0K;xs3uF@Lzs9X55tP*3607sS6k$P%GxVbcH@etv52BvRMo`I!&0PC zAXJv%T#b?`qgkfs)$mHzBF(v|C(bgNk|*{uS&%1|SR%vm#9StO@q{dsnb?2hKl!J> zwu)PJ@r7Od>=ZYh;$n_~er|>MZI_t)Y$Gjm6fcZqkU<-1sk>#1@@gLv uuZ^_K*|2C%v%iVkMq1{KSs3Y08u^B(pQl zo`#xp?o7|WtA4k;K2G<&=QqFp9`Sl}y^Gr=yYuo|%>AU-`^uN^J>J-6b1oYE`OXA% zb?@CE^0%F`oA1{?JO3}Vzv=tup**!y!0g(#AKUNlwDx|mP1((D zpS6Gd$zGnnO7b6){G5|N=;XWE_IK4L!XNFY zWHdFRHf7BdqeQFH3L#dhstc(jUeGwsVj4>kQN?Ob>%xeN$7RK3)~d8LzOCnZGv2bd z<$c&Y;xSKpAM-xt-R^zXyTjAoaqpyeulH5&Kg4^Tc&`!fW#avrc;|@sTjD)Syk8RU zN#gy4c#pv>{@`!!He-=U-9wE@+^xpM?q*|zyU`f#u7ly3yVjW0U2RO_t~4fgmm4G8 zrN(e~u`$eDXiVhJgJH^@Ym9Vf8t?WU@5bp4>b+_;240)I!qV-f1lvT=s^S zJ@=Bg*GSHvf8cB9-(hQ}Wxb1k-|MR4@sR)$Kmter2_OL^fCP{L5ke<8UeDrV?%7yiRpE$j@#sEBbG;BVjxyu{5`01WqJ_^bs0VIF~ zkN^@u0!RP}AOR$R1dsp{xbXt?woaJtvh4gY3oi|*SGG(x;C-SWMqHqS=Y7h(7FTb z_O0t!mt1y9FW7EU&)p2)|FFKf-1DY}hZbj?`N78O+RF53GG6e>>|B4z-P-;4m2A{? zoW@2%LY|_iX)HLWs?HSUqO2pMA-7Hx?|wb-2uJ`4AOR$R1dsp{Kmter2_OL^fCLU2 zf$^=qFuW~16~02kUy$%&68_5xpLfDXo$#AZ_@{pOz8W0(8J8t1w4zC^QW}@KhK##W zO%tw-VTtCcDS}B_n4+vxLq(Fox<9G})iO~uWrkOV)ul;PFwRoR3Kc`TU#^;r#H^xH z=#o}EOA^jmmPR5NRdpsa6H6*H!D*~m3^4>5QByG$NmbRNhystrh2qUW!*L+Raan1q zOJ=Cb1S<+{>X@^@t(Z=D3R#BJOh+{4Q9+ALB{bDpT_(DeH50+GOQz&t&?O6U(C?Dr zIB>dTFAhkT%*2yVza{_l)BXI7LH^@G{_-$?c$ojr%^z^DLsDuoWiu)#Sy^XMR!~vI zK;7_!Y8It5gZEt;5obx2v}ROxiEovqe=rE&7=|wl z!^ei<1Htjbh~ z$_NPk@(B8XC>2y`kx{J^oeEWP!_#2J#8p(J1$5v_!;iRv9bzqM&3FQRJ(QvfmRXiD zUBYk@gFIx7FH;ydgrU0NS)uAU)1?WPbOFI-$oo!VUkUX}A-8;;2+HC_K~ngrmRTGu z!eF3v%~Q&yfW6|lfGSDos$|Mwm?<<|-ob*ZAhEq+ib8>$@TN#83|$b+E({#LN-I(G zU|z5anwW4ZcnOu`8HX`QGpHPgb_t$TvJB=#A(%*{qFE)Njdcwpn@|PiTCxc0WFo_Y z*&>5_$prqUGT19JlIn<+v=CL2LT3A_G-WUY&93T%$DmLEi3Ivss8>zvR7+)8q{=7> zrmLi6LO{h~bcK4ss0yQ`ENN{35M(|#9QK;((o5s`uT;hroY(tx{P(}mW&HoSm%l#B zA06d?8Rrj;^XDe{*C+WCe*X8V{E?~r57YU#r}JlK@;7I%X{JCn?6}eC&d=b^6Q|Fd zwKv6jgOevtojG>P8dbuxr%M&g!6xDWD#E)RogfnIZp=m%zg20;zvF|M|3B-6k9gsKN8!0q`1mON)~NG};C%&{@Sl;ufguoV>$0kiu2i!k zgmq&Hfl?hoXfiHjQYVJP999H}B8Z)q3>J6rfE2_*3s@FPW*}}_r4eUMD7BQqmPufd z2@7YM#mxd)u#CdgxS&ZhKh_DX!F3&MN|1^o0Sm>L!D>9JAf{SXuw0EZh=PJrloUay z=dyzJE;Daj|Ks`}dw9>r3{_+2*FMhD=|Ho(ZSLX8X&*d-7 zUsEjLz;xo+5F~&EkN^_6VF{3JyE^YOqih5YQCyf7Jb+@;b6UP6qdit!D6F&cQ)zfgTobdUdCZ<*t ZMir7t)yipK#{X~FNg6gB2_S*q{{WxdSmXcz diff --git a/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db-wal b/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db b/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db deleted file mode 100644 index db2207a81112c0bb8cd06eaf60610594180caa33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS0dF(k6Fx*WxQ^(xgyyZfwQv&OL}1eU06D zA$a3EIEwEv&*?ulnUZbI8tC`HuO}%dC;5GnhLJ2eKYx6cD`HiQ%e0=%-lRH}LVW&k z+|#u#g>l8_{{^D>xF-ZPc28#g->_qye^nnVD=G$)P*r9nkNF!a+XpJ% zPeN6hm7L{Yel6D5cVC?}f61-Pa$e$&i@j}UyE%Me8VCKufw9wzg}JvMCsotz#ZkA~ zHsh!lS4*RI-mpGyx3=@{Fgf_x>xBIzeyf@vUAt6qw3Iu1IbO=#>F)1e+t4&R+s^Pw z!Tc2NC4*u=IqDyYf?BVkfB$V$?VyJ$eorFH{gt!hf0VyI_phn=HVIW_R`QsCX_D=! zs&!;pa+ZI2SDeYSoNZK={&VYF%HgRH-wi{ZbOvS=9yqM-5?RGf1lsZPmIBa?S?_ai8@x~dy(aK;>e0Rc47rB#}30N>ADSD z3^tt5u^rD3tXAx(X5FrD`A!g8jmWp_e#=ejiEb7&T-$F2szuy!EVu48t;h>}EAiDP z1g%C;k6lr2i_Oisnb1*w1ZpzPk*M~6rSiD)ys}lv&!)2_cNUPw^qelu*;G;gp|6W9 zO}`t@FYfc=;^K>nf0xB=8f!)X0R#|0009ILKmY**5I_KdISEKnH1$=9vI?WH*sBt9 zbgyboiO~%L2q1s}0tg_000IagfB*sr%mk#6>i_?Rcr^QFaT9W}mme0FIBP}#0R#|0 z009ILKmY**5I`Vf0V!%yKYI8yz^+5I_I{1Q0*~0R#|00D;Q_ z>i)l}UqAFre<=&o7ZhA>a&Oae`W~QrTO%t%009ILKmY**5I_I{1Q0-AIRw=Ge?z}| z`CP?T>KDvP1v@1Q0*~0R#|0009ILKwypnqwz=HY#uTO$sAE{-Bm5s z6_A=tGXhObrWwvgz5h|_q333URNQ*o@4ldvqfvbB-Vr?@fB*srAb?{inoZ7gtD@WTwc~mL=KKq=^6m2q1s}0tg_0z*OK5=?C7> diff --git a/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db-wal b/canhazdata/3a313589-7d3b-4ff8-839a-2b810874e0e1/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db b/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db deleted file mode 100644 index c1a59c03bd69f33b69719a2dedfa6b4e7d17ea13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&*(FMNDygOR@`y1&VkGJidsCwyD~RiWPkU-hf4U z6Iiif&lV~q7Q6wsGLyLRrh!zd~D9Q%Au+}3eCA3waIC31<3+i{=%c$#jX z67u5t-az%LY2yx${}vF@-he1FLq;zR+2z*K-IH7XQzlmR*VJpJB;z0r+2z*ev3^}v zdtS!VG-Q`so3r}M4@j-nZ|*j~&}MEmFLh#Lu;#4!hpSBA+TA`d?r#mZcM01VMsba? zK_rq|k40h-)y&b7Ubf`3;m*lR8lxrMY{|`FBR(-F)5A6Aa7ANkiGy=HFL!q1jkQg= z@*Sedb?WN<-(zwIU6k=PjXd|)oW1@>^{Zq5Wf||%kX>$V9_u&LYWHQYBF{Ew^_L%! ze*Zh|zoq?8TK~1y&$IUb=BCEsV}1NyU2VsqWyg-gZ8wOx+x1-@bh;t;{Z2cIy&w|4 zAWR)24$AApFjyZSF4W5)mh%JbFyY z^n>bIrf$b`T29#JiQg7-n>vCEH%NF#Sg~s*Ug$;s)J%V0uX=z1Rwwb2tWV=5P-m92vA}g>Z^x0WN3^~buB`6sH? z>($%Ud)0PzF-u&Isw&3hX6*^o|#l++D1^&FG8ex&jnAVppPLbaJ@$A*oT%YMYNuAC#Gx4(QCe#T52tWV=5P$##AOHafkiP``K~ew! diff --git a/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db-wal b/canhazdata/3b8ec92f-e098-47e0-99bd-d33bcafbefce/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db b/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db deleted file mode 100644 index 9795b3f8500eed3382cf92fdd4a065a3db4c4017..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*$!^m?7zgkfd+aC)tJn@yCkOKt&iKoJi?yom@(tG1%zL|=e6;85NK zPF%Qig$juSZ@^Y&k~F>$NJU*+;Xl%snMjk*{(eqe)rswQZ(q_HIYY+npr1TFOt(V` zdHQI3sCw13afio03q;BGkSH=kMsE_bE38d6Pht5FnON1|Qty?TjNM7duCP|c`gK|D zNf{3&A-lp_#pE$!m*EW7X(-_SZ`OGJS)%3SHnI5mWdrKNqGj>mGKHJ<%S680M zg>Mo~E>l;Z{~nVY=(LPalPGd~RqXvgs$cE<&&qf`3E36as#w1{sdh*9DvE3stG|Ai z^!s0E{}t`O*ZMECev!5RH8(Z(?&;&t>h(DCQzx)89=X2Y!nG|P+JWG47DNN#inJTW zgsHvBZvF9EJa|0bv8bI!Z}}T#c_z=cJTY*59(6N^3&-<#WO+6Zl2~}Il_ZW8&dl_k z>UkzNj=N4IUm8VG#zpMJJj{}i2Vs zHg7hA=3loDCRA3SVN5>+4VDk}e5mC^IvvXG-)Nj~Txr~BRJJs%*x?1JuKuX2M%i>^ zOh@LyXgsI9$Nl~N=Q3uu@>UH?h5!U0009U<00Izz00bZa0SG|ghy*AxnELv$E<@MK zJvdHB-&7q@VMqf32tWV=5P$##AOHafKmY;|fWTCM5^AWQUZ0b}N3m|NsB#X)%j|iz*-h0SG_<0uX=z1Rwwb z2tWV=6%ml%|BtRua9OPn)zql~r8RnR9iYU*Q?(1V zrP?)h9RRci5-<&QK*cqg>V&DQ&N0VFSxl;)d6cvbb?Z5%F8x^Y2_TftbuXO-+CV4; z0uX=z1Rwwb2tWV=5P$##AaFba^*f}~x!>97e5Rc@v~xTQU8tqBjd|{r+-CFK1-Y%y kbBE)$HqYIQ+c=uCQ13Go0|5v?00Izz00bZafqxhH1t&W>_y7O^ diff --git a/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db-wal b/canhazdata/3cc92b51-bbbf-4c2c-8fd8-78be4a810081/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db b/canhazdata/3d2de01b-fddc-47b0-a09f-345f73a8a49a/system.nodes.db deleted file mode 100644 index 5a880ad8a5faefafe1c48acba7974c3c23c2a11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 R0tg_000IagfWQU_`~_ug>T>`9 diff --git a/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db-wal b/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db b/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db deleted file mode 100644 index 1395110872e4885b0cfaaabcf37341ba953ca2a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&uY{_90%~3OtN(sMJtLFL5iB7hiP~6KesB8zXQ{0(@AE2pCn5+>E`$O(;GTN&XGykX{#R( z(ri#do;`d%(5)`Uq`}v}3uN;7fM_yH)upPcrm<4(p2oI+zzys8=k>8Nqw27#s%fmW zF@C0^J)`P_s;Z{3(z5uwx5(Vw?VB&cuk=P^F`wWKTZ08}Ask&b+0*saAzK_sVm@Ax z#k^?_WLC~EnKB#5`OdgsFzQeG%`VCc!NVeo0+~jE=L^*>O?}TRh0o*Ai@6_5!IL;kc_xy? z&r3fLUPLJUBMNU4Md8Mo6lwxdo=02_7V}JoC6`{}s#W`e7i8^;qPs*K=dQErGO7;009U<00Izz00bZa0SG_<0{a@zI2o)q3#jq2k0!5P$## zAOHafKmY;|fB*y_0D+S%&|R+bk9?=j2kN}0&QHVnVmNP&wq+!-Yh4|%S)Cj+Hmj4c z#y09)kFbqeBO0|vq_sw*wML|MMpVy#WIFYnsUQ7Fr<=5qQk9FyJIQAwVut_(AOHaf zKmY;|fB*y_009UzBcSq+b~>j!=kd{tW_;VVRg0-BEW$E$&Sz_UwWYVbn}7P9d4xHr w+vRdxW<%L%d^RUzgeu)c^nh diff --git a/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db-wal b/canhazdata/3e1dc4b9-ab79-4425-90a0-8f5f66558e75/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db deleted file mode 100644 index 483bfce2a85ab066b518b9f1a8aad12071cb230d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wm306oBCw+kh~=s<%a}ib?@hNTxWpx$J0H73xD2FsP_WhyrTVRr4TS&^PI> zn?6Jvb=N0oyGUoiflU$-3Co21BOS&_qvJUr#3Ey`zkmBIGvbbzwbMR&dYSG>3i09n z;XwDg8MBVZiv>F2;Xr7zl!|5)s*9~fFHdawFPT`^pV#k|jEYGVs*A0yWBsP8_NI!r zQK&Aqwr2HbUy6LbRT`Im%2I4KU+cuFLD?%;kGCvye|#`Wz1SZfjD@v3410OY8ibvG zzG;P>L6}cZM+S?L?}nqZN2aDD{l&<=_HOUYoR--wd&f@uPEYtz1HmgKdoOM`|qmw8ind&YwK8lI;!?a^*Z8gYgT{um1wno z%hng!inHn~oLid5ug%%vtMXyHjg8zP}wfjY_-X)cZldS`C7FuNIt}>5r6) zOn#*rHvE3*)Lggc__gh>Q}0z=r`oI4g0Ni+Jl{Px)4yy}WHPrh5A??$+C~ecP1mhd zw$q00+_co4r(S>CzHdLZpW7Q<{BrRH1d)2-Q<PCltPza=*{ z_KW}m2q1s}0tg_000IagfB*t35|AP_U7yIRe5R4?;<%iisajECq(J}y1Q0*~0R#|0 z009ILKmdWcfE3cy-#xmgBH@4k)lBBoVgmsL5I_I{1Q0*~0R#|0009J6C?G}J)IU9Z zq;n>`03c^SiCJNFq(T4z1Q0*~0R#|0009ILKmY+Ppw9nW`tn1Mr%#MT&%n#m>j3Gw z&=5cX0R#|0009ILKmY**5I|sM0#ewfzVz}B6$zjISKt3%T(fm$1(FB>1Q0*~0R#|0 z009ILKmY**gu4GkF846^EQiG=3fPM!72BAvuGn(EDMi85x1O`qr5}yyjR=!tkmgeN z_epMo>=^+B5I_I{1Q0*~0R#|00D&tipw@qi#W%%+;uW3$W=*@W)Cx$!Smy4<1-aCn Yi8l+7Y7jsG0R#|0009ILK;Qy_|Na%~asU7T diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db-wal b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db deleted file mode 100644 index 1f9e53239d9cd5617a9e994b4e56c52fa6149c5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&uY{_90%~3OtS4RidGaUf)wqBdYE=6|8uJ%J&CWNNhX0+YfD?KH+%CT^srYC zK0t2@f)~L@uq=WPAfD^Y?zV^0mh?}$fqn;OXa6Lb`F$o?n%O4vXs@dLe3VsDS*lt5&4*-q`q6_IbH8X%Svq) zx>>T3%cmj|}3l6bCL2#-gB8*wj^g2z#s@KnUH zmld8b+>lUuAPRRFMeanY6siGXmW5nZ7V%UD1($B@s8u_@>!E+itTm-O^@d`nb)?>@aPkRE>tH8vMX zt97$=w>8%~MW0}mx(ZOH|ESlAn)}bJ{b!Bl@WZh`?(V*Sw|i_FdlS(B2tWV=5P$## zAOHafKmY;|fB*!}C_srd7@yGN5zM%_G3djZO$WbK9rg*{g8&2|009U<00Izz00bZa z0SG|gECQ5JrvLSNQl0vb`Sf44&_QIX(%2tWV=5P$##AOHafKmY;|fB*!J5>UVYoBH-cck}|( z7~8r3p!&W00O=P<5P$##AOHafKmY;|fB*y_009V`n}GWLpXpmK@8~U#`2qk+OWnIw zw-gBi5P$##AOHafKmY;|fB*y_0D%(-sQD*`^N*Zh9V}XvK%4oo?*^Sn@Gy$h96U}~ z@HBKo?gl{|rozvnOtg(MGxfAfji#vkKQcY_oT+d9NXI*ABc*CCBDX4AY!?C$fB*y_ z009U<00Izz00ba#c?Hz?Por_AaRZlLT!wwXVrqm%ScabS*&2+tw3hbgpZ;uK;2hMK tLHqn;r0l?)*J3#5b(vAa`pkKa`N!+i7w5l^Vv7)f00bZa0SMGx;6Fhj5yt=k diff --git a/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db-wal b/canhazdata/406d94fd-711e-472c-8e01-6e775da75341/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db b/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db deleted file mode 100644 index 2d68caae492ece361e31b2d0f6dfe6afcc3f3525..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 diff --git a/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db-wal b/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db b/canhazdata/41df0257-064c-4213-a85a-4648eb03b1a7/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbr)2yR5trnYM4YHNiGqs1 z;3z^##lHZeph2Rfg$P7JO>w-!OtOh}=r*@0ob?^wktQ>aMn8K#<6UXJYyZCc_A}xc zj~U11q@8b`r@2WCvmOaRAcvOWYmtlzP)qzk?uWa3_2$}^+WD?ws(o7e^}lYb1$tD~pXas9_3GLAe>8vn-v79&U(Ks( zIxBsgzdN7pP1Wk!W$D@chp!rW{u{|ZC;1O%{;8RFIrn?UCeFbd*70lgvIvtRl!DPD zttAz#NU5xAPSYT)v!<%+ib=!P?Mt$reSL{Y9)ck}O2Q646i*g&`H9Drgo|i3-Pqk_A%AqFNZ~4`Q~F zxTu=45t2rQ3L@f?(M(31^0;WEOdD30Vo{{41|e;vn2SVdL^LjA6^Vs{7Ce?}v*xmj zLN2p-QKZ@J;kq#zJvDl6^uj0^y)t@x^vZAW~;JNB*z{;)ykiPsVqUURd!-D_>AOHaf zKmY;|fB*y_009V`SAeM7PxP&aPpi86&;O^l#hiB<7!LsmKmY;|fB*y_009U<00Izz zz!?JS`+r+Me&`uJhM4+RfRz<;@*JR*9RYR>0SG_<0uX=z1Rwwb2tWV=5O^>Jh~fJB z(aS%oIS_s#+~bQT?m%xPuBV&Wb#=pCM>m;k>qfYiZbH}8 zP3jWe1jLy5I`y2bp8w!l19PZ)&We_wcuf+8aT3-v<6Py^DUya3BFm@<>m&(-Sh6_k z_p0FNAOHafKmY;|fB*y_009U<00Mm!7`|>yr*BPnroWQu*JOH&On*10-<#7f%<0GG z^kR;9;-{RmFso`>1~sEX))_6LD50T@WRb8!Byl_$7U~*6%t}tPtg5I;>Vl?e6jPR@ zS->Q3sBQ5iaS$Ir;BLDbB=O6FqD-TBn0SG_<0uX>emjeF+S}t>m diff --git a/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db-wal b/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db b/canhazdata/427b2a40-78ea-40b8-aee3-812e9fdeed0a/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb1cZ24&{Hz@*dpSRoRWwW6(>

}tKom4cl(Z0mD5xopSC~mQv4pb6rtt2f{f;y@lZ*A6{eAqAJ zc*Zs3teub3AFndpC5G|-dv~_=sGE5<;LisOl=9BDp~)Q8x29bUowe!i=`8*g1MB<; z`dIN)Kbm$mbkGOZfRy*iX)qk4yF89}p9sj5K>udjGs((4{ zYUr%3V*c(l+q-Jiz00;@`TMUJMe!>sJ|o5VX7Pzxbea2q#wO13>(<%1dV?iAPok`$ zbyB62Wiq0I#~ID5D9=SCsyt+dt*;SB{;j=A+&a5l=*!F2_%C9&k?OMMlc*Fl$+Czt z$t2}TQ_?(5B3{Ze&sjJ#((lA-BPCf{Wf==8Pisb5E;tn;k~B$}$Qs5f5$7`_-6v)n zDUP!&W>ri}9@mt`NlYhPCNvRw8rDgeiYS^DX~QI>jg(~Zq-;b*MN(EOQmnG$ijBo} zSv5k0d8V$7mpg43{+8i+k9bdb*S+Vwu@`yVd(nGU|6>SkwFTTDio%e&z8-S7r-#h- z^e}N_>-=D<3m^l|S z_k4DxpdD;{a`N$qCl72LEQ*j2fB*y_009U<00Izz00bZa0SGKqfEbRg-+uH}x6I|< z94DvmR4p`pECvAxKmY;|fB*y_009U<00IzL3jtz~K!4h(r~d2j_dHkK4OrS;0J16{ zidc(1k0c=g0SG_<0uX=z1Rwwb2tZ(+1c>1V`m2XesZLy@=h?nvE$O@a%@;- zApijgKmY;|fB*y_009U<00IjUQ1AcS`td_g>(z*z{}fB*y_009U< z00Izz00bb=fdEmDpVW_D{z3KSfBwIHj%)|1A|wPL009U<00Izz00bZa0SG`~Z3R^Q ziGKgd{Pp{i?s)Ut5pmCmsYBcR_--uujlx|JG}#Zaa0_sohSkc51d$ zaxo>wFwmvvZ1wzyp5?oqW1FY-2$ujs{6=J9*i@3rOy-nTk*d#=s)9O6oQpDIS;nh) z2`>ywLI45~fB*y_009U<00Izz00jQ$0{&~pX!Pc2fAk9(eMLt1$mln7^qo2S+#G#m zjuw;LFpy21r+JyusumNYev23@d@d*k>)wlXTGMtiPuJ& r=WLi2X@d~AjWo|0Gb_^g57ZxDbp7$wJoE6XAOHafKmY;|=u+Sxa%ypx diff --git a/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db-wal b/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db b/canhazdata/4387316f-e3c5-46d1-a826-7c177a1ac704/tests.db deleted file mode 100644 index 9652ebf0f1dc1f4f4a9f8c5c68492021173c404f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS4~snsj${*WxQ^{zB2Y(G|Bl_aI*MHFoEP z;EnI#D89!$r~lYwO13p?q2B|)o-~}Cliw$880nJp^T$`YB38wyOzQF5n^dP#h|eF6 zJG$1TFsgX{zd#rtcZ4P@s%VcxRk@Y%;mNK48+NSouj z$Dyj+%7W!zel6D5_g`o&&y)H@OdHLjt*|7}wppoc1ck0a0HwP2tBVgCBuzoz2bI8>EeS;YKH<7`h= zts~E}VELE##F;!>u${`&e`bA4IXD&KyJ4u4PTvfJuA|Q={f*toYqr9qWd*I&w%let zv4VOKTWQmeoy1FbT{{x1f1lsZPmKPC( z{#G@k#OMYA1Q0*~0R#|0009ILKmY**rUFt(_5c4uJesbV--4X)<%jtt&d3NLfB*sr zAbYB?1T_fB*srAbIv&$SLGeo_0SG7!6 zKx#6}3^X;FWjY)6{70#$o|{fmaqE4*`-V~uXYsjvNA!RI0tg_000IagfB*srAb^BbtiJO?_s*$hi)K=wb$!zszh(>}kl6V}r9>z9u*CvJ&pJL{9Tm+6kB5bxd| z^>weCG3|K$w?H>M>I+SlQPEC9b*Z&v_oSBpl8JTwCH+~+sTe1ry42b_)^Dn6ud8^S zgz8djYgT{$xhR!7l~LuptfW@+l}?=LSDmVVvSpbEqr-9L*}>p&B&@wb7?mumA9mwX z+X}n=u#}yQ^yVYq42I{A%uGhQ^O5_(UUY6w%j{L1lShW7M~trx-w#L8UUgrsd?*aH zPE-H=w=K1UZmRf^M4J0+%|8E=`t{s@TgB%jRF_&?$NIBLwa2R0k!D-7`tvVDr}I;G zKFLm+RsYAirFrtwoX#IxO(*IFjo7!lLFn18>&14^2%2`#tNXDZJI$8g6qcU1#`)br zFW8+`W8V7pPRVFz)uX~%v&it62l>p5yhyCBmaDd(A7 z--|*|ZAsnP>8VV>S3r`ChUHnxmPMZ2ly>8N)EoEj)*|VkTnAN?Wo}PYCadBJSrm1Q0*~0R#|0009IL zKmY**gnIr&v3S4uq=>~P3KY!QA(etLUzD>&DaxjP^qi$`{kZz;KNfl_&nE6CYC-@3 z1Q0*~0R#|0009ILKp<5Cb^K?0`_=a0cB*S3`CFN6}%E8s)yn?6tQZRZnk_2^Uc0PnI zX6wQS$WB3UBlrl)Aou{{I)2qNW)TwU7(3IFe?g_@Qr%VGucn7|%}m$3x6kGD6h^k6^*6Y@HDpnL+;qbzi3`73zWyR zOhsdG|NqnSIb`iRs80?|2*Ya zvrI)}sg3b>X3=g@X>yaPW$}0aX4`z5e-Ycq*D-EQwitUO1RbtpJ5%evITpuDY7qN{ z&OKSADw07oNM+*XLmBHhRDR)kaa6K%d*4AmJ{IGpAPUPO47K$9VJ?F*3Z+u1mbssn z#lY85ssc7%O8hccv5sV>ickgtZJ=V6NR@k$j8&E03*{c5@IE%$}xHhC2M#J>BY&am`FoiXlMRjWm-R*P1x7J01}d94o%`GtJ?1wJO%*>KmY;|fB*y_ z009U<00Izzz)=J^mp@XT|M&k( zy3B0i`Js$5e<*`QXEIIvf%Fp{>#)dTx(w_u3mrRx00bZa0SG_<0uX=z1Rwwb2%H!J zT7P1?{>X`mxXppm8Y?wsK>Ajlm3sQT&Pq6R{YPPzp0nxt4}8vRHgc<4i>S>5guX!l z0uX=z1Rwwb2tWV=5P$##eoFzG|LJs2cP`+k7r*839kSDopc$5-Q_ZtDoNjx)Tf6H| yzqF5W4eCR79MvlUF7~W>J)Ew2U1!#?J!@WL{qgpU1r96-KmY;|fB*zep1?N%r6!>O diff --git a/canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db-wal b/canhazdata/465ed55f-132c-4e65-aa9f-c39ed03f69a4/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db b/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/system.nodes.db deleted file mode 100644 index f42db46040f964f9b6a3b508f4a9b2ac77862cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db b/canhazdata/4939a844-e549-47ec-bb72-26e33d306869/tests.db deleted file mode 100644 index 23e6cbdbbf2661a0429414c81529a321e2823ba0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db b/canhazdata/497e8478-009f-4db2-9470-67f8ef984bd9/system.nodes.db deleted file mode 100644 index dd98b14993092f4bbf09a555e5c68f434114cec6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db-wal b/canhazdata/4a40e94c-527a-479a-b6f2-e5f6dabe99a1/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db b/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db deleted file mode 100644 index 550d3329f4687b9550d0c062847fdad160ec2294..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5TZkn`8OKlc>C=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?5g(6noA!BlH z$C%7Jw`}2UnbiyFZ5kuI4Pz2--5Bnz8N<9)V`6UwOrpGHV{&iFn9N%=CiNDKk>0#9 z!kaUOd$YzQ-i$HK3yg`qDHx`_i7~l1HYW3YV^YsEMtUP-gy$N=y`eFQ=NQ90VoXd1 z;jT$NcO!iMgF9K98!hgvP6soGmIH5V*5BS-*%&V@k@?~J70BmEM!j+lUHg|Awh##* z0VIF~kN^@u0!RP}AOR$R1dzaGCNQ~q5Jk5{cSkRi=;tJQh(!N#qGz4x5hwbF6a8rz zy{G!ZK$n@6kO7z0Rh3bZ<&5U4)>Ni#UDZPAQa9nWW#F~4gfzq2e1WXPd9ENYugpMz zm0E~8oCqx;7qL<_&YPNw90awJ4dqp4e~s!VEHYF+1L zlQap}p`VGW5~^afO=+%{!RSWebD#@v+O@iQ7*OWnZ zZJgA+N}90OszvDb$$}gX`(!u{oj%!%L((TR@${4bmw)<~!{T+f_>o(@G%6k%6~FU} z`@JiWl$y-gjLKOhs=R?L(Q%st^$O0oVvs(%)KbQ2&Z?}eJ2NWJlE5nUx%xVlX2{ek z^|?Yjl>#!cN`0>4PNgXsTcti%dZ*Ha_*SXU-O#BtCZ1L5bH{Wl`IvwFO6MP+e&!wG z|Kr2x+r#J;H+ssAzVAk_kD}*B(W9g2{!#RT7d_!c4|>r*{NCL}xWOdcz9N>CLzJaL zsfw0KTtUDWEmu00s>#CjCQTquyiRErE7(hjgywC_DTDm#OlKS-b{wv0xZF}%3EBWR z=n*8uXWllnRIO}9trcW(4_75mbR3&_lH|~D#JZ&_g>Ms{X5c^aOLeAYQYS6V zpu2(W@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(B4GkAq1Mfsi zAd$ju(4WN+4HZ<|Kp;%xGHbPv;e6d@O)dnqj8#x$tYcc1bxUt@l(SNB5m)dyBb?1MSxUhm;6fsM(@>MlK7~`E6_+AS0lyAs`b25$ z|7Ba%46d<*+W!Zi>(l@L%r9OW7mtjKzf6h;C&e?<;%n35@u2woO!4qc@rT*sTeHPe zbHy9;mo!o!TejbjFv819W-eGEVWgGiRF?^-T;?+4m1d31JNu1ovT2n>2_wl=WVCJ) z6FJ~QSE7N)p_y)LxD^Bwol09|!z%TORGms2WZf$DiDsQjn`F%@^@(_$O6z3RD)otq zol0wD#VYlQoSjOmWZ5e9iLRYWD`d$k^@+fpO3P%?D)oudok~k&!7BBMIzRN82U+o^6~Y6la=B!(e3 zth*_gH^LM%OWH=3l}^f1gJ}||rfI|TL`jjglFKW< z{y+2i%RB#nY`%DTq4?fH@!aAitp!{&K^z-`1dsp{Kmyk-0kUgn=Y2->owIX74q2r> zqyA2%0ok!ieP#w-N=MF+ZL8F0_Rytt(+;lxzxioqCnsG0zv$^|CnsG0zvyXiCnsG0 vzv%6=PEPp#&qZ&;b#lV@f8a&6q|{urI&X9*rvthEf87q!u;EAm2@L)RwuV}b diff --git a/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db-wal b/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db b/canhazdata/4a5fa099-08ed-48c7-a95e-3cf981942501/tests.db deleted file mode 100644 index be933e23ac6503c61780b9168873262fc36aea4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db-wal b/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db b/canhazdata/4baf5647-de2b-44ab-94e3-1a1afdd7c414/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbc5urqX1_-_MELIdyH~VAE|6h4tVcf{r`n~2 zJbSv+SG6kIu)^b?1)^l9PZXIUqcaLw6;?*Or?BylIk3vVp{bhIA-(O_<#`fl(ad%^VbDOZ$^(1XD z)=#3W(P2r{Pa5W+r2|-;?rYlppmkqr-6C`U>)6!Tf2a@NtBaOxrI8=RJj;TN3*T$=w(u+-SWfK3wi^Y) zCQKb8_NpuEac^aKxKM|e&eAW+@{y8Iq_LN{JaMgn3)}X2=w&{SL>Ts*G>rYknmE!= zs^=qlw&jVQBcIyN94;KsI>Iqk*?I@nOP2Z~>QmLG) zT&XNnZmB_{a>qHuHC5JuFX;6NQLU^m%1vH zja$aJWgfPMead@0I5>DAV{$2P(=amxAOHafKmY;|fB*y_009U<00Ji@K#9TB$B$JR zx>oMVaXR><>Vy)*Fc5$M1Rwwb2tWV=5P$##AOHafj0Gs6hWg&oB^j*b699Bpz7#Rm zK?4F1fB*y_009U<00Izz00bZ~9|Dw^hPw3dnhg2>|KL*evNEH?%Vo-%9`ix~0uX=z z1Rwwb2tWV=5P$##=2k#{{y(@s!F81()zqZ`r4@R3AE45<024z10uX=z1Rwwb2tWV= z5P$##=2L)@nxSsJ{82{v-~Z3=BRikk$O-}wfB*y_009U<00Izz00baVj(}W$qF%pR zzgfRi59;M?0%ko4ftoQsc~WC}Q_q`P-lXFuB~3#uJ;&s&A9bQpwG>xbg|ewu3My;! zFfRlk009U<00Izz00bZa0SG|g)CyGZlUD0dYqRx*w%*d#sm-Ij4R0FLtd!iG>fARiJW97q z33>i(r>}a|v{8r0zYFx@ojy@yhK$ZQWS3hT@1ET9A2G42zouR*B^iTp$S$`wkM--a z+OsmAj6-(0wK=Q5e4o^6-R14&&vZGrnoo6Nqu+F!-rjAdZ)|T4jC&jFo7;q~uE$A@ zv3}f3YaJH%`f<%1E-A7lpRR8mzN9f+l4nbX!i~6e$=|Jv~HfY|1&o=_8#e@_v-Dy6M{RQZAD=_ws^!{D@@zI#Z%F9e3vJ} z_X$(Sh(UQ}JqlMwhYNLh=`8=EEXx!H5w}H}S`Lq8CN~jQ(CYbCkfeUheLLY^Z)&FB zRL?SrD7D=*j4ao4Kg%6b zDxE7`DJ_+5seggc7D&J}9LKhW$yDc=y6Rk0Q(eoXs^fD1S1Ok)H!6233sg8tp}P7| zSB{ z$FdAvEB53#9ez`FLWLm>1Rwwb2tWV=5P$##AOHafKmY<00ZOQ$t~TB z5fdE@AOHafKmY;|fB*y_009U<00N64K#6InpB`S5p)*qG6##VfJDJ6RMHLW$00bZa z0SG_<0uX=z1Rwx`ITDcH{}1m^a9wQ^)znV`3TyP>K0t+S0agqF2tWV=5P$##AOHaf zKmY;|SWE#*Du%lC@+TR^U;m%oM|Lr_Q56Ir009U<00Izz00bZa0SG{#7y&u|M74Ug zdb4`B+O8I}30Uh%2vm&8$&(7phI%&CvLT%eDXAN3>NzHF{iri-I2GYZY|e3VP&U&{ zLB~mr=Rg1g5P$##AOHafKmY;|fB*zewLtj+X*3=;HXC1Q;~j0BYK!9)UpHo%DY-t= rxsAF$%M8bLZI;=K>vX1>iH}z_o&^C2KmY;|fB*y_009X6hXQ{9jS@S7 diff --git a/canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db-wal b/canhazdata/51f5e88e-f529-4097-96ea-50684fde1157/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db b/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db deleted file mode 100644 index 9ccb38e7bf1d6da96d58467c8e4760fc012d9f81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5U5F(|6~}Mg+qe7P+w=YXwZn?(CTy&=tNN?z$yG!`n>?wY1i`NEYOp7IbSpacnmUqM2IC;@|l9|?v$B%%;RVvzOJ&g|5zq?6t?vpepd zhMIF`ZqL8Fez&`-PIcXTe)Y?55wADb+u1JJ-CwW7JV<)IFMR&~lg65@zhm&{I}=d# z{U>_{*$~Q!-2&#ow%xbq!1S+B*wp{1xmG+V=XVR31KSQ`{RdFnX(*rDEnp68J7o1A zf4Fz_XmRY^v6slP1FQ2*Ej&DVJU*Vie2X(UeeTTp;RjEjI&-e)+Ydk!z|nbxhe(`X>ILNxct2P1u${u&Kr}ubH*g@tTC}WV+?nvjbZMTF_G(o;nJNLBiu0og60@pHy9CMeyH{01`j~NB{{S0VIF~kN^@u0!RP}Ac0l_q(`>R${_)v|Bcu-{(KzzeW7N6aN+B|DO2I6aN>){}J)O zNBqZ#|4rgQO#H79|DS#T^}hd7-~Vmjf3ENUr0@T*?_Z00Ot$xC3MNOayJg)?>uy+g z-MVYmUA69tb(gKXWZgyUE?9Tox^vc@weE~{r>#3>UEjJB>)OORlac+aXIP_{MzDVWjM2SWOKoFdaItlv^=%m{~uCAcD*9V zOw%M;qD4)UvV>eZG3SseD3_GSRTF6?;wVbGs^NY}00|%gB!C2v01`j~NB{{S0VIF~ zkiaDZlD#+}T{06-KK@_%r++>u-gJuZJH;!*;?ZI88@G7Ky#`6C$&}5goW?AV zL?$5LbOKXBO;b?`Z#~U)+~}&|sg~`znOBH!mAYJgt+|<($;2vkxk6i&mdJRYQirR! zRmmeGtJLL6Z&h-MXO+6#4XsLqxK^pl9n+?C>;mQ=zt;K3C!czk_W!9t_>DpMniD?b zgx_((H;3U1!|;h=_|PzX$qk=&!$;ikZ(iqaB3Of@>q<2|qg=!S8vLZBN(pGLMaCd4 ze5v4K3|3{G){tgiQYg?P=rX0yV8e89sS{S!Ssgb#SczF(>p0~!<`wh^Jm-)PUNLCO zc~V2-?z9$FupE~$i&G(KUdPasHw|Q>k7Y@@5-bvVq9e_Mr80-}5-GeUbJ#1=f~tsB zw2bRCgZ8JcbQLU$IIf$Nn?9(7wkd^v2F|OYO{Rp@ERq%UK?|y?8?9<-&I``IiW<;@ zWc5iY(k9hhr#uekBd&DC;1Dp;4ZTYVCnuPOdG9)d)a53vd?kW8okCR;(}5)=C_vjt z1$3UK2jz`Q>!emqFe^YRiefn3grz16J@jXF4bYOjR7NRE%b?TzdN9qI7E+`&974j$ zHK0{yfR@D!-jqm5#hYNNODm22zhr7kU1tI{-C zwMt!DvsR@kvSO9Gw0NybK3U$U)S*>uRhp0`tJJ0CY*iYQMXS`Mb!}A|kp-*Nr3G$P z+9LB-sY@%}s|dlbGn3ZEQ>UmJCf2(D^k3I7QR+;9Yf zZ3ygm)1(R2u^9zd5yZwhEQf-4QR;@JxsX|KL?{VSAB4s5M~L-A4fCKp5oVPX%ty*v zm5mCvLg%qw`?B%g7t!e~kZe{-49`#u8ZDC?cwBCgD!2o4Aaw{rvybXW!fS|H;|n)w$x^ zbHxkuS2P!J!!_nuAtZnVkN^_6=?IW*8=ZF<(YHqDi{!|DrFS3ow<;}=t$j)zB7;_? zd9rDhx~>zyE1wD<_=)zwGI1D<_=)zwBvmD<_=)zijncD<@q4bJ=RRR!+G7 ghsr!=C9Jb(63$vV9m@Itn{IH16-EL`V2{9m0RCuOuK)l5 diff --git a/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db-wal b/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db b/canhazdata/53170868-904d-4ffc-95c1-6e3fecf25e93/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbC=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?50jD zvW2&0RxhNtX^ikTjN#t8F^RWk4D(iviM$-O0GGH=nC)LSq{dh^BzZ_XI* z%^H(5YsLo@)&EhQ=hGV+`|%F)Xt zX~JHs7NOfG3vxK@li@gY`eZK-NuSKb(@*|i{^?&1i`U)aM{e=bsCZ~p{LU-x_pU%v zYBFOpDrc3b@&>X*$88SOD>&ndLHg)YOBts*tFp50%&0s|0;|;L>g!aRAycc==L+pq z3dqDN^|^{Wm8N8DmHJ%iok|npTctjCL#NW1cvh*;9n-1gWB&0goqv4#nRkf)j}N17 z52IJy=qWe)z8k$hik=%qkB*}IN6`yj^n@2Z=tckVdv_DzMw2Fx0bZvxixtFrArhLm zEvF1Jr!$>#h{bWZ&LrIAB9@dxET%%Kik3-SLAM}Uu5>I_lZ9&9mgh~BsugOv2LkK;oF3#892~I@G@MaOLeAYQYS6Vpu2(W z@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(BIKlzI~h-BO)aZB}QM%+o5IOQmWnE;-FA z)6a6)OXY9^QqD@jMO?w-jBqy3WGMxMfD4K2O+!sG`xH)?R$PiSg_ESinLbe(`+wP1 zHG^yHp!Wa4=lb;jKl6*%#>FG!;xCip!AbGVwD{VzcswZnK2tnAQ~Y7J_||Ok)Lik# z{3VSP$d>IlB#iK~l9>xuNEm5lIn`ytDVMp-c%@k*^Ui)_n`~MoQNlX(gssm~0)Q)x(uRq8X#?^JSv+b+-e|7kyZ*pL1@j-DS!kBy^mj(g7t-qQjT z{xK4`W(b74dCFlXmbb738pFyL&tMLkv^mYwk_#njm1-Fts$f0~UQK!2!dRIz*Z~&B zXr0D75it0z;ws#MwNfsVl+m&^YnLp6)lwK&Q?27hHi(RsMpXXK6Zf1Lm0`aj&@um(m;o@v_fJW*0)t>p5`um8_{ z{_@WMADb^;UMRk|P&~JINoxVuOc2M0AOR$R1dzaWOMvX!*?FH4edp|)kV96fps zX+U~6@|6jL*G;BB$KmvpR0aBb=jQ{`u diff --git a/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db-wal b/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db b/canhazdata/532a00e1-028d-40af-96e1-236796e4783b/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbY{_uCO*` z_0PV~n$4|+vxPrlp|F}uJ#ekRw7Rr$HJ?|H&rU9DZ;y{o&a(XAsJGk9^M0?p*X-oI zZok*84>H$pGd~@j-kn(+WUk$29&R7(-Z^Go-C0__dR@s=#^s~aucv3b2TO->Cr?vEQcK>K+ zdw;mBre(PECdB!lNgsW*k_ptq@^Y)yj`QDWyl9lH_;QvTYBz5_p?-61(h}F#*WY6N zvz7E?*`%k%_6ZOmK!5-N0t5&UAV7e?g9?PKmZ!syvoWfb$?la1gCkWBTAslO5FkK+ z009C72oNAZfB=Cg5V8=z|DR>gr$8f2cK5>+2zUqt2oNAZfB*pk1PBlyK%f|bkkv!_ z>EX*_h97IxF#Ji(Soe`kfB*pk1PBlyK!5-N0t5)$FA$IaSJLT+UZvCtAAb)w=K;F^ zVap&ufB*pk1PBlyK!5-N0tCho2w5YfbNu}t<32^DhH!g+)S|XwTml3L5FkK+009C7 z2oNApMuGVM6LWKAEWFG$H|%IB^Yp8o009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U dAV7cs0RjXF5FkK+009C72oNAZfIwLV{sNHIhob-h diff --git a/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db-wal b/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/system.nodes.db-wal deleted file mode 100644 index 78cb650ef7bee2f79d228c15d486cc0bebcf862e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90998 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 Y^H5&tRjk(nPx^)b{`UMU`AqKr1I;=G5dZ)H diff --git a/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db b/canhazdata/5360856a-5f00-4c38-9682-5e1fcae67f2c/tests.db deleted file mode 100644 index fca72f991d246e79bb6d7c1774122dc504ff2884..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db-wal b/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db b/canhazdata/544d7b1f-a645-4d78-ab23-358573ca1e58/tests.db deleted file mode 100644 index bce2a9686162022954130d2425cb9e1ac0c8ee60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&raJg90zc_Ns3x&8fcp)G-;|fTCsznY3%&Db)2WY!sh&`lx+-DD%fp2$PRf8 zZaYlcW$!Rl?LC;?rW_`iLLnv4ucaRjG;#dX?#0Og zF?UtfGR-s&2d%ythiTlZPqq@{7t^hb?KHk{J!`TaAHSTgXKoMn_AXq}G@>nM{G?`n zmb*!2jgo`W0ja4y8T$9XZ>j-$sNzo^WsXv8|9YP7v8r{H zSt^!)V~3p3lZth!O#d5eo6_+yAwLX5opdrYltV|KQL>HLj@>931dK~RWZdx*=0|?a zY~Blm=Z3xvdSvzA^Wf0q=>fO|lKadF+Mu zfJv7Nrj~ss!=A$&;S0}+q@4&~t>$|o6xa0GW<={b@#`lQo& z(;0Sd%moe2FVLn%2CYqt906@wlnYIqkT}@yHnF{X=Tmg@4jsH`{n3h^b;8^E#@mN>}_rEjr8cc>)brp zJM><>xx05@x!b$7>bve%Et~$PTg$Dw@1L|x+LrI_?w{Y%J83D}mOIt9I#<(m#vAFNP`SliE2TjqGJ+5A6=-(342)%MlYv|CzP z$N2qew70c4w#>3-@poUf%JMf-eoo3C?DA8)TxRV5t4+M4H=N12dcDq5p2kT`>nc`M zuqL5-omEssagoNg;*@qOdC z?->{Su5rwFj1#_XT;UV#Sfs~43?B=h4xbCxJ6s&yLIj9&I-bNmt9fTN|FpJ{=n@(q zAAj=E@jc5DI)x+%fB*=900@8p2!H?xfB*=900@AAl^1r#J5H^j32)=v5O4!?RV8uuZHJcG^#aw(7T4udTXm z)oH7CTP0^zVhuu*dd}7RKe&$X*@0dLTG2L;#G5PU5M~JofB*=900@8p2!H?xfB*=9 z00@A^_?hLY+}qCe_&F1?G~9 zIucYCbwhKh#<{AvY>H~26Rp6B*T+h-0cMS*t>2kxofG=1s2pcC%_y1@frFmxYETz#g>9k7o%=DQ`|B#?n rn&)hosq{DTTcvrr)2yR5trnYM4YHNiGqs1 z;3z^##lHZeph2Rfg$P7JO>w-!Om-7<=r*@0ob?^wktQ=6jeef__#v%#*S~MS`II=? zBig*2w2PPLX>Jfrd;h)bo2pespEvk>wm?x`-_#VDCF^WaWz$(%?4HizpEIyp|41Dx zj;sfZDx1zqAJ=cl)jlZeJBuot&PvbL@4lpsM)`Dq`XiZkw&wqJU~6-OZN!I{P2<}B z?t%5fyE}XPnz^-8)g#l~tcqqdGpk~=8rjDqc{}pj&hDK@TE`=!cI39$s_z)nG|CNj zcu6Gxr#`iQ`Zqrcb|ICy-=wVrZTGTH0SI>_Bgxu~+~ ztn_jH_F}a+WUFeIrDyARU(xdXSCW55^6&Nh6Fu*8?RSk$ti#uh`MG*o_P{)H&Mz$LqA{EPLCiK%7_zXcl7ccn1@s~!rq7%K1 z#AD_s6$@z*)(wpsA!u4hK9vz-#-cJy>SpPj{vxD}BvQePfLD}-MJyw+m}X3*G>jXb z@*pgOczL8-?o1mFpBO$fe14b=Umm_Se0x|9w}*G#Qy9>dfajea&0c$8dxQ4BPTRHH zuGMzUwrjLqz3r0IuH65g_n7yz_ng<&f)IBN0>n7kpTs=vS*Jbwq_>8t-L}c2qmMs4 zI_P zPd?Ho7c=9rC$bKC^MOBnENstuaFsnOP)j`3^P%dW0z%7!pqR72}^uAD&kc5 zbxqSGinF3=nBd`fAi}Z=SXt3Htz>3j!8y%%nb07Mv(yh75r}fU(w&B}odtzRLSM*y z!l`syuuN>G+*@J#BC$3auhF%bcK*X8)=mzeQ6|(IBler s?z=6^^?gL_Hqt6*%(6L6|3v=ri_SmZ&od9Rf&c^{009UZxq`r(Ceke@SmES15+lpsKRc#QaUl z_8P^@X;4*JX;}X4M{IHN@x$Hl2Vbcy=l^)Y_Fz@6hNJtI`EGl2Xs!)%X1&?S)skfm z^0Zi5xAJt5FSW+g1tVuN-Ho*uo9f-`L6&T*{5eg&b>dw1crJhRU^17rR%~pXIH6@` zt8#SPu-+zb)X?5mTiaXApmt5Y|F2uLg055ioJN)Ft6|&!IDh@we}m%lG^nbqG%^3y zG}}F@byQgzmVf&x+vofIx4D0Q9plDmkFl?&NxSRNN|Q~g_r>9|%6&IdkrFDEx$s@D z5dF*xgctRTNTqop1IZSSe=;2Gn#1KFlundOPo$nIgkL0yh?VaMr*J|k{j49Uf(@7Z zZkj}%lL+bd`@+v7DdJcu5f?$0t0d|NiK598$DzK&N<>OU!jB7I#DN!yEOb4ZF^O|W zG0u-=;ZCxUQf6)z2O^UNb;XsDNFC1=MG?56=c*{l;`7NOPJ+}8av{AmBoi5mzD#1_ zg+&ktu9vxC!P@Jr*L&8ha*M~Z=Pb}Q%Iqm!US>fGzBbmrVkEUr!gZqB{{ zbL;4tJ^M$;TeH{d?4xe`@bK^h#otTa9Yp&OfB*y_009U<00Izz00bZa0SKH~fHT|D zrytuCrg479pik;JAD^o_=^eZV0SG_<0uX=z1Rwwb2tWV=5P-m01UTb{{^|8iih95O zQ~OQ%QN&q5F)sul009U<00Izz00bZa0SG{#fdZU$4Snh19g6zD|ChP0rh$m)5(FRs z0SG_<0uX=z1Rwwb2tc6W0(Ac0(zhSFtNY0feJMa~h0kt}P+JesFa#g~0SG_<0uX=z z1Rwwb2teR+3efrgmcI4!0fk{(yv_pvoF`>&nR+=_1hRqv1Rwwb2tWV=5P$##AOHaf zR4CAXG9G_qv-gYlzVO~hj-g17w7W)`foQr$nNe-JMwuaUx}}bQba|;3d6^dJ{*Q(p zdd{MYKkC2!V>}kokw2b500Izz00bZa0SG_<0uX=z1RyXU0UCd_)w+rcFXp3pF_vN* g`Z$Zt>CwFyJw`7f009U<00Izz00bZafq4l00SMDazyJUM diff --git a/canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db-wal b/canhazdata/56307d32-b2ef-4faa-8e40-0f06334c97ef/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db deleted file mode 100644 index a1cdfd6d121a56054e3c337cfd5efcc4ead05043..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5U8o&b701s$A2auyx!>PkxkT&?C3VNyd(X$-Peu_bWBa6nQUqtu?7?8ulq6XC zqE#RIAVqvA2vv;qsSi~ON|7Sek0PZ)m4ZdVj}}WGT2Uw>wMbk$xyeqX(@fgju8Gne(67znNKU_C9mZ`pvJuOZ?t^@7!|U?*4iu<^j^{efdlG9ktdj{c{F?zB2(` z-*>cUk&U1o*==C z_@ljp2a7|e4!uMU?OC61YT?n*!{TuE@-4%`y{Ar`9)0+W$4{Q>4UZkK&B5XDXsw%r zM~1aNS|9Yzu9>&Cv?bjTgT{CfO-cuekZ>u>RRENdO+x?+k)-);0h9-h@s+wF;E~+Lr zT8cPMdP5scPLJxx={qH5YH2F2s8%Yc2`eiq)6{^l zC`+SC$)svkS|P+K)lDgN%uAXic|sH5LKSN`ZAv3*o>VoLd8^X$_*1qe$?K_uTaK}e_lgaXAXL9T0 zDjXM-*e?XgU}tw%$nb(Uy5M=|z3aWdXU;tM)idv~*xRz+x!14vuHyEQ01`j~NB{{S z0VIF~kN^@u0!RP}Ac1#Dfb>Q~`|;x#+Ms`ZC&$UzPpaN!NAPV(00|%gB!C2v01`j~ zNB{{S0VIF~kU%Q|(jz_Zz}3 zAOR$R1dsp{Kmter2_OL^fCP{L61d3-jPL0A{;a>^Z~Gtg5BbcO{zv>z_;>oB_V4nw zf7HL%zt8`Q{~zMNLHyT={|fQ{O#By#|6AfeOZ;CD|0&}CnD~!F6~P;S@pfQ_g6G}= zYcg-!n$+8}Ch<0{5#EM1+*`MXd280h-YOWTycKJtw`@)BEm@O!i`Jyxf;EXZZ;kNg ztl{3QHO!l_CibSm#L5e-k>13b+&edE;!VMCBK3T063??ncq41LH?$`92G%gI4~8p` zSOZ`C5boI0bGO3xKMcLi-ps;eYJG{Ujz`-EwibiA*|qt>@=AYW`WhTwGU`-w=*Bukn@X8Bso^H&BAkl3HWgz~9$0YDDut$! z8K_`fXD}gCnzE{7=$lkDJc%=!CnYFAg<>k9^slY|%Nw262^2;TJqc2AEGk+iEQS4o zdc(4=Q!10Z)K)1@%dpd|ML6tI1vwmasc;T<=jDs5o> z@oQaweDayg#Q!G;(YFWDYs2W7Vf6iB^yVmfVH7<+iXI$AFL}{ZUi7dR{lo8^Cc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG57g4dO15H5I9!_0SD%PL$ErC=hJism&W1E@bQVFguEt|g0Qo|xFM zaJkH3zhnxpsT|gdjfCt1X`~c&nnAt#x-wO`B!#G(lqaB2LM{6=FYSIcw8^wohQ$g} zLbzB%d3zyX$02UPenGsVTFQzxCWaKqgyFE(LYh}i9)p4?6UdE*r&KeWk|6F$Ba%F= z({MiLvSKC3q>aiT>*Y%OEGZSY0T&d2LXJ2DmHK%9fAJ``l@s3oQ!c9Jd{%Acv`&WZ%v%Lu+zX@wA{)Mb?4sI*bfjl@`dBQ|dB$XjPiW`TvVQ&1~g_^Z%E8y4uPK=l?JHw6~QL x&i`NX^jRw>eE#Q>r{P*T;qyO~2?md=#9C?Iv~t>)^Zz&PO&WF_2_S*q{{S^CVTAwy diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db-wal b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db deleted file mode 100644 index 652654ba89d3482131634d99b1e91a6039f06109..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP90%}onzW+@aYIFhAVt?PFV5EdYnr>dYw;B{e@-Ci+-Qs2oqG^3@*2DI zLh#0Sa1`HT{!W{gO{Qd9vjqA*@asv+$w_{nq+ujW&d(oT`5Ieivof!<*_%|SoUzXz zjuTa@Qkzxy{J%gD9VbkY)hPy9P*qsTc28mb->_qqe_I_ZYZPe~R25dLn7>BZKA?D? z1yzNWisj#Y%{DjpU!C-R@twkQUg3`G$*#5Ao4nAqqwz4+_L7L{2Zxbt>v|FeaeJUg zK@zna({|3JJ8QSG_iiYUJ|>|*meE^kKDu_P`gAFK@^ZG6z84=JUfWRD!d+|fq^5uJ z4`f;&%h7nmYP4QW{r(3!?VyJgzq2TEe^u=GpXRU5{TmeDvY@K4QpNlmS+=KCt0=Nm zEdS;{JL6{++o&S_m)1AulT*gNYZ{$&Qa$j8hB~99Td{O4qi0#daeYtNhG&Vu^b8So zoxW{`u4#3Bw*L3|?fgVbw+!3&Oe+XQ(02l1hfyGc(2&BT9(_NMv27YG-E!P8cDt@G zEZ^=5TbhmtjBZc3j_LKKWxGz~P_v#d{V?uHVL5Ir>~2IG(sw-3Go%?wBMznGvF3nn zZ!gUR9aTr5!}A=8wEtVJ$F1kBomO==9b0l|0j|x@>0Dn-)zu&Rs_@4AyV-nspBEPw zUnu@v%G)%o83GW100bZa0SG_<0uX=z1Rwx`B?)j=*VR>tCWTfj_o@V+-m6+tV(10} z5P$##AOHafKmY;|fB*y_0D*-7XPo~3pRq@aZ_1nCSt9DKyXxe+ z0@C4mMxg2NJj2=0`yaU)dTudD#jUsf?hA509mVJF9iayZKmY;|fB*y_009U<00Izz q00gcG(Dk1N9=o_gvLZ8eTy0sAJ&iOW009U<00Izz00bZ~7x)9Adg2fO diff --git a/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db-wal b/canhazdata/57cf707a-3a40-4e25-b106-75298e3475d5/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db b/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db deleted file mode 100644 index db4d0bb79ed71922c94349bfc01dfd2664a42426..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&&?vBBnULCcA)GpooVcV|zqIZ)z(lR`dmU0~X~? zV8w<#Td0s&@CMwEl~kBA3Xh9roiNPt)yE zLSDYu8R%X&W7OgGWC4-v42UMPRCLFoy4>3M@Z^^Nl!T+xISih;N zJ+I=~I8>Kgo3r}M4@s@oYi>8c(q?WopXtQbVA)#^_wO=uV|#PYda$v+xlP#WdXm-{ z8ze&3x-1ccq-GCi2HDK#>sv?9w1zYNZ01^jH9ayXGvj4%f5~8a#@@NDS6kcZ>hhY} z_!cqLHckEe-(~6mT~zUH9C;qEIeY&P>(}T0%PQWFLv^{ed92?aSG%iv9eK7ntH1o1 z^m;#N?;Y)ZHhOQ2UY@o8H#fERpO~ZH)w>-T3nz$MJdE28_dCMlLWqF7!twi_+jgaF z5vI=(d*zk&xW6(wUFg$GxA~j0EK}$U(eY)>`(BcAKM4izJF(c7)JEG%=V>A7s zW|k>!wNqCnl8Z#8^WCV;JF*pVKMiG&xKSY8<1_uDMwTg1`yWNZ<O`}C92ER#&4R5^8cJBS7MgGBJQj6*KGz)AZua69ez*y{e4yQEaQP`XxH zD&5il0--ICfNix}j^o=*cY$r{&a(~Oxi-~ZsE&W7aObnbQ8pP_ zlaYNm8qF#0_2A&(wTk0gal3{sLjVF0fB*y_009U<00Izz00bZ~BLPY*rayixt1yjX zFOJjUCsi{l3~3+$0SG_<0uX=z1Rwwb2tWV=5SR#1LM?sY(G?Y};0pkBUT%t*=wJW= z2tWV=5P$##AOHafKmY;|SPTJ5Y)gOj@P;nOWQE=VKu2GRSqxZI0Rad=00Izz00bZa z0SG_<0uY!Z0rmO+@c9Hc^*&KUe-)sxMh~9@RM;M1!w`S~1Rwwb2tWV=5P$##AOL~I z6riMH=|?YrQBnN;|Jie77gHNmK>z{}fB*y_009U<00Izz00fE=Q0q@rtJkZytM{u> zwU}MNR%anlu_hN!Dl8kC+0e*_bTXu*Zt11xn11x5!OS9`07>aoYw65F3ppSF0SG_< z0uX=z1Rwwb2tWV=XG);_h%_2c8=H;qwDEy9&Q$HQDYkA+vr=-MO|uGe-JE8Hcw?jO_|LBMivM_00Izz00bZa0SGLNz&}c5LNNdU diff --git a/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db-wal b/canhazdata/582f77b2-f2f4-44e7-b9bc-b60de3e64f0b/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db b/canhazdata/5ba0e50a-847d-458d-b329-586851143faf/system.nodes.db deleted file mode 100644 index 5d476810bc50e09728796eca13adc64e83d1a704..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI5yKm$~9LGI=uDv`Z9t9_~i1P|hdpL!6m&?A6W0G`H)rootzPxm{1}la@)>^4-0IySKDXTC%R?uGners%aY4W_o!La4JM7ql=kHTgEC8 zWeb(=xLcazJmfs?TydUtW=`mE=SAmL^~Vs(dK0j{Fbsm!c9l!)k#fv-l#6X!x-hUU zb;NB`xy&|{%WYk`$R^5#a{fK`|eHUe}E0w4eaAOHd&00JNY z0w4eaAOHgQCjlZqKdC;w{DZXBKmXr-NA~`tji^8X1V8`;KmY_l00ck)1V8`;Kwvcl zWd4cq_=)i|vUDSt6E*v?5ajr z)w?P=uM*AoRO&fXzVu-bM|bU!cJe^T3g&{Cy)p%@U}WeL1V8`;KmY_l00ck)1V8`; zKmY{(-vr#(wCVKC>HhQ=GX087Z;|P5`t&<}`nf*+NS`hzHs9lIld~|cX%w)8vLFgo z4qZX3x+zn^dBEGicUjD{IFu=fo4As#(pt9SQA)Ea%re=$$^zz(>bA*}tW0Rth@3K> zWV8$-nKC#jMPB7eP_xo^d+lxbMxPAFzTPK$u}}JBCidR=SN`d*jpB}3 zd|?(pTg5G_Sk4)+p1lyS%ktdk3|*Mz`ETNON`21ag-U;sQK!`BOkb$Q?RNvU|0(T9LnYttNp--? zU8)+UnaVh6^h_D2vQeG1^2aZxt&HtdUbvk#+0GlkoNi}sCwqGrZfF|)EqDB+Vt$Tx z)yNvEgW&>po;XrvA#JUA2asDFzBK)GUI4q>nqA=!|(P3#}AcIj_e3832hNe+ZA0u zaHXwO*l_~3`tNn{^oudtaGW4;yuKsi&{4v3Tt{?6=?XXM_-*C3{m8Z%?IDiZ%5O&^ z^g2>_ekeukI$hz1LFn7I=O$4?n{~a!qn44dy|6DlY9T_}z36wGM9OaLs6et>kF{EF zT7%Y&xuB!@1)4n1L2L3nXF!wZIi2YE*Xxh#&+D7@`G<{`r4!)B?3&Ka^HE+WB42knxYqyqQq!D) zi(udjO5v{8rGzYFx@y*^Q7hK$ZQWS3hT@1ET9pD?kizoyX!i~6e$=|Jv~HfY|1&o=4j$>F&+6?ch`24%)N*(nTii{A6|{Q36(p%2bKg$5 z*CR|FBL?NQ%_v+O9WK=2rL+2*vMiH`Qrk_#$Z|c$w|LtRWD=WOj_rp|91FMQ$fL)U zOh2feW#S>XlYmE-XthI`DG05em$s}#q+T5Mk{}43shPf0Ez1;mLU6~kttf2E>LTu1 zVcM2kmx`X_yF3xTKQ+@YO0!JDNk!uOiIs|0U~xNWTY;B^masjar*YyqqCGX!&vJ*9 zO6N*fN-L#X>R%wVB@!?V$FXhCWU6ybU3D!}Q=KrW>bTthmCEJHjmn+M5*3b8sII=$ zRikV&GA1MQXf#@;xYxtO!AOHafKmY;|fB*y_009UIY8|v9m%Z79^q@-@BspsUqA2Repr){LhOmhy+Lkl?| z009U<00Izz00bZa0SG_<0;fu#{D3qXj~m;Kue9-wHcnOT^C`AI(^-o;n`IW{x<1Pc k$8~L%*^BFRrkRQ7gMcg$fB*y_009U<00Izzz<(g{2flneg8%>k diff --git a/canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db-wal b/canhazdata/5cf03fac-3618-4789-9e04-108a1dd5321e/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db b/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db deleted file mode 100644 index 661c46b92a46b90d0431ea8c311a31a95c1d1e5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5U8p2S700J~X1Zsl@AvmNE2f*UvDWUcs_w2QR}l$q@}zHD9q-&9xCsqUHcn_qvIc)hva?sm!UJ-ixoFX{EZ{H4238EZCY*Wll`CZMak zPxTD4A(WGQ10hO=ssAz4Ry-)@_X?PO+YV#>`%v3yC|}qsVD@c0Wc43^ zw0G=Sas1rz=gIMXtMhd&JUn%Rok(A}VbH(x++F8~AHMUm;j6L-Ly zpY1vDo_%xvpB%skGz;Z#du2aAuS3@UFV^4m{qs3QCax9n|sAM}oU zv6p)v@jl_*>V4X~&C}i~?@sS-?uakk%S($3^K-K^(^LLrJn~#vA-E?S&19|4sBiJ#`J^|J|?kygxzWQ6m8)fCP{L z54$y%e0lqO3Kmter2_OL^ zfCP{L5;(x&Zke~S<^KbP(>zDo={yqNd#Q!JpUnKq?iT@1oe?|PC690$9 ze~9?sA^!cu|2pyi?f9=a{_~Fid&hs;@t<(~pE&-tsK;dI@=C#E+qzrU-L&q8b=R%C zX5Cfmu2^^3x=YqwwC;j+=dC+u-C66-Sa;gGQ`YsZJF%`!tTP$eXFcn>)*V`RVBNlT z9qW?IF6jk3CiUEn@cR$mWOZX|o~-%(S!Z!(dTVafTVL87Z!ZrP+!b?^$Ubjm)Tla1 zs!Y>HMUW||mWryh&ZvlUCYrK})0*$|L7+SmKmter2_OL^fCP{L5I; zb1w{U3GWJDBH_)oTmy#w~l~SJNDV3Q} zR4Y~Gx=!kZsi4yuLg2+ZO6xKew9HI8VNpZ=UY03ZvpkW4XN_PYa3fvGO0yW=F^eHf za3iVGbxxxu(Ted#<+TciT{0yHgDzQ+gMOC`$AQx&dvQRzWG0?`^8fNr|FU1aHYk2H zC|(>E4-Sjpxy60%HAqTLrff!KXc$63PH0+{&=BBrj%h9{MMc_FWd-d?E66tAl6iWH z_*SV)>uXi=$;2vkX`!u36Ee0+U0QLg(wK~_Qm56jHcl?_tWuY=q4k)C#I;IY&X`uE z0p=gS*7?ULpLv`9|FM4f?SA<3AbfHVet!_YHVmH~hK~%x`-b83ZuqzxKH!G`@H!6@ z!CIXr(A%n%W|4#uf%AmsO~YsmdEsM~F)orQSdB%dD;^2TvI_Q+vZOkRN*FwN!=#FY ztg~Q+#qhF(F@?*zhF)AJRMu5Qp%sc)9&Kku_gcdv&R7(zP;t~!{>J;!P$plYRK&FD(tmI{0n>sc*WT7u%ER`_~ zZ(0cvr6#q#u7a72mnD~FOq-;E@k}I~<~mZeia5Xq(yXq6>8cc>Y@q8+q{(PsRWX%~ zs%Q*DaT6sKE0a2y>e5T&_^-H1%2Z~Db^P}~*Jb?wnOD3zDjpsce;F4KjEkoy#n&dq zV}9}Xsp6rj;t$isx2B6HXNuQnuWF`1Hte_|U>=z1xPj|ETtJ)4a+ql)j53jnjFl>` zMcz7YY?5`Wq@ekxqU5xe6`aSpfY!^J8cv@^G`vz0K8;qTRkCK4y7W}7O6z3RDs}12 zT9wwwidE{;SSA!iT)@zoYQEQTXU6{N|{0MDVT_nDC#Gz>y&k?C`jP083;Lbn+4c(U?({!wM%) zd0y*?X$X*m?Nrqe09Fl6BA6ya+$X8l5Qt_;Qwv?HL~9vraSiLPDbHwCCnnB@5L5CR z;%pVGrmA2H5%XZPYO*@#93tYlgh(}l7*uPJR%zK}u#?EsGT7)cI}g^o%)BxF$M_%D z|6v^mR=ePQWM(l(DmYVR3@hH(e*J&y^Y3l^|LAP-(p>Sqx#HRRt6B>LsEvwWeGH6xWAe&aHOZ3pHG>7Z|Z@ik> z$_dy1ueiF}$_dy1uejRV$_dy1uekfHl@s3obH&|ot(@@wADX9{amg#0D$&a6P_F-9 Ox05uiI1)etz5fAt+*RBF diff --git a/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db-wal b/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db b/canhazdata/5fa35261-bf28-4127-a4d7-aa0eaeca86b3/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db-wal b/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db b/canhazdata/6347dee5-6c6b-4024-b36a-6ce3ad523a96/tests.db deleted file mode 100644 index adb9cbae371d305f5220a58fa0971c22efaf9045..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*(QDH{9Ki9rChcfJ+)$ArNYQo7hiq+xTU#exsTnUb$9zw3a)3K3>b*N%!}!Y-k$YZD;tX zWPS|yl0mtj9QF@INsVjh?|;WsJLtZO-&qv7zZUHHALXyl{c9?|WudCV$|B}p$+A6B zwT>dog5_V`6{qra!8WQ$|C#kIPPm7~LR%00IagfB*srAbI z&s5C$_J4IJLas-qF2{}`O9T)=009ILKmY**5I_I{1ZF5Ont$Z=<^gk%%nLI~vqV;l(V0Z-3Tu<;DQx^H2Tt`j({p7Z#^oepS6G|J`m3?p$1y%kB6fwf zIjev1UDj;wuAHy@2`h!wTq!?n$|?W^UydUAexS$lJGe0rYchsT4xW}XiRz5Qk< zAM}QUW_^^|y3PD}e0FzcZIronn|ahd+`DtkyxL#eyn0>9Q^w_^voB}odxvXBapPxM zC2q5tUjLmuPSBHbPSU9UwDv!X@naIPE3D1g>wi>#eNyeW*rzD6%~}16oosiv$a;-k zfItXW@2lfAZTan>*KcpPHdp)Ic58KOeb8U+w!5v>e!tz@+S(uN>~HU6d0I;^7Y~m6 z-GlM6nwH_t%5|Loh4j%!E15t&Y;3Hrx8wXb8ZR0pE54lNhT6@WPpIEqo3+IC_4U^n z|7<1wST^fvv3&vr2oNAZfB*pk1PBly@Sp-AtL5qN<6?|zWwv`I!stlVgO+D70t5&U zAV7cs0RjXF5FkJx3WO}g@Be4n^EuE6v)%nL2Lc`f0RjXF5FkK+009C72oNYnAY}EB zetP(_nBk`yHH?1}Gu3@06Cgl<009C72oNAZfB*pk_Y1`1|CMz5p;sw&#>d~o&3SY47D+1dANb_E=LK?hFk_M1P#-u2$@-ac;k?v~>oK-O;Cf`q_w zLE<4q$Q{Wo3CAM}2@;SHjz0ntBqR_NK_UnNiGT!zC`XVI9tr`4BM(6ya7sx1?Ebnu z-mYm+Pj}b-Q7vtc*Jb~z{Qdpf^{H~X>X&Eo&(HU?8LhuP^FV)NJ^wq`|1YIKrN8ed z*m)z{`L&1gBifoDM?KGVEWHjcAnXIWHC4NPwWr&f0Av#t+YQsVlv;8 z_AIWc$%-HC%CA8y;t8o)&|T`M&S-NBZ1X7nSDVduO8VCNUYKU~(4@;UeLem9*oOsO zv$?N%oKzg~1G8k}9ynqS?ni3H5%VQS6o-shfE}Ioq;teGMs@{sJj(=myl+LD{nnYe z`Im;jn7rrduHP|xVQTB16S14MWq0&2_Dnr7Qr~uB&rcj{X8uJl`=wXBXZa;B>xD0& z&6)YDFMHq>C!Sf{Lo!Dix#p}6nQgGmz3d+xo~KOzTgDF>il1bc`}*blnwM{$IeYed z8aZL)5A2e*5A=Vji?gO_7(S9Ry-(yhXfunmyV>SJ_D{YWvSQ{1o69YJ@-^w#( zH?~G&jRYL|1G7ua!mIi>Hq;tO%k<{;i@L2bt;hra^735v=4^2%*(BMOJXxD*&XTg< zVE^PtZc)^{a8vk(CSA(wYMvpB+*a#AKa58!1I$w7zEnl-P!XXQ;rB-#$`5bP)~PRX zW){7?aWh*qZX`$bld5rZp7b601F0#fV-?gxbu8<3pVF(gUPNy11wPMleD2tR;YXgK z8-``-b{M336u6ciL`G_KlE{l)M~KfFypi1~I6lt-pJ!#?D2f6O6>4k;Aj?~s#R8vi z$?^I3cS6uGOyd3m_<4@NbaQXiiTqL+KhJ@m<@+HkW?rxigSLR2S3kAuKqN7<~HRIG&#lcE%>=x@bhD{%n zSMt*sK+gl9AOf zP;-Eu2SCqB9_gUfx(cx}qohC+dMsOvuDO|wt~r0>12=w08=0YDw@lC~s>L2E>ji>V zdJWf$ux$+ly}$|DbuA|dqn_?3R;1gW8|h(S2YMR!;wZ6W*9=`@5A+l@kBkb@FirBl00_N6Y-%DY^Tdh#k{LoT0HNi3A}eNI zuqk~*lP=3|07Bm|B1FS%8KDtpNXy)C32xBT7!D={k>BTl&+XqYV{w2EA@KcN@V-7OF0$F&#gRGB!lg3t>kgr1k#3oR3& z>CtR~(6?}e{?w=x4YA7%t-?AF*FoQ9y}-~)uR%)X`=A#Mr+DgmzOQ(BB};rmzH|9x zF{JqccJP~jE#Iw;jkmS2^?hq&8-+5y;ozFa+a-100ur@LZYrEZ9-HlZ>|wZ(nnEYx znnj+a;k%A&^a4Fe*)Vq7?Xj`!CTkfbp&ci&n+A#Ri?V#?JgirmLW=~MORO9Vk~v1^ zO9^M_chLWhG;ggmg+4tu(jx`vP5R!Aw$LIqGCD}Aw1pPY7LxCZte7Oq)IQLp%W@pp z7P@Jq))35=+d_-|i$a=e3vn+)69V|ZKwD_BXkZ{Ylk7@<8hf0uh_;aY$SsP>uW7@X3K3M6}e(xLa!UyAsY|n$F&#h)R{Ol3u^v2VR2Ji2>dB7z{FBy zwuMg7RXvzr+H!YOTj-smHHV;fxiO^TS{yuOz0ep^dJWf$pzX)Mnjfb%I7P>iX?dv| z>sBv{b=zly+k?=Eb;C_PJN7-ZlZq*N0p7^&6-M9sjMe}}FG{WfwUH=EtY)1QXmT4J z42nK=Jw^X$egu$)ak{RHz~~0?sfDD>7bhrldZBKy0gRUKi>#P=!KU;LO}Z>U0Y;l6 zgb2)*F&bu&mbu|lex2+kY4u2fNkQcIC&1`N!KRxey8_9Y4PdnV$SsPR7j6pQ(4>JDhqWw{DL+Q$u~cF|zA4AKZSq$!Z*azYa# zzdry-FBNo(7_cgCeF-)nuGMxW{_@3BWal+eTD=FNZ&dDq`$a*mWJLG&6s3GMK%dN_*2#k zB(3xstQGBrUc_}NNP4+M(!T45aoE%C)Mh=>Y<5}Q_x(gq9mk0~0h^M^i-hAk8nB+- zEjURpgQS-v*MVApjzFXXiOAo6=RP?}GA zx=FGtkgT~3l$Ia4Pg<1jZ4;&;HAOB^T19Ria)Z917oqeAfYQrmjcOBTR#1Amg3?Q} zSXw4ZXOC-v(x(Qa^!v9<(-53O8!W9tdr(m4`^tKOrIlX8^&(>1082MHOUH?uIz}g8 z6Bb4`dtEej^uX~ux*0}+6~?jc8>x_`m*9;GOE9W)_nUy}W&rd8yM zeF?n?rr!XVZq}(cab_0OykELm!1Qu9!lNOJre(r3@kr4xeOd_94{eX9p?I05RcsHB zZPE)gt@IkM7e(*i^w~~pahi5h*JI1&Bs8dly>S?uF{9}?)xF5D!=AxrFtj`&O)n#Q zv-<__nQnomo04lmZCmw>SjFw6K$8n}5@`DD)-?U)#q91s{xVj)Ep#W^V{iU)Tmv!)zI+5p77z+@SiVGe<%b(&%B}bgN)g zBxjOc$3V6udEk%TIn@h zFXFXp;OQ04(`;NcLuRX^`uW7~6ZJa}V7E-vDs;upgkCf^*3;JWY0$P- zXI`|jho92-@Gk5mocH0%l{&q_U^>{ohOTwjm9v zkJWEWL36sPVVsY;spU7ILEmM)(2`Pm4N@xK2fb$5e{Vn~u(=j^Q+{OgTu}?Wik)@s zt@&f282u_t(zuxnvvGBcZE zF52P;O8p`~iy!DJ?-%JgRuV*3tVgkJv1QT>mo1o<7&?2_XeMl~Cf9aDVc}c2S5*2% zR;h7$h}Hiql3O!czto zijEQa9?6PX<08j*2;}NAlQlXsAJ^i=oncodK-{j z=@?l>$B6vMEsDyoX~J93c!$cn?O!ZZ7bkZ|Fr${Ko5(9N+sHDT$QMXzG?C8^Zz8{~ZYvq0m)poHyh-iBpR!(PBP+cI zYejpZ7xCH;-;y7vt#PWhI(Fg)aj3JIO+)syku9ATSe;Z)0>|t{?BQcCw1rf?0_zp3 zUISIHO0EjEwfu^w`3+4jQKq2k3pJ_w2TQfU8hMb;$NS;GxW;(3BU*-d4OlJTC0Q}2 z>5<|`&}F&S!s@6NSi=ittVX~gO<^_nG&CWsPJz{H1*;;tg4JulYWa~{6qR4ogtwr{ zDar>}-Q5zazg>^4VY$rJDtN{2gkHqekH0ZLuDw>L`ox(Pu3n@2_9m`gl{1V_CRb-e za=_K+YH{`V=E(&^KTy34)+)ZmvX%7$SS!7T>qWfw0f6-`4%QvV2yDCK>rOB7Sa)^L z(gQ#A^w_ro(}?{jvczi=ufiJ@u-*l*UXxrIYE&st`2$VvpnL(=x7P>j_t#--WI{q8 z1X=GQWEHJWybEM4-zQlyr|K2R)n&QXBvK-Tgjw@^ct=gvGtX=1iCZ8By7r=4>cPkm{E0q@ES}p&f{af~+BWD{Q?Ew%#SVI@H$1%1kN+n%qel zfUPfXi><%DJhbZ?xscN9fa`UlR?%{|>ws(dPRWWnDg6i9g3S6(#4gMSKpZv%zipokeoewlQL)ihYZ><5>UmVWY zuub8M0U;`U#eRieMAz>DU9Z=vLUCq=uCqJ$rjF}ft5WbHdr30k>$eXhY-B@HXVX`+ zzl*yGTt(~P?gn4W_exew(r0QP$kk;zZiBC1IfSrbmTuqRYs4JV6kl^MLlffbTfx`6 z3ur}hg|BymujNN>QB;0S6W)R*w^2S<^URh{)#K~G8iv>~UIuIxzhaL0I+x0 zsYG#R1+aHt*L}S%hp=S=_8lZR0Q>gs0rrm;h71vb@MXeQAwE3BNiPt#(rdV0MA%<= zbAFt*hZDAAxrXn!q3)z?dMCTbCVHYJymTiq(_WakUfSsiM_sQYdMkvz2ZX&_a+Rp< z5i2vP6lijpG5}%UF#=(KzPV*LHu52@XVHbdhuBrLLhc^=p&VrYcA-fa$?Cr(G(!-#~CQ|Km zI(pdi7-Xl0>nCh%cH+fC$li_Utw8o(K=vNVm7=y+tjwfRpviM713>njqe1qsY{l8g zh{S$kCBK}-y@ao##dG(9vgP|FD`sBiDSbmOnw7Gk?3-sAjkU)9#zy0Y#!U^g;WwVs zIMuk&xZJqE5j9@ixY~GS<8_T6Yg>Re?9v?xn2oSQn!;@EWN1Q|{WHMqy#>1>xq{hy zf!Xpywdb*}>>P8y5rjdAFWJf~K-h=3^fc8Fs_Fl==qP9=0%%oDF$=#Fz zK>MzdLHlDZVV^c~BDH@A(%wf1D_U81A4priW3pmS$_E4OLN1!-tRU@M>XP;k#IOy+ zbWZ|mBk+)>P@DS%nha`bb}IBD)?NZ@@2gXp;>-$b@7v7Ud)ajM>#S3I`mimNwX+An*K*aHcZ|r| z4~uad+EbJRwpEl5k8;uru&wkOt``y8zdn*5r|svk-Sb>OG}t1$p5?HiBeX_XWZ99P zq-iH$qqL1)N4z}PUPNyNw)X?J_eri8wf$mcCY1tBo<|t~wlD7lw!gn3;B90@a(^GR zy`L~vwD9hJ(6)TfWW}7669(FaT&GxSLEGJJ(DvgZ;D%+oD*?9=dPq~a&7A^G2)7Rd zxAzwei{uJ!?+0$n58k4v{F)}b1x+qcKEUm>+sEy9h=>~*Pz-~&RSb*03cZN8zjZA? zuD!obeTp+HyuH7~+xytm*wTPoCU0lYg8OPV?;M@Czqv?$8SsJl6y^YK73Kqk>hCJ+ z1>jbC4cCj1?R^05101-c$W1$;&APKAwhFK9MyVe3(nOCv%XVWnUOTeIGi2|BH!8q= z0KmOpa@D9E5GymO6lih}WdPuQ?hb+b(ZS4(yh!hV25}!ClohSadjP~O-!)k=C*_5K zb|KekmRb<^$?XyMw+BNvOw)ZF$c^AbnnG^w6=*`py$0kyP;e}gE69BS$Sps5i=y&t zn(!7hxt;O>a-SOsxgQx!-N=E07|gALSnO8lMQrzpJ|(sf)TvT&W`(&AY+~;H@}OHL zb7zl*`)W4t+7WYqd@y!HeTs8Hw~F)OaZY*xx|LqT^&;rL572$E1l@5IbrL_;(=ar3 zI|>s$wAg=bqi0!(Z$yD5hVK1{-U@Ud1au#eTsdm=I^dK)(Bxjq7tnq8&Y}D7R|oWU zBQp~G>!9v~gtMY$9}j}M<@+Wp=2X1{xz4a$3+ldg+tmG!gTNcM>COb~M))C3VK;X- zG$HJs19l%QSQg0@>^=zWmLI-FQTa7Zcng|bqn_;H?6E zc%YMB0B@z&aJ>lH)&bs!IC!Uq+3|Y;jVy6kZ?|ExWow+!*ZsH?vR-e~i?^7Wa15L7r#eFrK&m9AM|6Aj_0Vl|dA|3FpB39ZCLW(Dz}&TG8r}he6-+y^|GlQjQpC z7jlt`1%00$k-ooF1#noWyE*V1A&4}E-`p|KgaGjS!0*Ea(;~To--m(U@&mXiD!--) zZ$XngC?DYW?K{Ko$EyU6Oel`Q-ztv9o`qhs?2z_)e%w!fg1y<_-^%wgj>PV_vW=_n z$amL+^?Kdu^#;4t8;0Jl^>S#t)^siHT9YTXYfWR`uCw$D5J+L~do&=8BiwuL!>1MZAdybU^krnGvY+H<%43{kdm>9Yfr)HA6v1_|wdnF95 zAhE2D?$dj6Hal655;lrAN}VW*;=o}Cw_9%NdSUD(x}P{~y%VCzLB<1Ml-RLrhHiU4v8`UmW!M=SY!VL!qoE#ny-@eVj>%*& z?Zk81a~(S{{D_stU|hpW&sJWH0+)3ZM+R|ff282v1_&3njbTXT*uOTp~sFg*m{nk7dm>c$7T(&(>O@oV#t8Tex6V3|DcN>E;ZuL z;)i><4ngB5Uuk6@rdIYdSRR90*@u=E^1H*tzh$7!#yXW*Qst`K1-b;GDAaec44aI}Y z4#69hX7&*@vkyxKVeN=mnMtKUljlE6sGoIix~XrVDKY#s#ly@ zVelhE864arF4S03WHNX*Py`JAys%3iBXH9nDJi2SzE^evg7y(=0!q=T%}Nk0Q$z zT3XfCxTQM1u|i8L+A6nHr^i-ksim!OOLcm6g_fFHi(9JG^DDHptTnl%I=#a}OH0}^ zw^XMGS!k)DEtM?Q=w%jKTGSfcQk|Y?p``_Fkz1iaZ7c2*hQ9ZDju8B!?YXF_g>W2)G5PC+y&JLz8Ua1u2m*%jwJB|llA`lfp`V^!$7S{58F}d?eSR${SnD6VC`tm zC)50fCNH2&``EN{-*|i2K3wi(Lxv>!r_sfBl=`kjYsnu)7n^+lWW}7Odx~Ggd6sL@ z#dh0{y4e1*+{*@cl>68ahDcL=Y~1D0g!q5l|Htk=wp)~!bMT}HBER6 znq;e$ppWg+IQrQBuH4OrY|5Q%Dw4&%g}31jrP8=^xS-t2rhyN~9_X&W5G z?Z65`-?sI{VS{~ak4BV7Yz<5{$j7o`i!Frd1|s-><`G111;jT1;zuP{liG$@nMtKU zlNVA30P*|B4&vWgFCKU!M^gP0An^@CT+x#A8z6D{4$6u-DPIh<3%M?^)Pls%?v%to z&S4xGlu;akh%|-b+&9pKQ2Yx(@r{CSkz7IX4WPLE7%qy+uW7Pr^!NKD9j+wQGPJrWgjt|E_2_i>EWgb_tEcPz+A|C%^@c6Mh^(@Y;@c6Oe zJialN-f@{co;_m*kKZ?b9{(_q98M?$xeE8;;a&!ErPpx12*@u#njfbf=Rj^mVVp$l z9WW%r`GUOnik_u3XmTMkROv=Rcgn@%1kN+np~j_0OT*2 z5RiXmch*OaJW2Ntfyj>&>WY@IKMo?7@1m@jB-YeEkn1ALu^{sE<00}7=1`6-%1Dl2 zM4Cc!?r~^BNdBil^5X^PBDsR($ARSXqqrz4zorRqL6dAL6d?IsV@2|h=2VWH%1o|; zS?pfuMNIxCF!}L1RV~h}F!}KsOnz({P%e|nv&YR~^7|*k! VN-wcqG>yuCJn`N6*RYY?{|~Me1tb6f diff --git a/canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db b/canhazdata/642d1120-d1d2-4580-8926-7be3b8aadd45/tests.db deleted file mode 100644 index 39218a00a22815be3eada36aa49dc467a94df622..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 YD+cd&v~oI->;E_GAPp;y1du@Qe__O3g8%>k diff --git a/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db-wal b/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db b/canhazdata/659fc353-7cab-43a0-9842-631b4340c007/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 WMX|>kuR%!hV;Fn9<7+(j`2PXpjjc=o diff --git a/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db b/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/system.nodes.db deleted file mode 100644 index 5a880ad8a5faefafe1c48acba7974c3c23c2a11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 Al>h($ diff --git a/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db b/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db deleted file mode 100644 index 1890b4c3f0e51e91783704eb9a16e9698e8fdb5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*&uSAv9Ki9J?4~6Ju|-9Sm!M72!?c_1pJZ>bXYmzuC%X$lYfBnzZ}vevc^T$`YDYnHlZrj2NS|4*RKak5AI9?z;U{=k>0e z>V8_^nDh(B-n8G&;k!Y0`mx_jhFSX7bU(XutLkK{VEkgbm3x?_({e6 zlpJTH>M%PSo{5TiU&ns`yRKQFhwHgWlltwxf5+svS(>J>DB1UaQvb%R+Dp^gEHX+~ zf9*(I$*Yo0s!0E(jVkDVJ*9u~Mh+i63Xa-%=gl@2J4@Jf*WdRyq&0)@dB(%}ms~ zVt;>WCJa;_frgytlW5j|YwPh=d8W-w3KNi3`$OM`+$hT)|K{fAi^;#nn*J=CE)%Z^ zAbE0R#|0009ILKmY** z5I~?r0#Zox|NlZfD#4uOY7ak@K!7PAfB*srAb5KpZ2q1s}0tg_000IagfB*tUz?}cD*xL_1vl=Tt|1NLu17znyAbw} diff --git a/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db-wal b/canhazdata/6821caf4-75b5-4342-ad71-e0f845d78e53/tests.db-wal deleted file mode 100644 index b3a6f34d23e84d760d0b4bb13d31d56aeb02a7b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67695 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 diff --git a/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db b/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db deleted file mode 100644 index 31992dcb3519ba44eb7887a3074de966956d641c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&5qJg6u|L&+XA8Z8NU`9gULV)rU;bJ9lA2ahp?qJ5}jc(5GSsj2XTRK;?9i^ zp%ZsL1l|iBa4}4ngr+e5Z*sVu%+2XNzm{fbhxW(!FES%;iFrHgqaQERok$@*zCRx5 zUN>Xj@p`d<9~=*aCQGU4MxnacTC{m$%YVtly8gW0S28LlQK&AqwvF|hs@m%+-bA6g z*xHuWpM4?n`Ce&U`Xx)T)%;&4P7TU#xp}&0nTO+}N$UB#;b<(Z{b3O1Eo%_?Z}VL% z@CQLYJsa6rjyxP5oj)=)8(CkDJn;6zb8}i|zwDkqGAun}a&7c!G!FO62WsUbVW@SQ z`u*Rv)CRh#;&&8rZm%ud|7Z2<8_t=d^v_cj}Ew)A2g>isSq3e$DebjaIWEEPaHVWIqi1 z-iP_YP9Mm+rKvQQnVOwi(+h&W6S$R@Qx9sc({}xuQ*DJoEvz;}&uy>D^h`+kPo^O3 zxRrLtaVr%yr?B31I(|!~>o*!fyH#s=tzcy)neB>P?tbn`ZilxJQ(q}yn~UAhHkONW zv8cAcZQr#Y+fVJ4N%+O?2}o1_QLme{7E7tcQu=IZJ|?->>2&&8#p;&a)L1hD2q1s} z0tg_000IagfB*srY)C+g)a?93R^>B|WKWLE*_Emd6-F8a5I_I{1Q0*~0R#|0009IL zSO`cVP5rOecT^<&@n6kkF)bDlKmY**5I_I{1Q0*~0R#|0V1oiu*rxvK;R6-PfBs*5 zEoOrik_rI?5I_I{1Q0*~0R#|0009Kl^?ys>e(0g5kVc|c;N{tUfY>YuAbeDN&w4u9pdVaD+ih`*hJ!h#~KN_*N3c diff --git a/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db-wal b/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db b/canhazdata/6926addc-d307-4d23-83b2-17ed2e16ea38/tests.db deleted file mode 100644 index 82268f25a181780e35f143e486e84c44c9dfd307..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db-wal b/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db b/canhazdata/6aeacf6e-357f-40d3-b859-61e2de1fce59/tests.db deleted file mode 100644 index de65492a6d0dd14321d752503d1ac3f6193a1ccf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&rTCT90%~3?zW^&j1V=3n3zUsgNK3rzujBqYxn$%A;<*Wl*C z#Eb7BX?zd-O}ph_z$}F=3;j;=V+!4w&hN9!hRm|FzkYt>D{Pfb%dF17y-Ib=89V%V zG*GoFwP}T~{}+goqXAQ7b&7r-RFzip-BVisSL|5j-&V)U3PqL&Ri%|G=C4t<4=CQ} zK~-s`V)-{;v-S0zS06TibFZ|Vm$>8lV9Va}#)hu#kA~UW_Pe3n|1^lhkxbt1CGvpj zyHvGxeULi55|(++w_@h6Wm_gBS^|4IJp+`mTgJrAl%D^<+Dk!O2MwTd!J z#qw|NuoHe#u|bvTe`9@fK0apbho;d>u00bZa0SG_< z0uX=z1Rwx`dm%vA|8=$e&@+_{uifgh1bns*(7ljF5)gm@1Rwwb2tWV=5P$##AOL~t z2+;L^u9jXtt-z2tFSK@R1xAV?KmY;|fB*y_009U<00Izz00i!qz~uQOcWcNPZ6Se9 zq1hB#|BC=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?50jD zvW2&0RxhNtX^ikTjN#t8F^RWk4D(iviM$-O0GGH=nC)LSq{dh^BzZ_XI* z%^H(5YsLo@)&EhQ=hGV+`|%F)Xt zX~JHs7NOfG3vxK@li@gY`eZK-NuSKb(@*|i{^?&1i`U)aM{e=bsCZ~p{LU-x_pU%v zYBFOpDrc3b@&>X*$88SOD>&ndLHg)YOBts*tFp50%&0s|0;|;L>g!aRAycc==L+pq z3dqDN^|^{Wm8N8DmHJ%iok|npTctjCL#NW1cvh*;9n-1gWB&0goqv4#nRkf)j}N17 z52IJy=qWe)z8k$hik=%qkB*}IN6`yj^n@2Z=tckVdv_DzMw2Fx0bZvxixtFrArhLm zEvF1Jr!$>#h{bWZ&LrIAB9@dxET%%Kik3-SLAM}Uu5>I_lZ9&9mgh~BsugOv2LkK;oF3#892~I@G@MaOLeAYQYS6Vpu2(W z@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(BIKlzI~h-BO)aZB}QM%+o5IOQmWnE;-FA z)6a6)OXY9^QqD@jMO?w-jBqy3WGMxMfD4K2O+!sG`xH)?R$PiSg_ESinLbe(`+wP1 zHG^yHp!Wa4=lb;jKl6*%#>FG!;xCip!AbGVwD{VzcswZnK2tnAQ~Y7J_||Ok)Lik# z{3VSP$d>IlB#iK~l9>xuNEm5lIn`ytDVMp-c%@k*^Ui)_n`~MoQNlX(gssm~0)Q)x(uRq8X#?^JSv+b+-e|7kyZ*pL1@j-DS!kBy^mj(g7t-qQjT z{xK4`W(b74dCFlXmbb738pFyL&tMLkv^mYwk_#njm1-Fts$f0~UQK!2!dRIz*Z~&B zXr0D75it0z;ws#MwNfsVl+m&^YnLp6)lwK&Q?27hHi(RsMpXXK6Zf1Lm0`aj&@um(m;o@v_fJW*0)t>p5`um8_{ z{_@WMADb^;UMRk|P&~JINoxVuOc2M0AOR$R1dzaWOMvX!*?FH4edp|)kV96fps zX+U~6@|6jL*G;BB$KmvpR0aBb=jQ{`u diff --git a/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db-wal b/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db b/canhazdata/6aeb66df-2078-4c89-bb09-72fe5bca2bb9/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbh)e;4fgSCtLVbwZ*i})J5CznztL8zvpl{M$ zH+_gU>aGt#XMn&a7m%<_l7FPbIAU@<=QFX04fd~}-(*JI6VrCu&wgB`JC;Ix{&dvS zy>7;|-zKhwUSXWnuY3OYnxcVsj9uL;{7aC z7hBt~`m?V^KHn)0i+^M>wwiBr;#9BXmb{ZK%RCq!j#94<`iDbd?e)VbZ&|%C_>gZ~ zVbBZn>B-3YV&upE;Ovp9$;jGbqg#V7gJHB++E*(d2t%#Y z)PMhNOKqULD*nzQ&h52fum4H?df$Iv#gAF2F1EIb^`~dm9;;qQoNdGE&%P0z&Oh1t zE<15neT8#N^W?2L-G6L(VbpTV&6eYq%YjpiYM#>y8m`mq*6U%jQLX!pP*{4uHOlVx zyZ-KU7p8Z4?HwtNMW(=wx?!{8JIx?and)WF@msaB69mm})%RQVhF3o?Q*kWiB9qsu zdVUyoozN{eoLX2_({Y2UQ)xtDHL7@#?>5iNv?H=@k;&Z2JkoD}XxCaGZB{Dfaw~1< zu923yYpU&U+YjyM_DlO(7k|@=lcs)CubZ^yOR4!%`gCbJCb`G)c>Gnx`7ODrv1SAi zKmY**5I_I{1Q0*~0R#|OlYkVd$?=J-%4ZtM9vqjGGgWIUj5G)!fB*srAbS}Y)d00IagfB*srAb_CoBFGVPgEF_ zFQTt8`HHFJ^b0a8{uaX#KmY**5I_I{1Q0*~0R#|0;4%Sq{@>DN+Z!T@bdIJ zK$lIL=Mg{v0R#|0009ILKmY**5I|rh0V!-#UwZksisV24zqn@WN<}aj0R#|0009IL zKmY**5I_I{1TGX%_n*k+9_L=jwBLcrWOpZ-{63Q`O}5GW_wQT2z|OE) z`c_sif2P>vj6Hw!VrWW}tXYBSj|Fo5V#o}cLwTjjR5X^V?rCiOKe=KP|DxGf7ATLa zOhsdh`)Ux=yH`&FDw{ASV{+>sT#e9rc>KD&H> zR6ct=EV7MK-&@n=Ivov$vg*g7BT#m;o8aB^j~lvp0>J?lBsdcoxCte(BR zy0*4wMOze0YVwC=Kh2($V`rmW-&kiBwIs~(zhYAdou>S;%1!oH%l7|i{N}s=Eakte zOhsdwWu7WudVU<{QCw!JUS(%?e}jB@DaO~L)Q>W)3#pYC%Ru`|CMx&kATG6E z4x%zs38QMdOqG|UQh8o3gEEL@n#WYP2t%F3ewf9Ys^zLIbTY_flIK({^dgz1fhY4k zDf}!;!#D~V=ewftXHj@rsKbyJ9+X~2ZIpq`RG82t9mH802T|y?CyMSJ=DK&?k^70e z@3{MhyI(B#f6M*Ta+^E~eqr5xQKwt_qD~)Etr|N_->TK3RjWm-R*Sq=i@a8gyiSYV z71ryW?_KU)@BKobV3D>8aAE$aH;LOjbI#6Or#t&_?$hn<*RQsJnC8BT*Z>GX00Izz z00bZa0SG_<0uX=z1P&;`nKQjUVXj9A>+r5Y@3q-{`digrpWr1>{t;5AOHafKmY;|fB*y_009U<;J66T_!G17M~+Ltt&X!Vl+u1s1X>n@IF!L4 z^=RN4Ka?H~z_S`DUl*y@uXUZI&+CkYL(hK{X6QNFJpW-j5aIlQ=>Csvq~_N?T801w zAOHafKmY;|fB*y_009UbRROyG)9IY-oWrdbN41B)kIR`}VR0-o=Ci|T>i6#Kj6eOC zeTZXFf4^0juPeaCt}(AwHF9^2tA_0v^BUuix2G@a?s=#O0SG_<0uX?}(GmCxI@uVX diff --git a/canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db-wal b/canhazdata/6de93089-300b-4e46-9b73-8c55d8725a7d/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db b/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/system.nodes.db deleted file mode 100644 index bb16cb204ea236f9ec4bc9fab7b0046cef986be6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 N0R#|00D(;r_ycOn-M9b% diff --git a/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db-wal b/canhazdata/6f67ad7e-8e52-4d1d-95df-7b04ac069e37/tests.db-wal deleted file mode 100644 index c445a08a7640882298b222ccab2b8b77d5cddea0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41748 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 NyfE6W{G3I*{|^CEfe`=z diff --git a/canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db b/canhazdata/7072586e-a64c-404c-9388-fa0f93ed9429/system.nodes.db deleted file mode 100644 index d6851ec2df5610af4d04cbb7932944b1ed9e87eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*!EO>k7{KxQ*j)%)jT%inXv`kk#*lzeD1{r|3{N4j5Q(KUg|zWxAH)NX;?0W> zp~RQ)gfp-}(jb8}+ugu_l8;%+Ftgup=$7nucYpr)CMoq)&C0wEo^Dg!ic;5~Z@Q*7 zB{8dbTrbe{Z@S8mIXY@V=qj`lOiyV2Z`rZQ-!q?;l#Wplx(cntF@H;E`&h@vAaoU4 ziCO;X_sa9?nPKL)WJ1e%uRC_Sxniz7KD4dN;nm1_ciF!hD!bSB+n#NA{bt9j*?zO@ zd&z0b(`Cy~{lV&%&a`D|+47>%Yp?9nwpzL3_;tcIEk=(9Uk1Z=FL$8_AE<;L(=xyR zHCs>66CHno2y?z-_W7UYZ?^rOP-*sQOZ``-;o&oH3x?;`$(1^WQau!R;`BKyhlgZ?( zj{ldaSCH`$KmY**5I_I{1Q0*~0R#|0;NAkF9NQdzOzW@`(e9Oy>5-~?r$h$`AbPv$>iM0YNAXmm-Te?n%8ZEs0tg_000IagfB*srAb`Mw z2#89GIrZ@6gN(L*5Sg74v%V3pB7gt_2q1s}0tg_000IagfWX!Q`uM+XEb6?5t3Uol8eWO;qm7_1JffB*sr zAb`XQ!vXOwh+|eTHNX)J07B{KbsDp4CiEMN)op1)H zR|F71009ILKmY**5I_I{1a??J@BcYI-r@ZAH?<@7rtI(JlQ{wiAbaKcn6_L;;Pbw%uu&Xa*G085wiy z^&t-u#D{nw{c999?LTI&6&K2dy#i)p+hJ^f4_Z47tiST zr9M?2b1v^G?4Ea?KKIsp4leH*+dc2e@2=ibv)?ODL@#c2`(}>|Q|InGcfPvʒE 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 LHXI2cfzE#cvw>Sk diff --git a/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db-wal b/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db b/canhazdata/728c1ab9-5f96-4cbf-900f-52bee15b26ea/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 T)4t6A->?^H*l{F)1bY7iq|Q|A diff --git a/canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db-wal b/canhazdata/7681a94e-5293-401d-83bc-d27552217603/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db b/canhazdata/7681a94e-5293-401d-83bc-d27552217603/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb$VynAxXf6Tpo=oTjw8?gHDka3!}`^+|FVpC@C z9uH#Shi%IaL*G6$(+^6sOmelUd{@Y$b`)?o@uia`EZ(u~B#7O(9UoEMuX2}^N*7Ak zN(-es>R%wVITA1p+qSHZ$yDcF}GXQz{H;AOHafKmY;|fB*y_009U<00I!02v9-|b=}bw8LZ$F0CZL^ikRqN z009U<00Izz00bZa0SG_<0uY!F0ZL3m-FkRKhQ^3q`r5IPLhMtspir-Nou?Y z0uX=z1Rwwb2tWV=5P$##AaJGy$`47S@uacQ_(mJ=Y2!>=oUHh|G0jZLbvDf`$aP&z jF~f0Pn`ZXnI?kq?Y=`1q5P$##AOHafKmY;|m|KCr+4w*< diff --git a/canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db-wal b/canhazdata/768d5285-4034-47ec-b776-8db7a201aa71/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db b/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/system.nodes.db deleted file mode 100644 index 5a880ad8a5faefafe1c48acba7974c3c23c2a11d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db-wal b/canhazdata/7a19d4b1-a599-4855-9181-0fb610e77b4b/tests.db-wal deleted file mode 100644 index 06ee703b883f4a69e0de4c71aa2f9b4b1b97f692..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59464 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 Q#;Y1H)aA#&#B}-p0dfs_b^rhX diff --git a/canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db b/canhazdata/7c4c8ee1-0f88-4c99-9165-ba550681c7bd/system.nodes.db deleted file mode 100644 index 1dd12d24adbf6f42d2bf294bf73ff222d2624345..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 diff --git a/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db-wal b/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db b/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db deleted file mode 100644 index 821106add49bf1820449dfdcf0a3b0c731f53724..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-%is|9Ki8&)^21=j1V=3n3zS`f)@q0{@Hprxi-FnwriJ6Ma)>lJ9!W<_8Q!I zVd9PNAX$75{B?i0Fkr@@qpKGx0k7ov{Ikn zA9j;EDYK5l1jclP(sZD<UXL1~)d_Z_SuFhqo{Y<_HEp-k zj$|l~Dz;R$`l{NiUYiRY%`Z^VvrJk=&$0(ds~L7Dng3GhVd-gUvo!y(*)nqi+L#{G zwR!d`fA*@7{K=n%a(a6DRpR23g+Vd~1Q0*~0R#|0009ILKmY**5V(?nR(Ug7izrGM zx#{}EmAagJV?8=oHTULhhyVfzAbEUCE8$SInD-p9?eX~#=J`4c_5I_I{ z1Q0*~0R#|00D(IpAm{(h+X{7b&DL(0RPOk_cfB*srAb diff --git a/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db-wal b/canhazdata/8221949a-42e9-4167-8f55-069ac8c6d998/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db b/canhazdata/82b15852-1f39-43d0-bc7d-7ae02b44b1fc/system.nodes.db deleted file mode 100644 index 53ca9e6acf3edd0e35893ddaf2b267b28679e549..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%WvaE90zcZpRvPJ;&EVwg4jeT%M_1i{5nw(;$gv^Bc6CHDz@#atypnlB@UeU z3zkDUa^hbAao~c)kt?h~95{1WUS+09YYA<3Q)$x#`W?T3g5b9i8oiy1z5)dRSUpv;4!CtihlfAB=w_F3r`}d~jOjX) z4SwsA?V2SHAK3q3|3GbT?C6#6Tee=OW6u9gSMQ*Qb^mGBm$|>z?D#*<-#qs}s{5C- zu7{vd;(u3jz@$8|gN2x=1_|b-`Nwr+J&|ZK@e9c$U%$Pg=#(BuVOQZlu47 z-9<{XSmdcHY0`2=MWPgyEMYXuOI4(C&QjjYjr1oWU8JVSc$R3VrcQKrOmA4x zQf5gbxhV3vk$w+1tsrzfl~kKTDwa{z=DHd$6FJqj za}%m+*{D+Gu`Z%J3}cb7jLVv4O_EVjwi8;k8K*)u`J~KboGLZ!aa~oFF~w-kn2sem zr)6Fiw2ia6D0OXL9`j)!RU;B9W2$7TD+xD3(ONM@%d*sUj}yTQ!H2%C;49O5V(Jxh zsh5fcm1WaXy|I%*)m*k^J@gi-lst47se(Lo7O8MNv=^yfJY48%O7zCR>Q8^|RJYyg z3%B~&t8RML`5Xc3xfT+2Rh}0)Lg!X_J|bZkX_2FNUZg98^twok9O-i-*(B&9Epj%@ pi!}a=_+6w$&X{?Tu2`r)e%|%R*YnK7RzUy)5P$##Ah1k&IL!U;q{O>w-!Om-9N&~0v0IO{vUBTZ&D8vQ);v3I4l*ZzI??PtU@ z9x>+Sq+Pr`Pjj6Z#s}|T+tRHr=Dfk*vjxif+Loco991_LRW+TJ#qQ}W{y78d^^f(j z;;DMLsH*9#^l|-`TJ3|XzPqTZ>8$i@{lk}y@wk{B%zh%X&er_D4(x1gL>tM?%eHm( zVDHd*@x9&s1H<0lt(&oJZ`Gw7Z`yUaRgc}{k#Rfn>h9j1M>@wNc{_4PY&Um|Xk)?!?0>j_&}?t)sEzL%rrM^Z-~XGo+CdMi`tzc8xxadL{2#AhfA&AB>Q{@Z zn$Aie*Y7S?dtJ4z=}Zt^|Dl^l0|m1KS_8|Ml9g z+jgC{Yqwpi?V4?uoOadz_x;EGr~T*rt`>y2YY-sT$^InvY0o+BxhK6fOzpN!9vyx1 z(b1XZw&8dI0SG_<0uX=z1Rwwb2tWV=5P-lvC_oIy)|VfLs#@lHPmYu0D^>R(BBl%h z2tWV=5P$##AOHafKmY;|=(zwfh_8QoJy2i$hXc=5X9L!D7J&5SM-e^WXP6!YAOHaf zKmY;|fB*y_009U<;JgAv-F~8PJ$zEt^?(0Ay)EXv%fNUDKmY;|fB*y_009U<00Izz z00hnuP}l!${rI7$^cZ65TLIQq$jNhn);0rd7y=N000bZa0SG_<0uX=z1R!vK3J}Bf z^`n=6RCRv+e|?VuAbt?AfZdrd zp7my4;AP%R-fQ}a04V(yaOY=B+@U&Y!g6<@o6Plele(^M64%j9?Ap4CTuV2hYw9L& ziEcPCCcaKRXRGHwIL6Sl$-uML^g9gV$}|p>G;C-dMJg*#nMzvnJf}Qt(liVb!IHS& zdj+$D00bZa0SG_<0uX=z1Rwwb2=q~4__{HjzBS#O{z|4_lj#jI{oR~?Z%)53ryrZs zi<$AnFV(mEgjEsE^SY)yZAzMDaY9*|QVNkt)>M4r1)+?SP)eFKxr!y5kmf9u zYG|5Qxs)=F#AK!O5ff*XOvw{_l`O~;Yn2Sg6LXd9#S^khW@7)%|Ky+k#wu>v#g}&R zi&NZiii^YjYRr-KNSar z?WwB6SeC}JGhk_)rJd%al{bDiZDnj{>ABmPlkME`^XYbMTkh|lyCE}@Eoc0w!9GTN zA~#3kV01tlYEOp#{U0!OfbOgKQ$&@=t7hl_B!7MFUsLhD2vt>9>X?7C$o5FpI;t!+ z%fGctj_GmD234j1we?Nu_=u1nhM_JxIg6uVUtdx34NE3okfu9aSkmThXuCXg5{o;2 z5XX^7Evui9)qk&pCtr+wqi;*kx25F12qW%FVe`WceOx4M?x| zsyFOin+rOcU!Y6N9JDSia|U#2nbS!f|91Of`)PZ#J^!%LvUUR0m|fE;J9}lGy=v+| z`Rhk>i_=vb`2S$EhW$` zHJhT=f28`+b7v2!DAjj08&NuWicdA2qgMz(00Izz00bZa0SG_<0uX?}5(}vLpC&$b ev5Y5xiP@HAJnYCB0uX=z1Rwwb2tZ(|1^xoosp1m= diff --git a/canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db-wal b/canhazdata/833029de-c1e0-4ae9-b557-2a5ab70b4766/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db b/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db deleted file mode 100644 index fb3e3fc515fe54c10975b11cf2202d522b048c7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 diff --git a/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db-wal b/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db b/canhazdata/833df524-83ad-457a-81af-f6b89e109c05/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbL^=RgNHn_&q}k$q3{o--k*HyfZ zLv@L@HLE}WTojAl^0@q6mJ_S_N+-??DsII)*|N-o@!=%%>|l5}7S`S{2#c0A2zpVm zV+FlIP|Qw8HWnk_3`ggW%uGkt7bExmz3|+emf5ekCyxwEkCOcPzDoZmReZN0R$%&0hc0`t`B@wu;Yjs4lU#j`e5bYL8W~BgwXA_2*xRZuh6` zev;iJtNxF3OY`KVIXixAwcN1pHzUvK`9Z^}*Bg=JH~p65_iJ9{MQ*F@wS=XQTa*0m zuJRn0No&58nJ;C}mS$tpdptco{h;FFmfohZ zW&{vG009ILKmY**5I_I{1Q1w}fE1bO{6t>mGmUg7$K~`))rtxu4FU)tfB*srAb!fm?$I3;DgXPgwq(9pEFgdY0tg_000IagfB*srAb`LM1*FKD`lp8v zbk39~0Oaf^F)OT&R0tq|00IagfB*srAbMWPt>-L#>Bp2OfTUdNUOJn& zpQs4|1Q0*~0R#|0009ILKmdV61=Re{_V%mo!|g=ZLh|JVO6D?mI4&8>+`YKOY|3)z Uj6whb1Q0*~0R#|0;K~U61@9E^s{jB1 diff --git a/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db-wal b/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db b/canhazdata/83eca7f6-bad5-445f-a7a8-ac16f6f38968/tests.db deleted file mode 100644 index 5e76048c1da97ba8e55b1b35af138c70241c4645..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db-wal b/canhazdata/86f6a3ae-2a27-4f44-b2bd-cca29bb5be39/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db b/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db deleted file mode 100644 index eab9509dade49f73b8979e557e67c27de13dd9d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 DNHAPB diff --git a/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db-wal b/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db b/canhazdata/875b5415-b943-49e9-9b66-7a935466a73a/tests.db deleted file mode 100644 index e2345710ab44adcb7001c4d3620c393fdfe0ba6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&u-jA90%|j|Jig`AX-#}DkKy^yefxD)_=wx-vUBCAzlG&&sbVPn<|NDZ{)^9 zl*3**@Bq1igv14jN1$3E@c@W(_|2|Ui7H!7Tb$h}-;rh~amKUr``C_>*GawV{>$T#5{Ul-(LUw0Ue;XsQ%g2K9ARio&SsY z?eG3uRDbF!HNBNhjDOHYdqS zEzWidrHpCQT2y6Hi!6<$sI^H%Tc)+v6PdS4vzyQVW_bG8pY3FoY^zCGiit8>WU47> z5NSl(w55v6ERmC#&305FYnj<`%PbXHX-ZMnc`k~oOl6kmRgqTIO*c|DEsc?si4vLC zu_)V0iwWi*pk<<%%d&lF(es zN@NMmjQY|bt(0PtmsO*hT$iPCkD{$ilIWrqBtyX(8n?=6UNTmxY#U8e$=Gn8jmMvj z5669;^BCJvAo6vr^TxDv^ebhrfx-yYC_44Bq?AQoE4nr!&*e&qxXYPH$A2`sJ$iq1 zcjP!nbh`=y+_!(!+rooqUxmZvCdLQn+qw;FYtGKT`}XXGWo=W#6GH$35P$##AOHaf zKmY;|fB*y_@IMJ~7B1E&?8=1iUEUh>Mbqbt*Qzf13ARB10uX=z1Rwwb2tWV=5P$## zAn-Z@oN?d2_4)?=>%ZoI|7j+#6AAW(00bZa0SG_<0uX=z1Rwwb2tZ(!0B4bJKYIAC z?Xczr0PggOnN^WsI|LvA0SG_<0uX=z1Rwwb2tWV=s|4uv|G?gU=snwkdux3Ko}b?b zXw_t~9Rd)500bZa0SG_<0uX=z1Rwx`R}!Gt|A+S0%TK9#;f;W^t+m~okaMS7roK{~ z*a-p`?#Ci0x-Kl(QH94-8;`{N&U{|CxNlwRkn5wSx60uX=z1Rwwb2tWV=5P$##`VpY~ql3X4 zgSYX~i++4JYt(SD!V-Em=X1#EF&^D}mVf%k;1Y9CZ8{FUjd?-<0uX=z1TImHm4B<8i8O zO31UPTYXilqKzuN9xWi^tv*p?hK%kwWR+VP@1ESoKjy$H|C)NQlw|CTLsq$!Soo_>Pqdj^&j0nmM!)5>yxm2nuMakMjJxY=8w0{t*5ahb zSU(nNt;=H3k89?zXD93VWNq`{p2o1JoAq1`SCRwAWO~$cb{90JdhDFpe7-qIR$8la z@=c=2Id%2Hv)z`piag7VS7RfJkPdMZYQC`UEdXa$#yL6#-g2AB8>ts zCQKb8cFN0ZQMf!hT&TlKxA~K@Y$V}$j&McFQ_G3D>v|4fN~4g6L14#;2pmg9hmQ1} z>VJ%6dvO$rfP0oDxGM+cVeF^8Z8=VuCSKqq?L$ZUMYU`s**Ohj5%Q=V1>8-1nVlsp z-m&Z?h~2myAF)k8D9uLly&&$igAR8s$CXY=#D(vBT#oLCZOaZr-#&DkzLmSAR619> zQd%h8Qhx%W%#na;*tTVLOr|Qw)K%q~nyOrrs;Vvbf2DG{a-(v)GDnFc6{@RW>Z(vS zX&IB2x!)S~DeiS|Z|{YS!%K0ShM6G%0SG_<0uX=z1Rwwb2tWV=5I7+LN(`nhKbB?a zTCpd`>F`R`2_=SMAOHafKmY;|fB*y_009U<00I!02v9-|b>Gn?8LZ$F0CZMvikRr2 z0Rad=00Izz00bZa0SG_<0uY!F0ZL3mef98~42@BBD?nj|j=msM*!-9n0uX=z1Rwwb z2tWV=5P$##ATX~2^7{Yq`2^Qhf>bN^|Ns5x0L?2l@`3;aAOHafKmY;|fB*y_009UT zBtS{UP>){zD5LoM|Fh@F7Q}&RApijgKmY;|fB*y_009U<00MIRe{{pCnZ=CMQoSENkjnQ_Grk(xjwrsHNwaeDovLHMJ5~VTEc_t;$o__F-ZOKmY;| zfB*y_009U<00Izzz-bjI-zSa6qsB(#3vIlmjnkS&f!kd-rdcVu&Zb!fxvq;TRyeLt gb)KY7r&^h~Ksihe0SG_<0uX=z1Rwwb2>e@t-<=XbHvj+t diff --git a/canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db-wal b/canhazdata/8a56611f-1ea3-474b-9130-4db2e0bfc86d/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db b/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db deleted file mode 100644 index 506d9a841de7a22291543262e22b17a8f170d18d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5U5F(|6~}MgkM6m*=llC>hZWOJ*jQ^fuo!#1%?W8x!%#ORK zq2`>K+xOpHzuSFIS9Q-lzy8&CiQk*=onJ24-CwW9JV1KAFMsL2@qe!WHuf(-dwREl*|X&!_TSs>?E_$K+soyE z^?&^FUQxV8iXV{TOuu-jU+iVy-%*>4UcPm3{#?DOX_724vZhH{HZ&2OQ`O{(a#1z0 z(Ne^5(i_?sae92`iK@Kwe7LaT<=8FjWayMQGg8U4rm0pHO`5uYdCF6BWj*hHJ5p-((?GWp6}24EB?0s zLH~%)eCdD0|Ac?L|7rgYU;D@Xd;I(SulWBa{u{)9o%pX1|4+m}L;T+m|2g9Sg7{An z|Hs6C9IoQ8|Ha#3Eatg)$ePUCwkGwqtVz60YlOF94focqVcwcGv9}6_DR0FZ=`CB6 zdrQ`2-l8?Bw_r`;&08b9IcvB#YYp>etcks8FtPFiYos@^Cili*MCMIdlX|{2iRW1( zypc8B8(PD>fiw;#vQ z2K{S0IZn>qsd|?k!M7m+B!C2v01`j~NB{{S0VIF~kN^@u0<8o{kL=hdha?RB4{dL4 zZmh4Zt}HJtF3iu(&P)fB@s#hu48gw443LBJP(&*&d;tj{0VIF~kN^@u0!RP}AOR$R z1dzc0Cjrv)cI>|%u0gvv)W70Hz~1+doc~vvz26XS0SO=hB!C2v01`j~NB{{S0VIF~ zkiZQ_0Pg<}?bi=&*?yD0{a1i%wvY?o19Z*y05^;TkN^@u0!RP}AOR$R1dsp{KmthM z`XoSllO6jVe}92?#oPWD9}3v}{*xW|J+gbhHQWLcKmter2_OL^fCP{L5Ibj)gO~cj@A|>>{ov_-@RNS9AM7S>reJdD;-tZ3+qqlL-E{7TbJv}_ z=G;~1t~htuxl7Jnbnb$4=bby}+*#+&ICt8)fpaI$b%k{%Q|_<6b3NydoI7;xz`1?r zl8Y|sg*&$N+|BU)4?}OWH?uIAT3;foI;r@FdP?o|K>fb%m*f(!aL;FK={OCr}tY^dv~dv8ZU7uoU(S zDi_PTPN_`tQd^}sEyGT;7U8f<736TxrNVL8?^3-uBwZ>KPd@oS^{1a16mJfT9}SCF zM#Uqe;ui z+RQyNaY|i|&^DzbXUW(pbvcULly2E3Q%0AbMSQ2!T<@kDs5o> z@%^qpKKaZ$#Q!G;(YFWDYs2W-Vf6iB^yVmfaTGm1iXI$AFL}{ZUi7dR{oU`JCc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG3nmDiPK5H5I9L*?zXmQ}bSO2I@b70qi%22eF#!V0RSTuTNeWRnDNjJ5gbMU&UfTU?Xp?EF42u<{ zgmAHjqVz(*jzipn{epN!wUiZYObjWI3BzHng*304JO%|(CXgEqPpM`$B|+SiMkIM! zr{R3gWyMO6NgI_x*3%7DF{Hi}@|U z(_Nx8=Kt7eDdIResQEwmT$lX+GrxFas(5Uw`181Ucw9U`DZVx-o(zh=O&5<&7r&n= zzBN-kJ6pUpcU4ykWYgshmgh`YaKI*sg7b=18Js)9P+ju8R85lW%CzQJoulm3*?`l)6OeRwa+jJEbm>yj5vL z=A2TOXy2+dB(qMbOGao_8ju;M)Fo@QD)sUD|I$%xD<{1Er(9Icg{<1jX`Kw+k=bSB z-Kw-k22QEV=)6^FmGqrbml1rc(h4C?smmz8RcSf6C#Irr zPIVp;yr&5!d@~ZbZU}@sFa^n*CQYaj_A0o7*;1X$n!?PcG7U>}sj~2p)C%S&VRQ+9 zgjq>x$9fzFbr2b0o>bMkY;?FSGZ?CZ4&^+C(Pf+osFt= zv;Xt|)1QBT$Nx{v6|c@0-V_%ulie+7RmM{N*zW9tx5}I%PDmkJ+vy#ltM(_;4&?m*4SSJ>9Y+F4p!Z++Xkmo_ diff --git a/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db-wal b/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db b/canhazdata/8b32ff54-e39d-4c0a-b78d-e529ef157896/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db-wal b/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db b/canhazdata/8bec003c-a415-40dd-8dd5-847abeacc05a/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 ZD{;Pp(|D0_uEZ-JFEq|w_B1!n{r^v!ly(3B diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db deleted file mode 100644 index 9dfb95da1bf19f1207fb8d09632fd6fad00711a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%WvaE90zcZpRvPZk$4Z;$5C_g2mRFf+(^^8C-DIUSQTrWf`kPeF&zX-OYMsQt@4x$; zc*Yguq@Bje!+FAOVi+HOaBEXX-OQ7KpZ6CK&85l-*7G0e zeZ^D#VA54sSX;&UTWYqCs{Y=jtFW-PV)OT3F$RNjyg&Y#j2AZNOP$!+Tu;{1!)vy6 zbAR{1dFkfP?!IAf?KE;=+nbGO2OD-HHk*Nayd>|Ie1B)}-b*^iOR{ds?P^QjGpB9U z>&f9&)7DEIJhJ!E-oD&g-&QN%GfcHkOCSFmw%S0CtNzQRFLHaW*#3V!e|_$MLiMjF zU4@0URh+*&neA;Abzfv#vHAP28D;r9DZe1)k7oIqSuS$!56n%R!#AyyWA$2H6*5n< zkVc}3DHCxgvYH=|Z1gHpYJwyUP@@q~KwaP{yi^ zvMefS#aT+jIL$=WiiC&t)J%U8tIO0@B2ANu(Yk4bN>?{DuVhMP8y0b$Md~;0v`lLz zF}q9&Z&F@`jAn7zQpT&C7MaLtmWeuHA?Gm)Il+0;z`_#1}jJ?1^-UG-k@#$M#*-pk(W`i~*B)fRArCE^>xVIo(_rY z>5#du4yo(tz+790*tJxMLf6!fBA4jE)%Fj9CxhpL7lYNFE?(VS0>nDqp2R*IIcFpH zbTn7e1uT4Y^y$Y(_iYPUDN;fJ0uX=z1Rwwb2tWV=5P$##AaJe%#Bgl=_M@-5WiI#P zI5~c&>RhLfl|cXk5P$##AOHafKmY;|fB*z8g#a-~pg(QYQ~&z=JaPMUt&!9F04?nmV8sxC00bZa z0SG_<0uX=z1Rwx`izz_V?I-oEmw!@y`Jeyq?jw6KwJ|FQKmY;|fB*y_009U<00Izz zz;Xms{fU16>HhQm>;0_%YX6=7yZySq-Cxd&!CI9-5S(2F3A(~ML9hF**A3ln=yXH7 z8(Q7a?1toQNQ_~iOV8QrJ0CsMw_U>_){@H45Wf{IV;Sc(&I(m7NE8Jv3RN?xs@t^S znP^nGAnYU%fB*y_009U<00Izz00bZa0SL@1;J;yvMsJUHN57HLH)M2&jQ%i3KbWI0 z&Cw_3Xx?lOxBM`WO(LUI6&J44MAh|;>X3>mYiZaNys8q;rO1XeT^$(qqBtpvOjY5n z<2F~7eR)d@E>&gUNW`hAc)=n$^n@zen`Tu=WtOPw##vp{T&5vqm53slSDXtrbaN?- zs%a7$F{vsS7m`sSROR9%PMWr^qfl}-bY`iPJhW%2f;_Zlsc<|rXQ^I1B(qc|4&M4- z{poM5@~&NeWtYD?W`my{qc)&q+%8jfB*y_009WhBk&&r;B*ZD diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db-wal b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db deleted file mode 100644 index 41d7d5dd4a90362aa2ccc4329aab9f5391482f14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&u-H&90zc_NjkL>ViO=VA)yM^Y8M+jyJY+?Qk^AHg?|(<>7}x9FAo2`XG@< zOy8%hrR#$vN?UzBi3UllKB?u7pG|9NyMyG?a>k^b7(btu(|6N@gG&qQTD;?oAJz1a z;l9j_kvtk5u^N4nrhfnXI!(}hir;yZIbRh!{wL#C=l%_fZ+TEwTB_ps>-lI;C|6Nt zs@V7&d+d~-R;*KH`Y)_)&c`Q=eb+QP>128o4sCTt$+o<}NgXG0OkqcXDTFJ`UN;HN zt{r%O+Uo{k>aq2|&x2>5wQS24PT*P&RTZIc3f~UQ&=sC(bv-`{)5vkHm}Of%DT6Rc z9Mcw(iUm@bQAEX@u9Kv3Y+KS5R4lT6>G`2$O5f>HYjJG$q-U8TjBH!>Lf4H1YxG&C z^QtrKEX)NB%`edAMJBDyiyQ%MUgU71`ENEKHlH@PoAY-YH7h5;wb?nH>ld$#i&u5^ zCw~>v`T6-5imOu^d>8~E009U<00Izz z00bZa0SG|gP6*KTe_d@q^hAw@*KT!N0zTUZ=uXID5D1Rwwb2tWV=5P$##AOL~t z2+;L^uC`u2t3a1HFSK`S1$v4uKmY;|fB*y_009U<00Izz00dS`VDkKt)#@^OTS%Z? zXf=iQf8^@Xa~BV(DAaa2h3Nhd^%Nf@2tWV=5P$##AOHafKmY;|fB*y*EI{i&b=-Eb gVAPdp&cJHRO3V{F2>}Q|00Izz00bZafyD{@0f%ni(f|Me diff --git a/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db-wal b/canhazdata/8ee9add3-14e7-49e4-bb46-323dfcc10e54/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db deleted file mode 100644 index 694c0cfaf5aa37cc5fb252ff3b54d74158dd6943..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%WvaE90zcZpNYd$;&EVwg4jeT%M?Gx_T)rCh=&Dtj*LCFsMxlvwqnJJl{j$X zFIW!c$ccXe#DNPEN3KwTIB@2$yvj_I))Lz6IxD$}+V4oynO2jZJs&^RIF5hcfA=}@ zjK_>wIc?{^F4Np1hVkJCH@9@Fi#coX^WFl5yt!p)GDp?Tc~wnkWxjbji@#)GJ^!KJ zS3Fe@=T$YGm35rIrDprEs_)IKYC0=xHvj%B#&DQV4kka7NoRAu)PbF?jd&wHx@ucD z4)zY6mu~Ft9T@iZuB?W(y(No!xM|B`OAg(Wkx4W1{oVb$k91B(vS#Ft*sksx)3(Zu z_~?ph>k)?!?SHg?P;GDQsD1_nUag9XPs2jc zI88&!B$JfKbwRTv4tXJqEMtLT>vP0m|N3qzuFp;v`t-6n`IFd9q&Q8=G-UzhNyRA3 z1gAoTlEyI;Y0X$EqHJNLJH%=tMNyhYtc+;Eql&U9j_8!jn8qSYf+`LY5r&H*T{DT< zM4GaisaFXaGG03{fotmDrY_M9SKHtBpYWgcU+~v^x>&oV1c-IIJ&AqRbIyA1 zX>X~Z9SlA`{`BMHdzKCsijWY100bZa0SG_<0uX=z1Rwwb2%M_`F&tZe{Mc93GFN+X zoSb}8b*|IL!XN+v2tWV=5P$##AOHafKmY=lLVy^=*LNHB)LZ|4&vVt)fR$YZAnS5d z#HHBsm?Q)s009U<00Izz00bZa0SH_s0b;nm{_5e=s;W2suDS*=yCGl&2xRsJnH4M< zi-Z6KAOHafKmY;|fB*y_009VGYytK8zpWoX^o*V+G4)pgR#wRAbAVR123RlzAOHaf zKmY;|fB*y_009U<;9?38_4rBs=;fbOUH$$4&2wZgrZ#2;0SG_<0uX=z1Rwwb2tWV= z5Lk_X%0Dp}JT-W3@ZumFygGPi@a~`->{Wpy9`0erD_%|~ChKz5M@gL^+2Xp+T zIsU{PFB|Q_#*chnS5p?ol12ebC<~%cX9yOwlvR-m&I4Wtqdtpy7KbXeZWWhmR4Uad z9;GxZ!z@$7%Pe4{o~)}Z$%=%Qm6%e-lZ+NYq!Rrmg_xGpB#^8awYt(Ua@9)$l^R%3 z&N4|^!X+)@Xi5{F@+1sdT#I_-w8@k_vfE@q9$9TN9FNR4*^5V{O=e>Mt^ehp{?^Lx z*!fp>{;QMUcJc??q8H;;#BZ`Zx7kA%WqF?bOZrWuHhb~HNdJ&t6RFLfzA)0?#A_n8 sy6(0hhxO!`xJ{%sN6f-?`V0BT&pZG4#W+$i3kW~}0uX=z1eOu_52uQ8oB#j- diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db-wal b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db deleted file mode 100644 index 1ad7e4f9c3486a1947b6ad59aa1aab9d86032195..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*!A{#S7zc2>Ns3x&8fcp)G-;|fTCsy6P2DuTb)2WY!j{B|lx+-DD%fp2$PRf8 zZaYlcW$!Rl?LFA%HsvtE6bdPU{w;mD(Ae?!ONfv|onJq{@fEhpre#)V-(ICU=8PSF zJW6z}OJ!Q&>;DA;b(AnoW>E~XpsKKv9iGDazhcKa|AszSRw&Xes4A?KF@J-yeL(R( z3#tk$CCk6|nys(zy!x>Do4bYOyu=+_$yR5}9owd{KN_ZM+wX?a{--4LN0EBFr=kO9 z?o!n-%|r!pV_>QvQH|=PRd@Vi+RE5Y)P>twlkMdA<#ao9JKo#7a6{7ww>sk|74x&d z8>QALIv5?W3hl|zzyAZ14$wo2KUoxcyh?WdPx9B-{xyp4Sx{A2DP#WCEZbwMbre}j zmVa%Bo$!;A4XQ~08|$0%@iAjR41+E@sTue~M_*CW4YzN{9qBqEkkS#-Q?~G&uqUMB zcKcyJ@VZgJR{y;Yo_;aX4KI%RvfWX_v1M0C+i45mZ~G!tQQ-QXXM3^D(v7~1WykON zqAk5p$f!$uh$2sfJttPGA2^Y#XtUUNZ95K?P_Clghiw{C*HNP5^!%VLUDpd8RvWNZ z>rHFex-l1YG`~QT=Q(Iip63i`@;s*#9shd$as7FHvp)Z@(Xw;`+?ZX{xq1G|I)7Ew zfAW{1oSmJ0rMSG5VUQRD1Rwwb2tWV=5P$##AOHafKmY>Q65z}-^;|@a!l=yVC$81y z+>QCDv{!OkE60SG_<0uX=z z1Rwwb2tWV=_de z5up43Tra(RT7n^Qo@?#a5{wi>fB*y_009U<00Izz00bZa0SMeJfywhn?$(eo+FSz7 zT(c>({v+3qo;!a?MXtV!*@*MWQ+$f)9KAvS0uX=z1Rwwb2tWV=5P$##mRNx1f2#P{ e#WJ1%7G_(P@vtLj2tWV=5P$##AOL}-7WfM$(BeM; diff --git a/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db-wal b/canhazdata/8fe9413d-2045-4021-aa1a-cdeb6a8808f0/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db b/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/system.nodes.db deleted file mode 100644 index df314ec0ae38b8802b5e81352168d6acb8c78027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db-wal b/canhazdata/91ba720a-3199-4d73-88ee-8f5cdea795ae/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db b/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/system.nodes.db deleted file mode 100644 index 5bce509377bb233965486c8e1a0206b26cfa9e8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 diff --git a/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db-wal b/canhazdata/9241879b-4dc3-4056-b598-e8a4997290d4/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db b/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/system.nodes.db deleted file mode 100644 index a58eb732f879a9c394496d695425ce919aa48069..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 T1Rwwb2tWV=5P$##E~CJI&ssy+ diff --git a/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db-wal b/canhazdata/94f43a7a-148c-4e50-8ee8-c72fdd9b2e6d/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db b/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db deleted file mode 100644 index 5e5c8ec73119c6b10346a6d4da5148c2bd629728..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&&?vDyG=+jAQQtVu2za0>>8-(Nfe_AXe}Kya9{y zCa_||o-I^JEO-NMWhO~u77YX`mP7iFbTU(EbnNpvbt@&zbY6t!J$A9Ub zQ$ij;crwtvZpNs?>z@Vs$&&%mWR{BVI8;|y8y}v+^8aIEU4KKrS1KxY$Dz8y+9K9( zs%np`xHk^f71kE4{_0KAX!KThRzK3!!fHO!iLJq!x90C%W#*%utzGNJqs^@y!ZtRO zw87XQ>1T~DOZtPPVGn1@eCGYl?ZanU!x>vR8U6|cvky29Eb)^CrieXe>PMYaX2 zzj~YWdS7Vo745w@dM}J#k+uIdH?{Wen4{m-tD!HYaD9izQ77Rd79NkXPQXPb`)=Tg zR0aWI`W&%aUEhqO_0j1I9+M z9Y=822_iR1q}O)U8Er~+-zfbplbgvj2vVNOcF2Vjc6jKg5toi1h%8B6S9Ydm`d;ml zO65f5TxF$lMgI$gwnPH9<+_d|ZKgZlHg(sw4c&P*)tykszg9b2yHvYYTcW~I3N`f~ zb=@eNjI7DXJ{XPWl=r&7zyD0d^j6-kVapJJ00bZa0SG_<0uX=z1Rwwb2+T=<5{v1N zAFC=%quh(*bofctoC-r42tWV=5P$##AOHafKmY;|fB*z00+diofA8pw3Rdz30JJ-~(`009U<00Izz00bZa z0SG_<0?R2tNzKxaUjCq>{O|wg&yihDZBzvT2tWV=5P$##AOHafKmY;|C`Ul8KT)rr zuV1cTuXpO@>;kqr4}qFBxp-1z`OwUVMn0sIAtg;qFFnW9qaRK6Qttg9Gp!Uf4=vMhc0-ED2PKGW74+B#CT&!^a?HOorLO*YH5jix!v m3dc=jmeq@!RL-(8@q7@F1p*L&00bZa0SG_<0ucBQ1bzYK9y@^m diff --git a/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db-wal b/canhazdata/96554160-ca7d-4c43-af78-4f5b1834e588/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db b/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db deleted file mode 100644 index e7b8097d7af9046aa57a4f00044c129ce02c19ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*$!^m?7zgkfZ&4gpu^p&T5KV+492{?nZvk;Y5f6dKi->5Os)?vL(HGziID|KW z6Bq7Wp+e%o8?cp`#EmZvq*5$L>3^iJGnK4w{QaD`l@ohDet1Jm-<39cMG~EFu zNk8v8j%dM?q{W7oi zJddYo@GiHuV)d6FkZQHp7&X4oMs78q>BMTkX*a#YO-0@v?Tyv@yMw(EQMLzBTve2Q z#FA=PiC90XYLhM9Y|CeZ;mKR7lP#TW%bj35J~5{vhfVu%LsG;R<8#B8!%@85+~JcC ziNxoW#rwaj@B?&_$JaFSJYFmI`k&M<&i$8pyi0?3xwTcSUrVb!;Jt`E+ltj+enfh` z@3i-p_C86y*HSOf+W(uIs)vu|>3en4W}P_nt;C2;zhgM<*fe~fMMh-XEDRDBCn0~& zi*v-dyfp}et?B7PoL;((A5_UQwd2sVV%s(>Cx{Hk_Z%bW_@Uu>opuzvLBu>ZH`8w_ zXPJVw({@7FGF&g>`(%ZY5jY)Ycvk2z+l_3~wB}~|MWrm0-*N4h9kz|cYcsx2JPC7x z#ON?HcFe>L-N>7p=?|q@rZ8qM3%OHbMlHjMR$}lyWGyRj>@cwBX8Kv~l2YkH z=~`){bVvLPgtkTkn%ZjdSEQzh&edemIhrIoPotu<`SI8FtNJbduD(WvqZBHOKkA}U zWj0c0Bkg!J-KMyoM@L7mc+79b?HXo=00bZa0SG_<0uX=z1Rwwb2tZ&-0+gtV`1rBR zLzarYI8G;@R4u76q=5hgAOHafKmY;|fB*y_009Umfjirixn+Z}6b9M8vI_MKwCTGp4BNF)sul009U< z00Izz00bZa0SG`~Z3Xz}|C8qv+!Pg3N!$uhSfj_!0V-?{Ffjxm009U<00Izz00bZa z0SG`~Jq0MyRq^QM&pe9%{(try+4a;$RS_=<4j^iLPWrIU7pZkj{pb)KszboFX3mC{el4`#>U;HXwEmvf&s6QpDYm9AvQlzQS!5ODn!Lyg h$2Dn@)r)JmnzEb&j4Tj<00bZa0SG_<0uWdmfxkKZK~Mky diff --git a/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db-wal b/canhazdata/985313c7-f67b-498b-b4af-8b0e40f5c5d6/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db b/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/system.nodes.db deleted file mode 100644 index 163a9717273142021e6b461ffd3a3db07bc8f5d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&yLbS9Ki9Jwm>NUjsFfBgULb+rbw4Rg&TS@#D}o7-ALSBHVbj%$$bzH_$J=G z_z=4B=0o5Nbm6iXNN9ldJIRmfW+%VSe5N$ZbZLKl{~|Nuj+mCqI{tB$>Rbx(@xxh9 z*SZ+fir0S&bi=cr&}1nU?Ko7GSc#`6vHUA0*5l9XV>lLX zR@m)@`She^ectk`s>I4Rjz1lb_FUCEk}O*`{_Jbf>HLwM zud^ zzU%tVe&|m!sXo9xX9goMKRV*%>>l%AT009ILKmY** z5I_I{1Q0*~fi($8k(#VeWK}-X*zDrCoLs3|)4)iB00IagfB*srAbz815_ z5t0f41Q0*~0R#|0009ILKmY**)b)Q$-+t(^rjW))ufWU8`v5U52q1s}0tg_000Iag zfB*srAh1>eDbl9C_3}@hRc`jC{ZhJarP9(pp&)<&0tg_000IagfB*srAb`Lc1=RB= zGMQVM2l^fWlxr=JHuds~mo{|OOiveEq$rsB(Q}r%_2Y(@f7Je$dMeMgo+Ji`00Iag zfB*srAb-m38%Ri8kaz@8g~S6O&g17c>@amGWy>0AUr(<4$FcMKB&im+jlX<;%jej6Hco%b z{NXgk4rlDelkL7KO|r%XZvQP1r`vsI$Q;V6d8VSYly9EW+Mlvv6aS*wSLP@W@=Qf( zsfzIniuNq!M|q~Av{bS9>$lm$!kt@>Z+_!pX)&MThMoShS`LRTTdZ$w3@)rZ+{o6S z_7lC8r4QE9Y?Il~s93b^ej4`{SM4NRN^fm# zVntgd%W8PpvY+c`*}&P#Hn%pJMLh{~{IA-yfzDC>k>@hESH<@KQT*n;{{rO?d8VSY zRK@sfd9*uJnp|e8Sp4<7Y?tryUt;&W-Jpn@dyGGB%| z@nq0VQW^VUB;zoS1HbD>QQBeW559wZe<=n_EuF@`=V|Gux-Eks?8rEvMxsuy-AF9_JmbzV!`sjI5>6Xr`(MvK4qfob#Zq!Oss+J|5@PTNH)#<6M6?tKGqNv|vu6y6zaDQ_5BX{3$ z_qXMKwcK}>Tjo*lA8j{9ksNdKOfz3atN;Wc009U<00Izz z00bZa0SG_<0!I|!%o&YOnDGcuKmY;|fB*y_009U<00Izzz_AI?=l{Z7digu$*?<4Podi+nsjiIM z9lG4B_I#;(Dv^E|N2#X2fG#781OW&@00Izz00bZa0SG_<0uX?}lmayW#CZOZDVIa_ zG6b5U$OuT&Dl$_~lNXr@hpzu9%+zzXx%4BS?WB#I(_BQV3|F)X0SG_<0uX=z1Rwwb z2tWV=5IEfeH2zboovB^KPcKfxe&7fiVeuTx%=zq$Mq3*9_UE5|Z=c{C)TcrF_+#Ya nz?|3Kc+Tr0qlVR)^BVJyS7%!s|2~QqApijgKmY;|sJg%(y^SFC diff --git a/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db-wal b/canhazdata/99134cf1-3a0a-4468-bc8a-7676a5c970dd/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db b/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db deleted file mode 100644 index 87c71353d2eec2bde9fc3e6b3ac0f029769de52e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKf^!90%~7ecEfD5|4rtGU99@=O*lHc6KWQLOfQ`Q!=v;5#1#@B@rhoPNJaV zFF1-&Qt>ZJq4c>nsXP2K8ZP8+s)x3{S;=O&VOMgq8oI|@vUbb&cJ}VQrE|Px(r&pew(5Jvw5@VI zKD=VudW(aH_CDC#uea8>)!=)Esm8SQ`M+VS9rUQGKh0{F`)kFH|Ks)RYyab_emSeE z>8z~c`rX-TZ>v_!9Id5WG zMomT&#u}QlI-@+4Q7Q$?lTe-W`WkW2zp+z_8`H~$zPxNq{vh_hA|-Lof;gs0A~;QW zm{Y-$lm=1CrD$Z#f^u%8--*>m%0(T7ypAd7VM>!+%}&%2qoS#*l%-h`M#l?tY{|cl-5mnx+>n3t7-7wcwO&GXDzY5j<_x&gQXZ;ua)m|=UcP0U1o$OCypZ1*7o_o?e zQ_v1JK05mN!=w9_4hBU?2tWV=5P$##AOHafKmY;|fB*!}Re%_dt>1p^t7@6cy*W;f z->Ev+3gx`UZeG{XD=j49N7GG0PYlV?qD| z5P$##AOHafKmY;|fB*z8w19g5-`0;GdPc93nEI;#ODp8$IY3LB0S1Nu1Rwwb2tWV= z5P$##AOHafTucF?9zUrcz5Ii!%m4g;`yAPesf|@Z00Izz00bZa0SG_<0uX=z1ePP9 z@=pu~PYs?MTpRGgD}%QO?+nVp_Fy@a!Kg~W_fPMF_-$exzt{fOYrAgSb=t1ocCEH+ zwq0`CCC13tspo9<{D&UtJD%wpmd?kughKj_Y?6dCMkAi9bU`xDX`ZW`L85HZoN-yH zbU{m)7>0xZ1Rwwb2tWV=5P$##AOHaf{LcmYuN&j>TjSmFFJ$}`8Q&q}-^}rM=J<1S z{E<06pT&**x{B*Cl_4$DSY_i4%YaJ38yZwO6C!4;mVC6(-GNb0sszC)7Xht#9I0%> zWl6I-4QL`{7}l9!OeP~QtLt1;RZPRARym3DI-ydkoWyYyS4~-lLCunpTZ+8SVjj>? zRw|Z^IL#|H&8Dd{6}ir;G#fdKWJ(^{;R0EZN7f=4jz{Jq*^5VHk<7&YoBzo_{k2ux zwTmz8;%BG0;}qv}1gz#L#BZ}aFLH#=%ksQNNWYD=&^@j>d9~LJ(rY6va-`3j)8vSF sZKOrchPjdcCT<&Pkuzp)q(6~={JiszujZMDSwR2-5P$##Akd}2KU%_bAOHXW diff --git a/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db-wal b/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db b/canhazdata/9ae017e3-7716-49f3-ae25-afdd65684124/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 Aga7~l diff --git a/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db-wal b/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db b/canhazdata/9d5dee19-e194-4ea5-81a2-9ae41cd6d3f2/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbZ8*C#zylPuF z_ID4Qmu~Fr?i=>jj%)_DJ&{#A*tBIekpuU5B=1JPzq5DukuY@y^r?xo2`v)weUT|RLivV@xN)S4fLq0zf9{gx7V8O|Ht#!=l;i4{d!te zv$V2~^LMASy`@@Rms!?q{{Cx5S^iGSFG%^LS$<}g%bfdtV-x4_P3z=Xy(+@6kxAar ztZ6cu7Y z7fIxTR}q(##Z^j^mZh{{BBycM@|;I;9i{Eeb-F`H7m24V%p{9x6*sMlBm~WyB&2Fx zQpS?H$eP)a{_!^r&wIps(!1h4?~T34%e|Mq*YzJmDC;fY22m7-x$EnuaC^GRTu(Qt z>*^+P9o;b3)=lhMs)<6^)Zaxe(G6GIKM0-(o(*0I)_b~GyM+XZb-F!?eb#f%dhTg& zp`c3`e022b$4B=pOIRpELI45~fB*y_009U<00Izz00ba#t^&kxZ2j@0uc~FP_To4> z{-o+$r;mj}00Izz00bZa0SG_<0uX=z1TKXDF-V~AHtMN={r#Tjs;dDjy9z+o<)(;B zvE?yI2tWV=5P$##AOHafKmY;|xJ&}Xa0C75;nS*`J>PTn{QxVv4S<|HAaj}cF;@sc z00Izz00bZa0SG_<0uX?}xd^Dw|84#Hp=b2ch^Ze1SXm*b?*Urb8eqW?fB*y_009U< z00Izz00bZafr}|X)axhptCxRLb@liEckhwCnA(^X1Rwwb2tWV=5P$##AOHafKwvcj zD*r^k|5X3E{)_#r|7!o8{=5CUzujNW%3!HVAPCN`f&^V+ouJqK)a$x#*LAwC-F2<5 zYj$07)+NR;(5dHa^~{Io65lo*qqm~FKuE7Dl1M}ir&49~p-EgZDq305B(3VG$hd41 zj-3Po5P$##AOHafKmY;|fB*y_0D(mX{5Ooz=ifUe@G_LAG#p0pL+ACB};+kiPh~q-k_0TP%N@Q^;RKDRt zjglFod9Ih(@>(_`E4XNe&ODithxR;KkcZYh8IFhMJlTtfWS-2#!CU{!KmDy$-m%NC z?DAKqyzP_^wnZ<-Z;_zO@;uKTIxAoFHG}wFq~_Yv{BNb?*G pv({<+FLAp_^BgfVBmIs1^2@`hr9;2 z9VYFvcNnVn9?Wjj9ws`4LQ0@tOFvv_?E3d{h>$~)Uq8RmHL^}7Wm@OoUZpyvgdBf7 zNmZ>%ZBpUu{{>=xk`hH`$mr!EtI|q7J*D-3#g0|}Ew!(#$;k4MRcWP)`D-%U2QuF0 zA*<3##qw{wCYzgkuRd)5re0||uW-jkx?}HnBU9H7hl6Zm_uW7oeoFh%Q1G`0TpSU7 zUsf$$PkEfQdOD9&-l~sVxuX}8R@!dLFWt@$1U;1TCyz4ct77~AIDd8Q-;nV=4_TE~s+fO0&-PT-D#|Ps z%fGQl&gfai234m2jrC3G=#-EjnkElAnI1<2OC3?Nt-y=Du50&M;`lLhd@E*w6FAJ` zu9Yo`2D@Ez7bk&Sfjxv|Q$J&u5|M*^CQEBvCBv#N{O03WXU3iQi|o z?29>0V6#wo33C(2bL}`Z6H{##nWo@QAeb+N&zvA}Sm0Vd>w8_R8-`K9O+gwx(&@bE z3_3UFf{qp!XwxE-)}}@FfHp0%JIVQPHXk>iH@BOM4;w8jCqT97F`eqOSH|pBUH!>l zg>rFm@m0qBQiVZc3=n_-1Rwwb2tWV=5P$##AOHafTuXowLsx4N4H;T(x;}BOE*EZ0 z$LFdRZjOc!fB*y_009U<00Izz00bZa0SL?ypoGf*|0m?pocEXcV|u&G56esyp9KL3 zKmY;|fB*y_009U<00IzLssJTzObsncC>=k=r<~5wD+C|_0SG_<0uX=z1Rwwb2tZ(k1?2iq9hY6K c;tpV7wPh8j9XUe)0uX=z1Rwwb2&}ZgU%UHq)$ diff --git a/canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db-wal b/canhazdata/9e0a8f7c-31d1-4483-9e6f-5f4653b90f0d/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db b/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db deleted file mode 100644 index f1e4ed2862b5b9d40fe0cc7c93512a35f5fa795f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 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 diff --git a/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db-wal b/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db b/canhazdata/9ed8ec29-b997-41ac-855e-5b3aae9a8189/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb$ZOg4zni30{CV;85NK zPF%Qig$juSZ@^Y&k~F?_Nu?UQ;Xl%snMkAYd_O0yYCE2fAKuUkIY-82x1PK`O7)5o z^6bg;p{{i?#uZ)<77)qvA<<-(iryqtm0OwYp4`Si;=nrphW@NnRBTN`Rk@Wi=5MNO zPpfz|3037*N|t~1E@?FSi<^sI=wfa;|JMUs!zFJi++JYj)6MlQ>(1k~jZMN<){?Zr z*f0^Y(PN1iCJlSkGst>AU0dI~r#0&7XFXR3E9stNGBaNCwyzmX_t-kM@nT~$U0GUH z8{Z&?+NP<$|2?L5&{-8&UZ|EdT0# z((iw#{kOFL$>_f}`g!Jl=-AZSeqfHjs|%qoMAw%wA9zX1{Uj88;KY)Lk?=cS?1-)- z2-8QCt?KexJXjtdSoA@oxA>c~Y^1J?g%iYW9>yJq`(5F2Aw_cs+SD+yqYF?||54Y4vT4hj zw(Q;3xKDAfJ3BisRqS7in;NzZ0SG_<0uX=z1Rwwb2tWV=5P-lj2~c7&efhDf!ZeCK zIZj7cs*Wi!3!u{ZoL#3f+AUP+>E`h9Lj}2tWV=5P$##AOHafKmY>sDL{#B z=|?YrRzcMb07Yg=jdt5{!Xl@DZ9@P85P$##AOHafKmY;|fB*#MQb4UgQK_7%T&i5F z+|^KM$Rtd!hjv#f&L nG-p}ixH;2#k|v#LW#R(muxSWD00Izz00bZa0SG|g-wON%+k`?h diff --git a/canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db-wal b/canhazdata/9fcb05c1-6c80-49b3-bbb5-2b04a3282ff1/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db b/canhazdata/a00ed48e-7ee7-48f4-8527-c612199a8d0e/system.nodes.db deleted file mode 100644 index ed238d4d3408b7e0323914f81fdc9c0a5eaa3a09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%WvF790zcZpKC9VBJns-p+$68XwwO{$K%I|fDjK0?i?9=Y!T5URT5Egq7nyA z`~~F@j-2=xKpeOrapVdShy!O1V<^f#%dKYKp5SB-bqzwf{M zoOs3+U z>*oIMf%DSMo!x!I-rAAPz_vGK)ebgnS#8RJdpwhOGvD9YyZ21zcxKYg+!kBSJ#*St zz0MA=nzo*C@W|drd;87S`nKBmo?)tOTKf9mu+;&2T=icjeUZm&#m@iZ_3PLECshA> z(p6YkTgCOelhxi#ljl*Ls_la{5lU?Qh++VY%7aUG@Y)P1^3NS7&&SuAB%Q5MEr?Ngf3B25{U zP13ZYYFNwV)J%W+8;0jS<~`+I^0b1fYb*VG|$i4L(k{z33$@Lcd>u-ePT-pwUItkdI3?6Z+`HgZo# zb0uBC}Q|00Izz00bZa0SG_<0+&gE7;d1ydiad$zUNpy*R+qnkG=#1a`KIuC2Sd+ zga8B}009U<00Izz00bZa0SH`d0rmdBtsg)1tX?KD^;ZFw*2w8|fR?rg*f0bj009U< z00Izz00bZa0SG|gVhRxT_(}cf<)2hv{^$R@=g3}6ZLA6c5P$##AOHafKmY;|fB*y_ zup9wZf1=-iy8nFtdOz#G+JC42Zolqt_m{IX*s2l;g0s6IL04EO=yiYVbwjrsI^EFj zhE_K;yCFFn5@Q(X(sQe^tGd22qDhi7 zS~O`(RlVSpv#JQ&P!4@jL{ZI)l*U!9s{iIZqs@w-g3oW;{JjsGRRF4HV$`m{`Igm_)1 sS+0g@na2MRx63rk6*DcyJScpg+W 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 diff --git a/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db-wal b/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db b/canhazdata/a0215f2e-1d43-4b73-9439-9b9aaf591a06/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db-wal b/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db b/canhazdata/a8a5b15d-32b6-4f36-93a8-26f58512c16f/tests.db deleted file mode 100644 index 9056bc374c340a989002586c3594d88c6ac4731c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*O-|cD6bJB`*bYjhs-U*2P^BtrNkkU|wkQ6`E@fTy3avk-w56aBL3iaKUHBU8 zx~SAm?@$!=9`sG(u&AIi0S80=BRwV%&t%?jjD^P7{`K=4Utz0kT4r_r?NzE{&e-9{ zqk*bbsZA?<{l7pM9}SoyGbs9bP*qyVr>C_3uh_B5zoqt-6^bkms!A(W%wMByA5gr{ zgR0U>#qw{wX6x%auRd)4=5A>@FLB4lU`uYfV^i1mN5gDw``s|v|1^k#Q4+u1i<1MU z?^4y$^+6n_t-czh_~mpveLLOTyKqBYi?-zWNlpJ8 z>?WBpN)AQ`tVW-tso(#;P80Ny;!hrB&R50u|4IJp*uO^cJrAl%D^<+Do@aYZwTd!J z#qw|LuoHe#u|bvTe`9@fK0apbho;d%C)2}VXsIJgwjrgAtjKpnB-2!ME$NBSv@MaQ zj^)}`;suePG~u?kap-&Z_*V#8Ti6>Q^$8KJF?uAHTta6 zdD9toZp;N8%`edAMJBDyi|heyUSxNo`ENEKH=j2*oAVDFEh{I$wb?P9>*ueG^H+8C zCw~>n+1c4wipxtC28l6100Izz00bZa0SG_<0uX=z1R!uN0nQ9vtwl5_wAyTa;#ytK z-I!0#Rn6TT4Iuyl2tWV=5P$##AOHafKmY;|xI}<6PXGVU*rQ9{U*wPZ?JhqoGF5yQ z1Rwwb2tWV=5P$##AOHafKwzN)oV7J|>ETm~TR#0yD-lJmzF8;_J`4g7fB*y_009U< z00Izz00ba#F9hiPzpidS^h{;LYqxq^0zSJB(7ljF5)gm@1Rwwb2tWV=5P$##AOL~t z2+;X|u5P`2T7e;PUg+Mf6&NXo009U<00Izz00bZa0SG_<0uZ=c0+Z*D+^r#Fw1ouP zg;rDO{*PQedhYxo6@~gPXCuxhPw^?IbMy)U2tWV=5P$##AOHafKmY;|SYiQM|Ec4$ ei)Gva46L>+H1(&-44t*wT*I^ZoXlPl=^G zq8yhKzc@UPyFnD?{r9eKNH2?e?C^OufvUN_p-5zgu=RxrH&|H=&tUP-8Cd2&m2<@s zw!bjp1}kICUlZ9rDD0hu2{%|7S^oA*%5+-H_vSy6`CvK!uLBz!YvEdQa9P)`?d|Lv zFTA_GyQk=z+YO)U`bJZ=({;V6Hkzq<)H3c`UfbTeb4%l>Wz@CYDmVEZW9nMH79Lzu zb=hM7f!z;w_xR@8mN@yYqKb2B^7>!b#Q;4l?5BkdIbI{1|3~@Dd;g=tzFe4agOxGn zZ!WUEA-uF9%gFM#Ur~zUS5kaNitp9p6SWvJ_q)a>#=+~_@wIxHRZ*7mD5n+YA&pp` z(=5+R8nkg%Mlt7p*eJTZo9x?Hx9jri@r^~^G}h;T5WS1U!?eotD4JA6n9ptN=<38`E?#u35?%QtdZn<|IDKr?0fa9FbW~ZCj&ZPU+>Z)c}HM*+a zRkg0Fc2#m(731$Xk2y~}SDc{|LfjP)Alk`z68*GhoYu^f+6uaM+bItZKmPFW%yL_E z9Do1_fB*=900@8p2!H?xfB*=900`WJ1c+kj^6{fBOjB38I8Kh9RNaFR(Pa<-0T2KI z5C8!X009sH0T2KI5EwZDq7X;^^?D+H`r8xB6srL%TLmCv`BTKm#|+&A0T2KI5C8!X z009sH0T2KI5CDPm5+LIB6Zz`llfqX2`~UQ{nDeHA_8nvJFw?s{ku2=!coip*}3*>CFXJ9YNCI{QeST}+2Phx52(Z7$S&c_uV;%c!Ph zR0&Dlw#gdS`X%R)XNN*`xJ`px=<7-y;Y8{PbIye3ZdRoYPgq{3-oy_W&zq7{*0h{P zLFCiSPXZbW)ndOAYP>OTJj+j56$hdLONB6T6lWO~$02RYRxG1LZBY8PXOfEGh|{S&_nD!~RGyzxiQPr&GmDo-B4pA<>NC@qMpB6NuSh+v phGmiFhs5k6^|@k}M*0)_;}@+zKF%u-y#fIc009sH0T39Hz(2KAcenrm diff --git a/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db-wal b/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db b/canhazdata/a8e18677-e8fb-4092-b48c-2ff3f735e0b5/tests.db deleted file mode 100644 index 99aa25254e053ec2933d29e4d19df67ffaf25396..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db-wal b/canhazdata/aa39e332-8338-4000-bef9-bf5bbbd95f1e/tests.db-wal deleted file mode 100644 index 2f82a6ecae98150d066b3256fad33ce9568b6905..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41723 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 diff --git a/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db b/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/system.nodes.db deleted file mode 100644 index f1c317f3dbf7fb9542aa472f3077d1523ccc0cbd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)_=S9Ki8&+5(~YH~zcO7)-`uNQ!iADcqq~hWHQ`3X!;tWe^vy+=F<5Z{nRd zK7=mb`2_04JO?_s*$hi)K=wV!k8?;)e(mp5*07egU%z~mIdMx&+gYEyy-as3g?RV& zsIPn7jA_T~zXjUyQD11XjEZIws!OdUn?4#Yt0tsn<xPtHzQM zKmY**5I_I{1Q0*~0R#|0U`YZ}WG2Ta@+zNctoGozoSdmzQemV)009ILKmY**5I_I{ z1Q0*~fti35($v2_x}##n|Ng5rnXMKB1Q0*~0R#|0009ILKmY**5Llvs6j@VWdiX%+ zl&igHUrsNHSz>jhLI42-5I_I{1Q0*~0R#|000Awa&i`Bb_CpURZ;X|mftP3Z0n+P2 zLjVB;5I_I{1Q0*~0R#|00D+|mNMW1$*2~{itp4}^^Lw@~tw0hXfB*srAb5J9a6E4`B2V=Qj|>n=s8Q>`cbaXs@dLe3VsDS*lt5&4*-q`q6_IbH8X%Svq) zx>>T3%cmj|}3l6bCL2#-gB8*wj^g2z#s@KnUH zmld8b+>lUuAPRRFMeanY6siGXmW5nZ7V%UD1($B@s8u_@>!E+itTm-O^@d`nb)?>@aPkRE>tH8vMX zt97$=w>8%~MW0}mx(ZOH|ESlAn)}bJ{b!Bl@WZh`?(V*Sw|i_FdlS(B2tWV=5P$## zAOHafKmY;|fB*!}C_srd7@yGN5zM%_G3djZO$WbK9rg*{g8&2|009U<00Izz00bZa z0SG|gECQ5JrvLSNQl0vb`Sf44&_QIX(%2tWV=5P$##AOHafKmY;|fB*!J5>UVYoBH-cck}|( z7~8r3p!&W00O=P<5P$##AOHafKmY;|fB*y_009V`n}GWLpXpmK@8~U#`2qk+OWnIw zw-gBi5P$##AOHafKmY;|fB*y_0D%(-sQD*`^N*Zh9V}XvK%4oo?*^Sn@Gy$h96U}~ z@HBKo?gl{|rozvnOtg(MGxfAfji#vkKQcY_oT+d9NXI*ABc*CCBDX4AY!?C$fB*y_ z009U<00Izz00ba#c?Hz?Por_AaRZlLT!wwXVrqm%ScabS*&2+tw3hbgpZ;uK;2hMK tLHqn;r0l?)*J3#5b(vAa`pkKa`N!+i7w5l^Vv7)f00bZa0SMGx;6Fhj5yt=k diff --git a/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db-wal b/canhazdata/aa433f14-8638-48d1-98ba-b1994cf45137/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db b/canhazdata/ab4b074f-4522-44db-91d7-b831c01aaabd/system.nodes.db deleted file mode 100644 index 73bf205a1c57fd311f203de2c3110a2f7342bd43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKf{l90&06Ja=Y!N<0cqXc4z7w86nM_Pi&ILLIk3qrZ`@~PBs|{-5#4_vP<%{2&hbdmjog-7%{^nf8))^!p!VH<`itL8HZ}4Sp4^{r01;s%0+s<~TWi zr|LqNkI5ha0SG_<0uX=z1Rwwb2tWV=S3-aoB+#EW8mNE${ekDIy8%nP3qV%oLlIYE z&ts7gfB*y_009U<00Izz00ba#l>~_42KuXqPpWF0{=oGt^^t((2#}Mn%PePd%nAVr zKmY;|fB*y_009U<00I!W!~*L5e_Q{%|CC-MG4)pgmR88=bAXn%1(+BD5P$##AOHaf zKmY;|fB*y_a5)8tdiqa zEE2TjiBvBeF6%hrGEc_NBAJrM_99u3$JQblj>qOA*^9?yk<7%w8~@5b{k2uxwTmz8 z;%BG0;}jQj1gz#PB2o9fMZ7N3LigR~ pT`JQGU;i%<#z!gBWEMp~3#tk$+4L0F{}nsd`8V{wvO+P+f~vww8S^(N+Xocy zv!JT5QnLJOui5(g&Z`fbzqwaf&P&{}m2P#mym8w!_J@Pf+V;Cavi~WKcf?#0Og zGk2+Km}VM>s?j&&FpV44$yVL*i|JOzb{b#U&YHAy$1kVt%x$%|cVR=*h_*W8Cl&Lv z+)YN-FgX|=unK*Wp@0ATCQZ;oia%KtIbS8)|0ntDWB(e(_bjL?tdueTYL@LW)jEnS zCCk6I!%p}~$p%%V|Bdy{`S_TzABI5(osk*JfzU^k(MC^pWfZx}4x+GUyN>JILF`Fe zCCU|E=p}(8*y_K>!P76sXu}bz>j|Z7Y9wt}CBhEcf_jpE5Cux9Zbvd|CWR|}*RfSc zQnRGz+dUzAb{u;mag^iu?TDJm&<)!@4aDsVVY_Y|+JO`McG&AUQQMJHhB2%4S*!J? zHE7+K3p$!#pvm)0T9fD51E^Jw-HGPEUVmJFUf-T>Rl z`Q%*H+?!)V2tWV=5P$##AOHafKmY;|fB*z85#Wr||Nk@g=#uvr`D1>&%MXi86`utG z2tWV=5P$##AOHafKmY;|Sf~JJO+#OL_>|(7Pyf?OM4qc}7RrMUg8&2|009U<00Izz z00bZa0SMd+0XqM0>e~-J)7kLKt=^V^&+Y?sFJzGf1Rwwb2tWV=5P$##AOHafK%hJV zbpD^~TQ8rMU`U+jx_4^{Mv5Uo00Izz00bZa0SG_<0uX=z1n!o=*}vAr{{dX{?&Jh*PH8IKCalEZ?DJPPkOyCf9c+n#+t*qZ1C&b6DX>C zPxcJ5A(Rt41XT)ExB7%pKj`GU+4gtTCc~F*?O(oEZ)$WM$5mR;Mn{~AT4}12I;E0jTsCFJ zl3MfzCPtha-+8*!cU}$`CcK=u#U%r)#EK}X%S6&L%^E6X&1k_>O>3UTN{Y0RT(&9= zN#80(MWw2OGa9EUqk=bz>Y~nQ)Wn76qS0BcTa^aHu}U#7Qq^b)uS5$_D!@xCMpdO! zEp%KaDs5Hj6JnKg6f@bxHD#3mPDRS85?oPLD6Jc*n2wTGC1-qF&+}%yWpB&-pm)q; zUgmwo`-FG9_i67AukcQKcYF7GU-AA;yw`~LD)BB5?@z=#PrTm{?^)vgf_P67@5jV@ z3}*3%|8Tb%iz4M7F(z}jj7i;1Fg$TLjFIlTF~VIlhP$iA#O{hQ%w0Ana+kow%3U-j za~F(B-FagYcg`5;&Ke`!8DqFRZA|P=8N*!Pn8=-gVagpFler^fQr9ykab07iJ2XbP z17o<`Hzsx+W0*^fiN+^-lgZL#dvf#S@L#?gsD-4zz0+DUxatkBdhQi(zmZ(L_`p{$ zzRh8#WxdP4-|v@-^&!wl+7`*H%}S zmlhZ1=VoW7r~Juy5weE^_m#w>G-9_szSa;sK zbJm@;?u>P(tvh91-?|g)+Qd4Ok^QM>UDvup>kh2jx2|Jda@8fhVB4ggyBR+JVK82u z8P0DlPkK{F7JYYP+S^=TS{uzRklFsq9^`W*!%jJe_M(Gf9Y_EPAOR$R1dsp{Kmter z2_OL^fCLT|f$^=qFuX0iCw!TNKPTbCB>blnKJSE&I^j2*@Q?lQJ+(IQb&*O58E|P; zmMIl!#%QK0O=Z$lWhIm@bRA3@23{izNHeU>7sxuCWeW20$`k}xp@pb|vCtB75i3Qb ztgfiYKu{}LQ(iVIV@kv_V!T&2aUF9Vc&R8$p-M)Z zxPeTT^2yjLb?L>e zN)s}&N?m$-tJ0WwR;kO~(5f^du2t%C$FwSWn16h)^N&wH^A7R}4W|q;r!$>$ zh{aK`$|T(6B9fFtET%%Kk`{4P!muD3u5=_-odzo!x?3VkL2KX!BZ7qZ%$u4Ps*#PT zw1O<|!LsDBjv^CJ;ta-(NH#F zkX*jtWu_Y*%nMe*AR<$!LX=P~<5XubQi()lbrJCba0GL#hUDfFcqMQejAs!4+9Z)li+3OR;f!=Y*ktzOIE2%#YWp&=FG$4*u z>av1wRq7LBmAb6*Ta_IDj`wH&|Ew22;)VYih37}%AKqs}XW_q4%;e~bhU4S`@g zOE|2=vIe$5BiQ-kDXc-`CZkzWaG^w{5-o!xC9G$`t0<2em@9JzC%~o{t&&K`0w%v@ zR0dnHSIT9aFj_Qb?~=u^TMF}Ps&!QBy3|H9*i3W{OFLL7#t}@pVc$)`x)GL`Y24JZ zD0N&ED%j{UI}g^o%)D{^kL!Qj|A!kK_P}VtQ%!50#Y&2_kzDTm{{PhH-{1BBYcJr?1aWK#5Z)kB-oEnB$%|K@iyTRGwW|26NfwsOM#|7+guZRLdf|JOWy*2)Q=|GDOA kxK>X1{0}^+78ja}MrXBd<#ZtT|8Lky8a5mWAc5Y00n-m!jQ{`u diff --git a/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db-wal b/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db b/canhazdata/ab755a06-dcc7-4781-89da-56fdcd49abae/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbC=7A>ABx;JFJ*)!p2&=x~jUno?JyFw8@hSN)W8R;bM{v*~O3- zjrx!W3F1RQh~i3~@(?AU1PMaC1PKwM1PlsZ5)64rL?MX8AnRAVvs+n7C%wte?qv6C zsQJE`>G@aJue-mxbkF&I^Xu;tf3Pq(x1G0p-(HHjj|>K1{?a|ijWwHd&fwR#Cs5Y+ z93L2DBPhrA3YdM{_D;{f>0hF-Y5!q!t@uz*?-elnwjIRw523ZQP`f8ZFOVbq*5>P4cy#C+>dhJx6Ev6n4)$^&QPyYP!SfD1ULsam^m5XHMRG@>Fxj(L15? zlLH6p9Gd(8mc z8Cs>dtW{ldMw2XKRPa_&T{bz5+oaT7v^sBer;~V8BwBz{30_t+s%n*K zp_3|AS*OyF5UZr)gvmB(D60i$Juy_j%etG^-LUSub=R!BYTXsnnGZgwV^PR70mD+E_$Wq=%%mm)f8 z;V+N?50jD zvW2&0RxhNtX^ikTjN#t8F^RWk4D(iviM$-O0GGH=nC)LSq{dh^BzZ_XI* z%^H(5YsLo@)&EhQ=hGV+`|%F)Xt zX~JHs7NOfG3vxK@li@gY`eZK-NuSKb(@*|i{^?&1i`U)aM{e=bsCZ~p{LU-x_pU%v zYBFOpDrc3b@&>X*$88SOD>&ndLHg)YOBts*tFp50%&0s|0;|;L>g!aRAycc==L+pq z3dqDN^|^{Wm8N8DmHJ%iok|npTctjCL#NW1cvh*;9n-1gWB&0goqv4#nRkf)j}N17 z52IJy=qWe)z8k$hik=%qkB*}IN6`yj^n@2Z=tckVdv_DzMw2Fx0bZvxixtFrArhLm zEvF1Jr!$>#h{bWZ&LrIAB9@dxET%%Kik3-SLAM}Uu5>I_lZ9&9mgh~BsugOv2LkK;oF3#892~I@G@MaOLeAYQYS6Vpu2(W z@~omd(G_iSNG@OUD%UL!7X_=K6OkEIAu6brajJ9ZsYELBri^(BIKlzI~h-BO)aZB}QM%+o5IOQmWnE;-FA z)6a6)OXY9^QqD@jMO?w-jBqy3WGMxMfD4K2O+!sG`xH)?R$PiSg_ESinLbe(`+wP1 zHG^yHp!Wa4=lb;jKl6*%#>FG!;xCip!AbGVwD{VzcswZnK2tnAQ~Y7J_||Ok)Lik# z{3VSP$d>IlB#iK~l9>xuNEm5lIn`ytDVMp-c%@k*^Ui)_n`~MoQNlX(gssm~0)Q)x(uRq8X#?^JSv+b+-e|7kyZ*pL1@j-DS!kBy^mj(g7t-qQjT z{xK4`W(b74dCFlXmbb738pFyL&tMLkv^mYwk_#njm1-Fts$f0~UQK!2!dRIz*Z~&B zXr0D75it0z;ws#MwNfsVl+m&^YnLp6)lwK&Q?27hHi(RsMpXXK6Zf1Lm0`aj&@um(m;o@v_fJW*0)t>p5`um8_{ z{_@WMADb^;UMRk|P&~JINoxVuOc2M0AOR$R1dzaWOMvX!*?FH4edp|)kV96fps zX+U~6@|6jL*G;BB$KmvpR0aBb=jQ{`u diff --git a/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db-wal b/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db b/canhazdata/adc565c4-e9d9-4851-93fe-b9f5f4da9697/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbR5gXgjx>|LerYV8L1NcITPCwz}E69R@V=nX$)t&+02!2IXN&V)1w7vcTQt!#?HBomm8bO^1_PT z_y*DBHg)y>?=g9RF3R{ijy#W7$zK1%`qjDrvW$1*kX>%AjP;x2YPV&tBF|Q``m2vf zzyF=~-_rgkt^Zo<=UMx)xv8=HSRcJt=Y``r!WAh`Ehpx#>p6TejY1valhEO=?+U(XI~I3i(Mc?kMu8U}n&~&y zvrN7h#NAHN<*wzpGE)+9;rkvBV&R7!%ML@|J~Y!0s%4pk?Zr_f0`6Is;I1r`hq0gX zj^#LEns|YebPmn*hte#QoSe$-hdk;;0e2H$R%Z!|cP%>!VmI!@M>zee_DH>cy?(oX zukP26JwBLFT7jA|c@xxFHq^7BmJR7-D35=wcC~h^cDGjA(y(JE7ofWOqplidlaVnQ znfs&BoZ=q$_V!-MIJ_0NYuGXbAOHafKmY;|fB*y_009U<00O5ZK#9TB$B$JRx>oGP zaXS2@>XZsY8VEoD0uX=z1Rwwb2tWV=5P$##CIXaDLw)u7iVRlp1pr!>FGWmrFn|CA zAOHafKmY;|fB*y_009Whh5#isL;dvdhK%C>|DXIUW;Sq91q2`f0SG_<0uX=z1Rwwb z2tc4D0`l|!;r$72s{Nsw`YAwRjqcwEsIWc2h9Lj}2tWV=5P$##AOHafKmY=>DL{#7 zs9P_8mO*vGio9(<)ok0cyxD|CRSpyg=wRC3a0HG8J zKmY;|fB*y_009U<00Izzz}W~?ACgwkP#}00Izz00bZa0SG|g-v#~x8r48G diff --git a/canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db-wal b/canhazdata/b16dccb8-600b-4b4b-ad7f-2033afe683e2/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db b/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/system.nodes.db deleted file mode 100644 index b0b1ef8160c0ff2ebbe8eed7512407ec076d41a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKm$~90zcZpSxb35|4rt3gUK!_L$(;_)!rM;$cBgiN_v`h)Z%xB2HACL_x)0 za1^1W;$Hw!&>&ILLIk3qrZ`^VH_0YO==Rt>X|t>3JJRGgiJYH3A3v0Mcm4bJn@^c% zJYt-*(>VEdo^Xp9#{2Kx+|*Gw^CaNwy#-`*bJNgd4)u*mr?9X#**y!(KWAb+|22KA zc+?Ljox;M}D$d`c**-}9ok^##u(o3J@4sZMt(D{b@sDi0usL7q#Lnh=yq+FjwXGZb zy9dq-H+FXS4SQ>+QERrn*~oTn!*1kev*sQzDY_-!-PybQlFspxNw?&7wWaQw)3)mM z`0$Ep>m?2z*!y5_Uu~^#)5`Y@lh$eJ^MAvp9rQ5upC)~g`)kFH|Ks`VYyYFvznpXm z3u~)5e|Iw5TNHI)WLvTM_g^u}@>f=V#>(%_@)NUMnE2BeRtC6YxDY`c^CYP<+NQAJl}J(^L}@0gR>mTzr)K({ znO&w>G^wb9glAFE(l%8&FEUBnl*u|y0wE$1OwDwMu`W|lseq_r`qePyNkQ|hR3v!S zHnfT~Pr_)r(_j4!!}A{U9`~+z&w67o^m6Y-?^XTB5ZY=BxPBN0Vc_;D1clqvA$L6; zQrFcXaUC5p*VZ9+Egd4))FE`44ubZ-??2{0?LX(Q_H?mza|tl(bbm7YY~-Ac+|$uq zNf)s2(b2~r9^JDoV5LY20SG_<0uX=z1Rwwb2tWV=5P-nB3NXX5^~;Za>Xy0Oo8#>G zm8x@{K2`<+2tWV=5P$##AOHafKmY;|xD*1+V7`90QIG!h@Ao{H?glLFE&yAVH$_~E zJ&#F300Izz00bZa0SG_<0uX?}WfEY9>+6pmK1rSa|F>PkS=tQ%cJhgu%fyelLI45~ zfB*y_009U<00Izz00hoOfL{N%_2Y-0(raU;{wToG8asUs(9*U5D~13BAOHafKmY;| zfB*y_009VGOaVrZpVW_D{(<`P-~Zn|NA_ZBV^$D=00bZa0SG_<0uX=z1Rwx`x}n_-t!`*` zLv}V~#?aTL=WKfZgV*mlw&5=AT_CL2$~H+dA$XJ(ROCk%1uqJ!^i$PsT8KK5E0uE921Qh7A^oHs_Ei(BFqI*%)0mbD>wwEDYkANV zqN-vcl+1=R-9s39xl%>dG%*hoMU{jLm2fGkl5iZwO#9(BoCQ3T4b?!F zQO1jgHlS@)P8E?=-lX}^nWa+l(4M6V^3V!rsBk}evA2CmFHQG&}sFeubHghWt!zEo|=iVUYBX6yJb`AYF{&$*JYaJ qY?!u9prV`}yOmToJ2cmgaf<^(xtk6yo!T zqk+zKD$FuI|1S`PM+2eBiYmHss4TM-AD+zWzhcF@|5bgitf&~rp|Z?U9{X>o-ab(A zJ`R;-mU7nr@@uiazWeIf`z5zB>+?OXxH#B$w!O&<(>NFn$HvYe6z1N37*$Pk5C;8f z*9?O}SS?M3aVX0|NgtCIzSIq{Ej2b%7z8i+R=#0(4AKLngGT!hyPTz3?$8znUW4UhA zwc3r)w;FcGYxUcWj^Fph>fhJ5vtwhtVY^PJS$EW?uHUlUmff-Zrt4YthSv)Ge&96g zJu%*BM^VQQL&vh+NEPcut`!8TnA32=ey?ZOqo%8h1$Ha)T7KP%T24dN*6UgA$g5kf zAJ}%(_M6SX73Hqj+)T}cit-~+lS$4*b^I%p$Cc-mtxA4&ojtj+fHdaUbZIV@iuwP3lJvpJv=nlImrmCuWk=L>UASKmY**5I_I{1Q0*~0R#}Z zD4_2DoBH)b&-6-Jn7^RlVv$>0mh<-j-CBz@ga85vAbg6*POMd)cJ&BO$m8tjRz|czs5I_I{1Q0*~0R#|0009J26qwFG@@8|$93&~CUc0JV zq7jgqOfmyaO(vPnM!o-0>Z#`zlT=)L-*3L58voI=_>d4l009ILKmY**5I_I{1Q0+V nWdSw*Q{u6Ulu_?Qbwx&7?!<9oClNpZ0R#|0009ILNKfDoKquee diff --git a/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db-wal b/canhazdata/b17e67a0-e732-47cc-8e60-4ab11e8a55b4/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db b/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db deleted file mode 100644 index 42be01ae5929e4adb6a49a6d537d7d42af264c49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&*(FMNF_`$98uCu|N?IfyWmS(VN|t9nblkIF*xlK7M#ZOXLz6wZne==V`iK zO2~`nJAKuwrj0s0o-82Zojy@yhK%kwWS3hTAD-OupE9wkzowomB^i6;kX>$V9_!a- zwdZ9#9f$04YjakA`2nfbdd)%e3vK3B^O;U;^jl8L+h1n-=3r~jxWBovH6UzlBTj0J z^<$CNx-1s`xMmKw>||R$+t@yOOJlgDn{Bxst|dq2WO~$c_LnrKw%9wj{c?MdthLtV z&bNss_o=Jbf0xMvbWz6FapZZt=Ir@DtY4k`FUxp04%y|_=COWrT-MAf# zh%j}I*ekDYMB(b_bfHc!-R3XKvP{D99N~(TrZ)s-n(920s;(oCf2DG@a;tK;vOtBS6soH?b=4@F zjEu?1JRFU-Dem#$;NX>v<6Ci4!=51k0SG_<0uX=z1Rwwb2tWV=5SWnwB?eO;KbB?a zTCo?$>F|@P85M>!5P$##AOHafKmY;|fB*y_009V01Sp|~`rgqM8LZ$70CZly6fx1k z00Izz00bZa0SG_<0uX=z1R$^&0+g7B`sv{f8B|>XD6lL#`ejUkGr+DP009U<00Izz z00bZa0SG_<0*fgiKmQ-zpWvn{k80|t0EIPrcpsp`W`G?-00Izz00bZa0SG_<0uX=z z1Qt_(l8T{jz5H25@!$W??jyUH+NcTw5P$##AOHafKmY;|fB*y_P>g_Ff1+BwUcFtt zSM{sKOaXhHg+RraTs*0;Y^Y~LEgRCwkdnHgmY!qs){ji5g)ZAjjj7fgnuQi}KmY;| zfB*y_009U<00Izz00hpIK=~nQG@dlJ8sBK+J#Cz++GkU2eX6S#bvDf^$aQ_16^`rL hG^-ca=~OEd&jtZmAOHafKmY;|fB*y_0D=EN;4d}VKsf*a diff --git a/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db-wal b/canhazdata/b363b4bf-f03d-4463-9fca-a881deb830bc/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db deleted file mode 100644 index eda6fab1d2eafda9c716bbeb7e198845c222cb68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*&yLbS9Ki9Jwm>NUjsFfBgUPZnY>GgklpA_7#D}n@H4=B1%|hIGav#J4zKJ(4 zK7?+(`4Bh*EL;`?2@SA*C;2hm?BvJ%KEpOk3+<2ZUt~ty5tDY=Pk&scJC{Oy{BYLQ zy>7;&-zKhwUSXWoQCQWYui}Asj9uH;_Wn4 zmss1f`m--ZKHn}5ioawrv6}zu#Hnt{EqNDvmU%Kb9j0Eq@AU`5I_gDn-mD41srYRsJy*SsB-@tNpM53T?LV^p zRko9?dWUmM^WwER*?;VL&8infQOAkga>J=bRoC&|uy!xU{#gUZrOkNZ> z-Ll_w+;UlEiff+J3>#`j1GV2q1s}0tg_0 z00IagfB*srAh1>eDbl9C^zu)gb;BP3kg`%Kmz#PfGz1Vp009ILKmY**5I_I{1Q1xG zfV%%gCUYzEKwkrZcC7`{rarvlrw!dT(vyQNQWQ*m>p4qZ`cZE9rj62A>aIN3dXXp& z0R#|0009ILKmY**5I_KdBm~s)pZ)ze`=|R!Bq!&J0tIuKI~*65I!;oMOWm1x#Thaj T0R#|0009ILKmY**c30ppVmIsK diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db-wal b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db deleted file mode 100644 index 4341634938a2cd7cba58900af2928211eaa1fb5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)huK90%~3OtN(s#Xoou5u~Ua^kUjjwBLcrWOpZ-{63Q`O}5GW_wQT2z|OE) z`c_sif2P>vj6Hw!VrWW}tXYBSj|Fo5V#o}cLwTjjR5X^V?rCiOKe=KP|DxGf7ATLa zOhsdh`)Ux=yH`&FDw{ASV{+>sT#e9rc>KD&H> zR6ct=EV7MK-&@n=Ivov$vg*g7BT#m;o8aB^j~lvp0>J?lBsdcoxCte(BR zy0*4wMOze0YVwC=Kh2($V`rmW-&kiBwIs~(zhYAdou>S;%1!oH%l7|i{N}s=Eakte zOhsdwWu7WudVU<{QCw!JUS(%?e}jB@DaO~L)Q>W)3#pYC%Ru`|CMx&kATG6E z4x%zs38QMdOqG|UQh8o3gEEL@n#WYP2t%F3ewf9Ys^zLIbTY_flIK({^dgz1fhY4k zDf}!;!#D~V=ewftXHj@rsKbyJ9+X~2ZIpq`RG82t9mH802T|y?CyMSJ=DK&?k^70e z@3{MhyI(B#f6M*Ta+^E~eqr5xQKwt_qD~)Etr|N_->TK3RjWm-R*Sq=i@a8gyiSYV z71ryW?_KU)@BKobV3D>8aAE$aH;LOjbI#6Or#t&_?$hn<*RQsJnC8BT*Z>GX00Izz z00bZa0SG_<0uX=z1P&;`nKQjUVXj9A>+r5Y@3q-{`digrpWr1>{t;5AOHafKmY;|fB*y_009U<;J66T_!G17M~+Ltt&X!Vl+u1s1X>n@IF!L4 z^=RN4Ka?H~z_S`DUl*y@uXUZI&+CkYL(hK{X6QNFJpW-j5aIlQ=>Csvq~_N?T801w zAOHafKmY;|fB*y_009UbRROyG)9IY-oWrdbN41B)kIR`}VR0-o=Ci|T>i6#Kj6eOC zeTZXFf4^0juPeaCt}(AwHF9^2tA_0v^BUuix2G@a?s=#O0SG_<0uX?}(GmCxI@uVX diff --git a/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db-wal b/canhazdata/b3ecd81a-8bbb-4506-a940-bb8c2aa95765/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db b/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db deleted file mode 100644 index a25d7e9dc277ca5ad31e0dd07927e42e2e1eb03d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKf^!90%~7eR|hCB_0JQWW?D*h6%H~v#*MP5RVn~l+36+Atk+7$_Wr*6_A}xc zj~K`8WSreR%W#tz#s}};*ifTt=J9}^cNeId8ykiqb7Wtibvg9bW{0P@_-72P@*k<^ ziYNR2tjnRdwu<>%GTR4be|Og9&|6!v{QZ}W(Wsp6O@AWO-g3Uwft`)Dcr87+YFpR$ zcJ`eYuW#?{8TRIO(~fL=qp7;ly4_S8&B#64GSORZiOu$oTRKNua=qny+q-v;XA8LQ_;`jePC zQX2EDY1@RRbtG!5lhThTmEQp&Qt z2$_hxCYP_GbDT_n-SE7JyvMyO-m~7+3%%TX$$L%xF@(0-0&Wn7j1{i02JQ~jkhz{3 zQrA^O;yP-`U0V&2YpEf2O*MorkweJj@ehK>f~SM$g4IqJkM2wY#5y^i#6F!lr!)6t zcBY^`YMO)A+NirIVL{u58c$TJPXOT)dV|$S*IAd#(3O8eOk?J*LvPfkb zBFm4c(sTAoT>nAW5z@~N%pd>(2tWV=5P$##AOHafKmY;|xL*NTe{?u}V))GPg<&>) zW%%~+onbxP8s2YM-2a{hg5Y!&B+!MGgMt37r>Cx-I(lmBsimi;o)SHM^FQ^czp={O zcKM}U{^FFkobsO2xBzz~fv)nr$O`4$D$j)YI?^JmnDZh{{~`k&X_1xAxseWurz0)& sxvM!ftf&7FS4Uc8#dPjt`WyAf&%6Hk1vpKS0t6rc0SG_<0%sKX7q*piCIA2c diff --git a/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db-wal b/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db b/canhazdata/b77260c3-99dd-47eb-8856-078910a3fd8e/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb5l-*6SbW zW5rYbaMD#+SX;&QTWYlrtNz}ktFW-PV(a%`F$RNjd@%l*j2E`%OP$!++F%>$(N){J zaj58=2${ z&6*~oN!}(j=W#~sG>W655V;K1Ij^514*l!9wYYxzbfKSKHphPvyUP^EES55>C<|jw z6PaeTNK-~-lQgZU8rE_-HPfHO>N1I3@G9bxvbaiV(z28mOyo39Tb}bMuA{V_n&}QP zyG%S~VJ2BjtGH=ZCLw6vBq0skFl8*Mi>#TR=^sM6Ohprlyv=ILA{o&n$r&x0w57aF zQqHPEWt_UYYo@*|oWjtZfA35hE_iQv* z(gjRDKK}IM<9oIRY!oRW009U<00Izz00bZa0SG_<0uZ=R0b)3|e)-W?-7=SZah#mI zQgxxr$HpK40SG_<0uX=z1Rwwb2tWV=mqLITB+&0R>ZyPI{hsHls{u>93P4unO%a!3 z&ts7gfB*y_009U<00Izz00ba#nFNU82Ku9iPwPeZe9tBN3czv%$mvI7ma}ne6#@`| z00bZa0SG_<0uX=z1R$`+0_ydDTi<@@8NEhg>W=~}t&y|)04?niV8alA00bZa0SG_< z0uX=z1Rwx`^%NlL_LKV7%Ri~U{P+KN_mN#sZLA6c5P$##AOHafKmY;|fB*y_up9wZ zf1=-is{dU7#eUX*wf|24-G1HQ=`ZKOV5>?X2+ps91YKdBpx6D>>xOPObh@G44Xtiy zc0+PLB*rk%rRQvQ{|C=CecNzIZ%OY0A-$?dA`vy5N>x3FCUM26Xk|r{w5p>bU;jAfy!NStsg!lt2l zmZU}1woLGNIMX$Rp(lzcs(F#pxT*`4i-)TIuTV9KYn~+{jtf!OL$`=3k;S1d6pw|TIK0$2JyR0vmC`!GZE73GR<_gY+8lxW8!t0W;q+C oJ*M%$#O*T8a>h)}^f&5{Uv&NP^*B?p3J5>|0uX=z1m+R=5AC3ILI3~& diff --git a/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db-wal b/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db b/canhazdata/b941a1e5-d5f4-42b3-afdb-46bc1975df45/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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ⅆ#!I&0~1 zKm958CVzh|-OD%uD?6oT@BW&4X0O|>{4wSdZ*IEp`A*vYw1*ad19y1Ys@>9 zRuk$}TG6w!YIM!W_CjB^W5;JBkanPYMmJU?&(iyWrm=UrnVprsWkgsQOo3`Is_I<;P45O>M^qic@PF916&EgGWD+q$nv)I9%wjJA!A3Blh zMiyJ|gspnQ#yrEAt#_iCeqXbh38&KvBRjU(tv^-M0+TH|7_+xrSnQq6y3Zyf(3&W& z7I&6(mpz^r`fOFg*ksccg1)1=t{bVbWm#dDUh?b&okcy4AEl|3}WrZ@OnmtA8V zQUP>UW+$*itJ4ev-Ei2os760vwp>S3Jzon|jVWV>uA_Hjx6{yE+hR}sdF%;5la=1? zv)A0|L0^r0GmJtz_9EBqEZ8<1&-K}Em#yK#O3zgFJ=0?=DE7l3GDBPU?aq8;8vU-# zu+!JrOFS5i`l{#jebx25I+H;+Bgg8@bxlum16CT1wFj*9Y~{tkv)Mp#pb@7APH0=5 zS$3&<-;Yhzu>xkxV1;8M>uRLMu4#o1yH=y4xFM6swhXoJJM1Wpt>@@FzNPm2?5!bY z9D1>x-E39Z&+{pRA9VJ^rB2*A{BRFfA!z*MOTFyF)XRPv%VX1aFkO*+%1bl)XzSGeztfQWksEqM>g4oCiKqdte<^p$NlVYZtQ9!mtsd7 z@rX3p(axO%O{nrXhmQ6U>cR4sls$ruw)h}UikV+a4O@`wJmrOs_L=cJ+MnOp*M|9G zPg_PW->=Y%82qVV@FP{4SDaa5@FPPR9Nfb%)I?H5GI%mk1Pp%P#2EasjTjCO6d_#3 zIzM=ddI7?vUc>d8XNUYuHVRi7hkI{&e*6BcJO3uu62AU}>276W%s#oBY|6yu$|)0j z+(nt#)9RCZ(UdZ=_rod^Thd{2E3hdOTP;~x%loBO)@0|tM|V}(m0Rjsn#UHna8;`x zIBXoR&j#mQ-%&%?@N_M7gTS!4mR6M2+)|a%SgxgIWhJ*%WyF?isjV#Mma2^EaxJx# zc5bQ4$S>E@lG4g8RT&-TT3S?=a!XZ4khzwc%3{G%g;8d%rH0bXEmawb=2}`%8o8w^ zqt#qX^U6YQsmh2p*V3FapIfRj>dmz@tIXw=s*H?tEh)-uZmG)XIoHyRqU4sUjIi@8 z-Im=pqnl~BVC+3>t!YrEi`M#Ro@du$!}qq&ZfJOPf5Y=EHi6t@H#wrn^>jA+?|S?d z;K*gjSqWJ88D#C9Ks*p6o7 zR!A-lu^q(_n|L2(MXk+E(1ezI$cET1PhyDeE5%VZWK$etLqsA?jjLG4F}AZi8e{vj;xHTR7YEs7`0^bKy=ai_|K61z z*Ew3Hg~gerLAImY46+?z3-ho$-Sv#Ji5z50CWK;;?dl{4+5UI2Fs~dgD2}qpU>_dr zq!&inq+Y}IA`t)HW9f0qdJf{IXL!DAnrdXR$v&n-Gs*+D1}2;2V;G^q7Q(bW9{fN3 z2%@(H;_CqMqk`KGD_=6J%@$ar>H@uM}k@y9W_Cq&|3$YC7$6j2;8i8P7gxqF}qRUpp-imwyn@)n<82a1ai z#04EH2}h?^)V$ETEdG2F94vnSgjxKnIgY~zMHrXSK0MlsFfR2Pt{0Kp`yNY=Q;y{@t~<77vT5|H z;~VVpPS<5~@byS%&n)P^7xuM~RU}*(KZ@ur!T2%2_`2X0QaQ#~W?CuG2b>O9LTl652JuR17>-4q?%oNJeWPst9sqgrYBtWzQunKY#q^C0`lVk z@?(PANaZ+RnQ5g!lWUX#fcynh0`f2KPR7WQClR>~B0rvCE|N<`ejG$D-c4CiNwiu% z(1aF}$cX&ji4yrArBIHXib#&QM4CkM-09GSDv@Ub$&VB3@)ol{4kQ;J$VoBtYpG!i za$TalFhYJ|GD!ZBl**Ask;!EQ^L-1wh{@jyCO=-Ksl}NkCO=+*$&b|mH{;MgL!wW?ym+?M4-iuH!_2TPAuTgo{Prf(*IyRI0{{dj@1aJTV diff --git a/canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db b/canhazdata/bb6f2a41-0bf9-46bf-9cfe-d7346d1fcb44/tests.db deleted file mode 100644 index 676db905e319f47f2c5e027814e50de434d254dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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%0AbMSQ2!T<@kDs5o> z@%^qpKKaZ$#Q!G;(YFWDYs2W-Vf6iB^yVmfaTGm1iXI$AFL}{ZUi7dR{oU`JCc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG3nmDiPK5H5I9L*?zXmQ}bSO2I@b70qi%22eF#!V0RSTuTNeWRnDNjJ5gbMU&UfTU?Xp?EF42u<{ zgmAHjqVz(*jzipn{epN!wUiZYObjWI3BzHng*304JO%|(CXgEqPpM`$B|+SiMkIM! zr{R3gWyMO6NgI_x*3%7DF{Hi}@|U z(_Nx8=Kt7eDdIResQEwmT$lX+GrxFas(5Uw`181Ucw9U`DZVx-o(zh=O&5<&7r&n= zzBN-kJ6pUpcU4ykWYgshmgh`YaKI*sg7b=18Js)9P+ju8R85lW%CzQJoulm3*?`l)6OeRwa+jJEbm>yj5vL z=A2TOXy2+dB(qMbOGao_8ju;M)Fo@QD)sUD|I$%xD<{1Er(9Icg{<1jX`Kw+k=bSB z-Kw-k22QEV=)6^FmGqrbml1rc(h4C?smmz8RcSf6C#Irr zPIVp;yr&5!d@~ZbZU}@sFa^n*CQYaj_A0o7*;1X$n!?PcG7U>}sj~2p)C%S&VRQ+9 zgjq>x$9fzFbr2b0o>bMkY;?FSGZ?CZ4&^+C(Pf+osFt= zv;Xt|)1QBT$Nx{v6|c@0-V_%ulie+7RmM{N*zW9tx5}I%PDmkJ+vy#ltM(_;4&?m*4SSJ>9Y+F4p!Z++Xkmo_ diff --git a/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db-wal b/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db b/canhazdata/bcdfebd9-32c4-4c0f-b0db-4a85f5e2e523/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbk7{KxQ*j)%)jT%inXv`kk#*lz)3bei9&F~bmU5La|nnG-PvJc{cNAc#x zhfv~6c)}T2AZd_5n(c1jKgriw+Ud-GzoFA+x4ZlE$2ZBTr)pYeb@XzR>Q&9)+%AE7A1C*8heboBTcVUdibgMxm?NN*eRGbheLme2hX@ zv6YnNpMS4BuTdBjeoG;?oOilor&BsA)kgcabvd{iI`1xfR|92tdtuA7?M@i9y}BI+ zozTlpT2>b=KlS>{TRM}Ll|{>oX1BGpPun^x9gSXRY|~=+sDINRw7R7WJ$PSb^q7|U z`LEl0f}ZI36Gfc!m9qE$B!9E^KhyC&3SGrk(wKiX%Jx>*CgLn9%RgUNjYgdL(sv93 zBBKx1bWPh2!kQnPR$9fXe^M(}+JRqemYeNj%h%<&e0tKZ9xL0drNjJr@2q(~T~^I9 zTrd39^Pe++`cQUEAS=FKF8g}^UH66i#(nGV7{GR?E7t56jo9-oXTFu4Z6&QR9*@83 z_`@7soT<8ZN_2n#0tg_0 z00IagfB*srAb(s4z!3m5cBA{`9mt!>L8v*B5OTMC!WFS z6#)bgKmY**5I_I{1Q0*~fh`u$$A1nFw>ZDuP3?fADZ4xQWR3s=2q1s}0tg_0z*2#K DbZMW6 diff --git a/canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db-wal b/canhazdata/bd61b94e-5186-4fb1-a0af-e11117098f57/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db b/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/system.nodes.db deleted file mode 100644 index 3e9e5b1666ffcd5c29d43cec12dc9b285dc6b0fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 HCinjXc{KvF diff --git a/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db b/canhazdata/bdbb2e8d-faa1-4bae-a38d-40c33e80b934/tests.db deleted file mode 100644 index ff357289ba6c4631eb2f1b6c665628354e164f03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*!EVzq7{GD6NjG&8ViO=Vaj9UP;NUH7(vsfF&WKllIB}#3#!y$W-PnV0=xgl8 z0f`Imz|-DhRf=4h6-DJ;rZzh|qxXY<`G zZBtm3tp3_7vAcWp;=J=qJ}<21H6FOyKL`&xFZ?x(kIRh?`Vjh{`o@(=TqlUqCbUV0FYA65L1 z$*~z#hvsy6Dk}ExdhYw*^X&rNU(ZFF)bIBFJ2t<~(l&)f$-e)S`Zs3PUf9-Ukx{bx zYe(WzUY2Z9MfxvoY$?YVLVWi;yVDu@IvIp+k22b8>a>-G%}_<@OQWJV)hfy3u8Ny+ zGmCX>(oBo(Klg7}=iX>9h&%00kam^Hqn3&~X-g$`IAxM3Gg&9^nm87ty(9^{CJb9D z4#QYQK@ccy@~+Z(TWg(l+j-O2ZaUMtW#UZbNzzo2PK-)I`!)*FFf?(XyI~}1J+Z&P zG!q6Yk3d7t^GUSpzqR#nt310R#|0009ILKmY**5I_I{D`3z6SKRG~o;ZyapMRG(_W^QqArL?S0R#|0 z009ILKmY**5I|sQ0`~mB=kD=$Wpl-s|Jy4O=DKC-(rRZQ1Q0*~0R#|0009ILKmY** z)euu`${(9M+nkTHeLl{{HpXl}15${c z3yLfv#VfDDhS&s4KoXfKi%I?fiAZrG87n9lFe?!$!cwFp$^+q5A{+(f1+kP!g#3P0 z{p;x-@9fpg?oKVIZfR#{y1Tl&zVFvv^?g-c^=OSRUu)HBO7^{WDf_a>|2MLqxc$a# z-A`$y3M>D2gYVH&!r+ocTiEfkLn*bEvH&|Z^K zdV5&tuuV9|)7i293BJ?%m*D#|h4t|Bz?Oq%mh#kt9E3-CHk3S`Xe$f4^V!y#(txn8 zU57uFI$tU2Q`sZa(_A)TavBn^sBt~l5hNioLuh~)TYk@yVwJ-@&*L4Q5XPdRf4_rzf{-qB^!AFw#j)&sp zSHJ&AV{_SYtbredk>({n;(m0C4#Eu;!aB7>&VH}2L;>B7T1cqjZL81i~ z{IvDRvJy`ZeanX365EPQCyBH`9}F~mkOZ3VMuFx9rs4RBVJGe&&lw9YJ~L)+N{q+b^a8A{0*S>;41 zwSN5=e7y$#_Hokn8czv9-9*s84}Wzf--BZW74{$1HNhE)ilEwTQzan6%MJzQX)1=fza>1{Azdi|* zTkwFy(y1X!-}<(e&(e zOwp0Ckoe`SkWl$a%ay9CkYK0~UWn0;H#ktOI#!!$3ya&KyHU^G4arrTL*;JFQ;cPy zHrYRd8iO{@g0`yJjK{Eu*Zmb<w%zWU10+KRHhUUCd9?id(hWX6_Zfmz@tn(aj(`%}-?Ji{|$FZ2>n|6?2j z-E#(x9{F05+NNeZk*Ni6I4ue6IEkIqPdpE-fFQ8^#Ij7yvn&sM0$m3?BK5T}9fV;R zgFRs+qQ(O8gIv}#E}x*4Td?wvK9-Tz7|E`|vm3gp=_g^JIjJ3h%i(!i5So@2B#8?q zN#KNzKPJ1T?dx9X>YA=w;Cuu=*ebqbX@01ux|xJ->kUk zz@UyeNL*wnBx3tE%y)L@_HNA$lCL!PVv^9oSK!!3$RcTo1P!HRRITE*p)JyHzypX| zBvjO~EwlePWEROKM0m=Dpe|Y@w2uBW8mihaLzpl@$X|b$gWhk5JkBU3LvxL%grIJh zRGrG#%lMS3>d>IgRo%^_s_wt*Qv^7{jY(h0i4rMLDCG!Iogz`~hCHTZ5_P6X)Ga#@ z_1($2BD|5QFXv2&I6;(hgsE=MR0o_AiB!pCiWTV@n%!G>X6j3ml0|?Qy^^e5C9m#R zr3Kz2d?CE>VexMpd|j&nUWq|l7+OQGq%rhLf1)NHz{rVmLGVwttA8Kh+w9HO=yqFnKqgl%({Tl9c{|I=!5x!>_>6Uz_I{>o-NhhElRy zc9o|D-O(J1>3k2qamJrA#q`aP*Sx>MJ~qwbqmw!uP%P#sqtA4ngN!!~K0dN;c=;}T z>uf(|_Wr`Cew?cQ%{{2;-bmHItIih0{A@C-{%7$jsOtZ&u~q+#$!h-;oXFLKIaeaZ z3Z-OEpf$WWX6Ma~aMhDVmQ1c#aY0<2*^R4zY#{Q23qg+0nzt?TMCEpxC;7_mnY_OD z9PIqyC;94rQ-s*Q(5>2Uh-mqKL&TdAv)cMX9TfUPy-mdWKlO$B7xfj9_M5&U(il`^ z`1*|D|Dcr^DPB&c2>g_CJdvp;3qcz996j?W^%zN}4-V@pV(!1?4_vj1aw<%$c zwFT;Vl2z^Uo3avG2tHp3FD%nv+u-Y3tiv{KVQ3BAlxFUxG-Px?&Mq7N9XdDV1Y$VV zLQrGSQqPmBiaQ?4B3|UCRCtZY3+2$uX4y^o_R`RmLR<9bs76z+(mchF+8b7BP5}C^ zeVVVnGOQQnis*|`bpsk>=84q&z@-zZMowzxp;VwQU3v9m3s%03ZlKoodda(_Za{&R zSf*uZQD8WlZD8*t4?00bZUjA=bSDZecT9E-*U@cwg-LS*ONS0q9(0&85eVVD$(I+&?_o+V#juZJZG$`pl6SUn$kk=@&sVe zlx$uq_yC;oLS@wLc;4(OI(POB-sKnC)B2Zmf)zOaH?t~kzZD7u4y9ytt>X1D@1T{t zm(6;<3*S21PnquJEs)jRz1+`N7O-wd_9ca5jxs(c&U26}`;y~;VZB6hyCw2aE1|hY zX!aL&klUmP`A#$Xlqt8_Q;6jD*~`oAXG9e@fsSVl;UK!+EkxJ9Hj#qME`&Pnyp{7MQp!`x5x$P*d>xTXm`uLzMBIt5 zbE15GTZA%#9m@|gv=DM!Xd9!XDnCk?sPJohgRQEypjtGxdr+%jXf%+|M0X+8zyyh%V!t0hiZ$247i|*Xv#k&$ zwikyHjA?=*-i0wn^cY4Paf5*tMQ&)@Y3!$a?jEF)#BNE}*fM)Mu+o<#_PHG;_TP7> zli3tdD-cVcCy}j+gbt+~5!q@%WViBtc%;tsQ>Mti6>^%3?0tXXoK&`&;hCdcsq8$$ z2osF!O_BksA@E$Ilp``=5$mL^QM)Juj?P}V$&>-C3QjWM_6cOb?_XXC5bns>M{~wR ziWo{c!q~A<#unQR=!r0U%49Nj7v2%X*d3EG_CGD;VwZ)0$K5XGliW8A2UZaJgPF8w$Dv`l&~mL=Q3%6=dN5#y50|FtPU_mR=Ne|}$e6thW`skQpz;Hmfs{+`eP1-2QBD8p%y3S%J*`8VT;UNbpcfM%gOIMuD*a z%7UA2^BH3Yr;{nT-v#H-1^51r1%S^`Qrr}jB`T_R2^MRF2?q8%Nes02(5`*eI5Ds^ zW6>>B47>-ieUbrO>z$uQ418rbJy0aAlasaw1$TT%+Erx3yDl_6_9te^~eQ_kA)BT{LT$=cmT)-FuX+N&x)0(V#ld@NB&dcP^# zkG54RW(XW%f>oNo-r(z7ZIIsM1`TZwrMD_odmmEiebW?`Lm~l#mZW!84H^dN=(i$X zB)u!VMo}96M(O>%`^wV$*GHuHD^K(NmCpA1PSV>o(+~!;^fc4N9^tX;!T^_st{I^b znPHqj@A71f^wz^5PC{#-4SWYi-!yS-Od|+2-;5m`Y|@AZIGct@GlXcLbBd4=>D|F7 z!OrAu$=X}NTYbh0VZy4rB)!k?D!souKe_y-(_jI8p2T-YBz!34i1_Xl#CIE-yQg@- z?hn#3#rGM=LN31dd3-mFMN;1smnAML_00l^Fu}3pzNpSUUl7MQh z{5%KyDN_>MgIUYa?7e4ClHkvFRt1DU^7gr$H<99oQjYL;%?`X>owcGa&CifHnY_KX z$lJxe^7h%Cs3Z81xQBD%_TZeHC=hoIiEtUr$t3RHB5`-`19AV}MuJKUG1q~$B*RZ+ zd(bv^Q&mL^LxnI=;nyo09H>@j7a86e%J8;S9e!wKxQg&yA5hpy) z8M|wSE#O^};T_33T+iQj-T@YSv%4?! zx_-YYl*ek&#B9>)pM^maX;{qs#>E2cEZw+Wk!lP*A6Nml#&3Bjz}}4V{~ciew~ikv z$^R4h&cY0x8=3O|K7=ECI?mm*Kl1-OqYeNOfYdGL)QQ}ylyZc+YYWu9StfTfsk^^O z-Fx?qx-XX5BL{dwN`f*;ZF#jW-9;oM0gm zFlfnmtK`pk0E>8$@mAqA9xpWBelIB-Z`)T7ABZ^Y>)Ue~IU*!K&yPEIA%A|p4&mMV zL%v$MB7C|lqtnlo@z&6lG1Q21MT|*W4NW|zEkR@^7-&lnnK?qV$w8@aukX|%k~+|S zVcLeKy8*lt7{$I8z;xTtJ26aM7&#~QY;#O5_Ve;KmlNBHVA3uapGP0SNIioj(0n%v zG%qj>7)sZ$6L$au&X45cXL^S6;+WsV;&cm&#+&~jD<6A1=hqwPp=0Z&W*9I_I)D`d zVZN`qscyr3Ye^7>M65{IEl!+tpqoBScpkz8Z*Dr!`~kFzK?hae3SyY> zO;7WZpD8Cj%UMn7VLO%weo|L*LzdFx*EGvds)VwBKv^Ye{-RJj*0+vM)|N%5T7mpE zsU@o?5<--c5x2_W0VA+iXvylfTk@K+WVU3T1vv7StbL!23bhQ&~PITkiF+~_C$&vN;$&b zTMF!5e?%gEGTD27k-hu(pS?dO0*M5q@2Q+VktzYD9HH-IPTyOuJuZ_!ne;tar0;zP zLf>z428o5D+kFzx4hwB#3{{0q2@@55y}ZFz)mlApyT=W*)FZdM+p0;myA^ho{EBDw zNfC4!Pq_0yOE;;y>Zm`DcnU9c*rMBA)sV)+SHz3l?h3E*c%j?<>f>d%``P2e2jUiN z|BWy5^vc}!`c9^b>D#vJ`l*(f0~4kWG9AtHK_q)H6}sg`p=n3<7*j=e0>iNNK(lms zM55El zRv?Gp%QD-a6A2Ds&3a5*<~giNzyf zg2A1VNSG6O%u&h_k#K{UNT7-=zbOvlQ>IAx0A`33`U3|g68^ahtPu@J;A&2wNViu? zIYQu#V+p(gUnb0Z6COB&G6`HO68QcDB=GCq72*L0U#F=M^X}eA>)$&h-3st+LFTvLi-pNY6(QK*hPPaEVzi@=_FvHKf z(6eHHFNnCm6A$}1KX&h6=K8`;O;5M^DZUB+=+q-+85<6s^@(SW5R(E6*wz__Z(9*}oTXMnjk+FPn6Y4FeBj2)@b(FJSM%LuYE} zkPA%&U@|k85~?5sebJ_TYlbClW3*H?ZiWhBqQb8~-{3&C=630nJ6EtNdoq2>LvB-^ zLPP}@BB5wgRx)usctyO(rmXN9j~CjMfB9tDrhEu&AHs19wtw|Go?e;XUf;>499WhS z!AtB~2=BhbpmflS$oG9ibM?RuBRlYebdTe~8)=$`UI;U~nJ%0mfF4V}mByNv3=FVB z-Oz~#qCMCsXY5h0XF01W^H@k@FQPfgKBba%t>ITTn@_@oy&gk0<-HTxlrJoaTa|P= ztbWpahPjYr8=vI)?w-j5@j2M}!B6tlVy0$asBcnV=w1B2(9n5(q0#O8LX*yk&HvtS zT9Fq*SG_=kf%T#19Q2gafp)n2k+ar* zgx0RW3Xiy)7kPY8N_Nw(^5cPunMZ>frz(T#XS(e<=t3sRp_XY-pF=pZ8>V;LDA!7oS4dR-`|B$g`Z(wY(D}^$djNOF+OpG1mM0|NG!u-TW*cx6V6dScZn|ovE zywr-;OQ{v%N_Ji@A{gYn+*Jdw|KP2cWjrS=rCX`8UP_p#@awA^Y*no_zl-%UU$9>0 zWO^@$-g-HMm|FBM+n@j~n6JAYEPULJ)uZNhO2w*S``czR`F zd%a}6WG}3xPUOcp2BBqxq_ce&tQW9DU>dyCaZKNEJSP~_Lrl<9F$XZky%T`f;-mHA z`vc93eehqB#PbasUhIR({x+9IO5i+atkyKNUKYrDnV0OnDEJhe@j`5~-u7g@+&{7P z@}I{=?H4-X3S@MNMEHV8AW=$2-zvumYETQg2%nd$!exr^+Yt^D;b$)|!k@u5ERlsk zFRE|~Q`*J|sj5y4PQnD?y-1pFLF8daDH)nWO}F$C9I2$jkI4~rGBq8Wshc$2fz8y7 zoV_#WOr+!)!`W3MoGrCGa!8ZO8EZ}_&JK1$#cQcQ--1XzphVgla1INUBWyy&p%QPD zqPEJ)xddmsNUM>y&y%y#rAdSm>}tDPC2A X#sgQxi==pk*Lb{8ihuZ9T#ElcxZl$= diff --git a/canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db b/canhazdata/bed42bb0-eb55-4d4e-ae1e-9992b1243843/system.nodes.db deleted file mode 100644 index 85e7666d48167eeee4ca57061e68387ab787fd2e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 SsPO`?(Ri^Mf7@4u8vj3~G)FxE diff --git a/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db b/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/system.nodes.db deleted file mode 100644 index f42db46040f964f9b6a3b508f4a9b2ac77862cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 O009ILKmdVF5%>euC)_*$ diff --git a/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db-wal b/canhazdata/c768a01d-7350-4338-b34b-eff299260c2e/tests.db-wal deleted file mode 100644 index dcfe5f0971fa2b2db1ceba19ba6f7489566bb5a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41772 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 Yqv0#!Mc(cTuhDp+xBH8~;NI^41GkS^{Qv*} diff --git a/canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db b/canhazdata/c9c405ff-14dd-43e5-92b8-9ef8d480e46b/system.nodes.db deleted file mode 100644 index e8761b37ed8d07e46f0e613c3a5d0ac489840fc9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db-wal b/canhazdata/cb6e270f-b364-4310-8174-cf7ba434e9bc/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db b/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db deleted file mode 100644 index ea7e4c5e8b536e3dd50637641eb2c590faf5ebd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*O^?z*7zgl~c3J}X8s83X490~RVzKlMxS{c2h#$gEUm|gL*(}73C-)2Z4LsmC z(UTYNUUg&Q!EfN(Is+`dEH0aDZN>j24>Oxgp7!|_O141f{kvDRKrWDJJM3qFo}}BO zggkq?+n2p;%Cy7dp9Ofh+b5Dt6VaW8=u&I5!;@P66DF4RSLAc0AYwcV(WTb%SidT& zJuBkzEJT-D%US)!d!$n7)kpPDw4Pec|8-)m->@6r{yI~)M>}Kf?vufAMA+saj4F)v zLmpSUEad&LqEBYJ$;|D+&e1cq$xJ7ix#e$0N9JT|(6IN{6eeek&kUarN6}_uOKf~d z6tPWJzW%#R9H8?eKF=b}+rx_a}FK=4DV+X#yFw=LcB$;g9j)IQJ6qy~dPp!x_IvpMw zp>6ZPk9iaa;*7SSx^I*wnOad`T9IuVmg9%Q$#V?9-3biOYq!G4^+WFQg_(X9yQEyc zTE1DnQ*M=yJwBL_TY-``e-V^eGE|eHk__p5D2{)rbh&h+bi0(>(y(JE7oe(qQa({yBa(}2Ie+rOUqlfna%4`p?VF*9~0uX=z1Rwwb2tWV=5P-mH z3Q(eJ^47~AMX-$T06?{7(=@%+gho{mfB*y_009U<00Izz00bZafeZ!2`V)o1xx$sg zTH%(w4*=Q<3Fy-cDms(bRUBQFovkafvvevumy)U`m!4zd){lzHCQA`!B|z1s*7wP3 z_pn_EKmY;|fB*y_009U<00Izzz&|TcyiaPiN41^W7g~EuYyWH=+3k2$TV|!?DqCh1 o~00Izz00bZa0SG_<0)JWHH=m_JRR910 diff --git a/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db-wal b/canhazdata/ceb5bc2f-f0d1-4eee-941f-6d8b12a43ca3/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db deleted file mode 100644 index 2e174b2917f95e6b0fd2f5b1cb57add2a10633d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI5yKm$~9LGI=?s|DjJPJ-|5w|O}VS>jqepLj7cv#R=;#rSH#3eZ;5hp56qM+h0 zIEqkG@h^ZVXpksrAp%iQQyi}_lWbxM-5#65*(Ldo^viEH8vSN|AA79bu|3~!zxk8| z)+5$QIrX!T=W(}*WxfC2txe-iu}>WS-k*T1Z*5uznWt@IX4-XDW{0P<_~#64@*kRW zCD3*-GwnJntC+u|vwcw8J2TU+v$A6O_g}Jx!*a4e`H@UI%lS$N_BPk~dU|->b#CtO z9(XU@+}Yi?+^wBj4PAG$md$X(t>tDt^p9I6ZOeCe_U_%%J8mi3mfO{qx@Sz+nXdE0 zYqo1z96Yf1!QQ^wTHn^4?^(9)(=qdZ!_^1qVQoLntjpuIV(0&H{^r{MsJ1U>rd?-c z74!FJ+1}RPSeIqR^6$T5mF2Ib{EU>}+vO*A*=6qk8Jl>AuRAAm^?D>?mU3Cqw2o6M zie^glCgoJ9I-3@$j1r~iytzgk^l$7;s~abm3v+qdSR=%3BPD4hvP2a$ZaAYNR*Fg% zGn!_F%9AK#39sixn*2$eHd3tnO{%G+h2WBkIucYCbwhKhrn#!PY>H}Lq&17!Z6uzG zDrZeY}zxEA|KIK-dpT(%D-Zwy5C8!X009sH0T2KI5C8!X zSPlWLKQS0QF?eS1{2&{=Ja}vH_Fy{L9xP`t=v5O4!?RV8uocz`d+mRNw(7T4udTXm z)oH7CTP0^zVvRy0J?HBEAM|@4eTVqAXY{z1P)NVdQ=Z02OzSFER4^^glh;{AMWmH~ z;#zW%XG<6uxb009sH0T2KI5C8!X009sHf&V#y{%h8F{N{Lf{0kX>MaFl?_&0m} zojv~C9)DzyFDAKBm}{lnB-g+DS;Gsh##={JPP3Y3m5O31gk;Thw9x9ns5fmy5?579 znT+%rLLM2l;7SYq$~+Num1MCHqkwD8R>l;g8Dma%O4h1SS)>;vM&2Sy$s>0W737h#h{Ey6UPQfkL>5sd4&V5f z{`A*QdDkt!aLb>)@{U(t%o(tny^yd~d0ylUovZTv2kEzw7Fy$)qpLmno%GsBi=63m y$8?tjZKOqJ!@NjqHu2j?i_DmLktRpbAHQh*@ztDp7!?SB00@8p2!KGB1pWc2@NLxq diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db-wal b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db deleted file mode 100644 index b0283abde36adc22a6048b3ea531887b3752c253..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*+iKiK7zgkf9X9Ne(1bRWPza{+F6qVCnuAVvZj#H8S4cH036?f>uuYS@`aRl< zeGT8GQ0PtHp(%8*4CS+wdH@{f?fSPZeO`UF<%FD zt+hVZ?^Ct6D85+-b*;6Y)j#~2-MjbbtJldN{9$V~|Bn|O&i3?PviLIaU!EMz{ry?V zf)|HnwG#xh($+f%L1|~@&R{uRyogrQ-PwPBRK5IeHZ4x7@)=EjeCb@_axSxYu$n8_ zuMZC|oiOmHdwOx#3%)O2RP*qpIzBmO9@3MWSLOiz?Syso3pzUm4!M_UF4gF-0cpTBx*+h0%o+nNDIc)vB&^ ztduGeHs7^XX_U2*sBBD=m8KF!B`cBVxw29jof%D&O=}aYqDX|aQ6)?kS&^H97H+fH zltr8>V;JY}R3TSY=zLn*WNJlfBvldDiLi05DW8&7D$^`WrthmFijk;8S=D8K!E+FR z00bZa0SG_<0uX=z1Rwwb2wX*gGw!*sUVlo_?Yn&O#%A+f8cJt{FcHC z`SM->T~*3?qg$qSl^)g$0SG_<0uX=z1Rwwb2tWV=5V*Di!^g|@^vPX6!W?)n@E986s!g=nTl1H_D6a2E*CV{U1Fy^jtvKesp~K2YvlyITq1{ zKOR5;0uX=z1Rwwb2tWV=5P$##Ag~<)8h>;!xQPodwxfAHmJ%+{vxJ<^w#e&|F|vdJ T1Rwwb2tWV=5P$##wjuBjD-1uF diff --git a/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db-wal b/canhazdata/cf452aa6-1b0e-480b-94af-2b854da57244/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db b/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db deleted file mode 100644 index 85cca793c65ae257340dc2f18587553fdf85ff38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5U5F(|6~}Mg+qZk}?fL%xX2o<9cCEFm`m5^6RYXFYJgJ}r!LIIVvY2F--Nld> zjrx!W3F1RQh~i3~@(?AU1PMYk1_=?O1Pls(WO2zuA__qy23b$-&Tj2WI_XU^JCoVd zP;<`A?fG}tulrW@IoXod#ytmYu`1Yx>tIZ2Eu5oGTu*vpWsUt}Xkq{{!gl6tpkxG%&li?6dxl zKHfWYs5pG)@XO@zuJ!q*79Jiy8XwKh-Qo;Ro;h`P_|cOmPMzsF_nfHpA;&phtLD%# zr&h=7L+-^jQ@iF}Cr-chn!}50CU(tx%X{=&YC41JXnbz7@0c~tPM*I1^cj86(R*Rz zr+axkXqs{vL+@BkMXV}X z^E^#CXL%O2D-lAhlH>^!xl}Z%E2ETVRHaf-Ey_g7oXe%@DFc;|`tXX3p?yx$VlqWdt}(GY zG={s5G0Yu+iGoUOb1!>)jpV|G z2fudVZ5DG`*1PojUhgVy9|<400n#Je=E)%eq5szA#`@ao z%JS0U!u;Iq%=FZxKORkZE@TL9NM?ZSmxm%+Y2gb<00|%gB!C2v01`j~NB{{S0VIF~ zK9~eZ&)qg3JzRmdwYk1=IsTuWnVXuP^dbBoL-_BK8}V^|a_Q4OA54(A*GK>fAOR$R z1dsp{Kmter2_OL^fCTn20l5F~n6Dq&F#AaQ=A!_6wvfx;1GHy*fEz{vNB{{S0VIF~ zkN^@u0!RP}AOR$BFbR;}c-wr(-(R8a{qz6!dt?tLZR`~iKmter2_OL^fCP{L5n>V%!MgL-owM$&b!V(QZQUvBPFmNu?%2Avu+DhG{?)UtYu%xB9qSIP z+qW*c;*wslZA#DG3g7>*wm!Qw@cLVGqvh$|#=_$K1Q|M0;}w5$b;jM?{o_j3nIfqI?xuiUh zZtI2N?cu5L6%zh}gpZK$U;Xffe)w2F{ANG=(;$3L9S;07ubMo{OB$C6RP5C}rHVxv z&7tnD&~cKdbsCJzyi!nH7%BwI917`1T2K|Sik5MmW-_hnN>{;1#BtrEJb_BRC8P*a zP=zAC4Q(0i*Yk4dwB{v0sVY9Hs zs#a80OjDW1tSpso63zlQ=b~aI$fS+TU@g^98AS~g4OUvSRPjug!LUoEl7dZfI5N6W1zrdB?OW4YB_CjjlgF{@go^|4$CW?+n6Mo$y&F{DBj` zF$`ZEhK~=!2Z!OyZupcNKJ147@H$Tu!DG| zR-~?luDGNMYN*qMLCtrOrckb3#bv2wDVUJKa@~|dMZBa*k|#8Q{4kZQ;j}4rTyq%J zxyXYhp<>=NX+m`@VT%=1jaNA&nKjHox?yQ9WELz6CF`Vyc?15Kf|jXw&!K2NfN~dza&j0=wy3GGS z_lnmiipM63zl@59N5%8w;_Kt$Nx%5}Wbx=^@rSA6+f&7})5V)J*L9^p*6qB}>CTUH z*NM|-&f1$|J?G?!Q)iAHStV;$i8C#vNNX4>WCi0(UDGmyQ<%jJ-Xf8biZ`t@&M|;}DlL%3tCik)rQkT)bRcVq;Tcs{DLaWjgnX*b< zW{p-QAFuzfj$ℑq^bwnC6#f)mBapaqOAdCGu`n8j!(NN*$u}Rwej)4Xe~8f^StK zgjl66QGT1!;S2tq@6YxBb6)tU7yfr5d}$(lVj}$3MCXX$Jtdg%pOL_UArNeis3J&BCZ$N5RC9<}<6tX->|@0sJqiy<#qb&=$pq8zyi}bEe^$^{&lK^!}R1dsp{Kms={0kUnQ^DbBPZPEFWO|oT`x?J_QDs7NWtJEbjXjNJx z8&;`H^w6rbj`{zq?`F1g!uo`!4XgwOxb dOyy0L!m}O?i(5JE%l!XMdy$46M*>Ko_dmY3R9XN4 diff --git a/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db-wal b/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db b/canhazdata/d1b526ac-67b0-420a-a795-6b7fc5bc8f13/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db-wal b/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db b/canhazdata/d5c13394-83b9-4603-b88c-fe042013e205/tests.db deleted file mode 100644 index 052f5cf6b48c9120ea35a3048bc2e5fe914c76c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db-wal b/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db b/canhazdata/d7a52d2f-72e2-431c-a2ac-e87a4b3c8af3/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbNg7`ono70ohW|)kW-5)w^ZlGSs*}uo{P2d>$T>1D`}O3{qg1ab zAC&-k2tW(zonilH5ogTkX2!&iuvm@ z+tV^0PC{0Nm5SwGze8HB{>t{s7rIhd&j0nm#&FeL^>>$<{&ahD$GH7yV{4nR^^GKL zF*Z!1tkq*lG)!9NsHd0re7doDa8F~@Q{+9L4A#>F$7FiE>h3OSO!e3~we@0aJ6&IW zA`iYrGfzC{h(Stl4o0<7&tzUx|zd;<9R%? zftxs@O&4+60rvRlDy1x!kX*0lqApijgKmY;|fB*y_009U<00N6C zK#6InrI$a;V1(*rF56EHTdv^hFD5jyf&c^{009U<00Izz00bZa0SJ^RAoriB)y~u| z)s|{E)H(nt3nXBUZ>X3|-B)oEXB#fB*y_009U<00Izz00bZaffFlGze_ru2c6B%H`;kmJ0~`e@+RIk=GiH^&F0w! mxvkH$!*N@iXZPYZ?xvLYq`;9O009U<00Izz00baVNrAtyJ30FR diff --git a/canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db-wal b/canhazdata/d84ec5d3-d307-4116-85f6-b488a2e8c6d0/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db b/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db deleted file mode 100644 index 8b50c7409d5c9d8c379b3235cd4f758b9602c092..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKf^!90%~7ecEfD5|4rtGU99@9}{+VW?vNnAs!a=lZk;d$osaV$FEiXCmi7L7H+Rfvnte9l&-)9=>gJAR$UNP*=Uor2wfXL8E&e3~oBW67 zSP67Lo_9U8*1DL#qqBWb_jl%953RM1<==nF8V;wEqsfnC(pt_N9oXC1;#=vRtFCk7 z=-}9U;l}>Kk>&30S8C|GJC&@5+ioRys-b_nWzuZ(1G^dX+~}%$Q;{ zV~kNDIj2QdDOQR~7BiY= zh0;nHOL(;~(x3fpD+nG69uKYr&jyo#1$ppd@T&R85L&kd{E)FI%Kg3>GQVer)DO(S zeBTU-@9BX>zH5Fee8&v2Z<~Sp#0*03|1f+kd^&tC>~^|%b(az#&iVc%?#0ZznEB_k zO9gFV$?GKy9+?N@}Y>0 z*z-sd0uX=z1Rwwb2tWV=5P$##Hc5b3erUdW_@wTxqwfHC7O~I2kGEn7a`ttZ6|air zAOHafKmY;|fB*y_009U<00RGi0sa2JYaT!Jlu4D?=Bof}Yh+FL9oCjG7KQ)>AOHaf zKmY;|fB*y_009WBNPy_aPnt(B|DgN&KmXr6M|MT&V;KlQ00Izz00bZa0SG_<0uX?} zMhNKo6NAAMgJ%ZM53<3_gSQ564`zeC!A9iX%_PI{;x0(o6xIoQ&2NKd>NiubnYzu? zX{L5FB^Og-jY3m;&ehLju%RI^-_T-HT7(uGzl{R@^-RcE@=E)yBmRexiuN?EBwWsxrbJL>UNlsT(w8fUsZ zu;3-5IZqQh<8iHc6320wj)GY&lDI5W%4DP~3FnbnyVQS4=834vB#VU@`BGIPmNKGB zCOTFn6fG4~v?vN)KR6aV7kuO`Qz?1mE>i`0wA3Atk-bdy;t^S<@uUL`c0%|j^ag;CMTrVL|W!ZUl{3c5;T#P qIU5#6x=Z{f(lTev!bpFi{`jivk9YIT!>fV-1Rwwb2tc4sfqwwI^J^La diff --git a/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db-wal b/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db b/canhazdata/d8636252-da2e-41f5-8d7a-402962db3487/tests.db deleted file mode 100644 index a3deb89a31befbe6dcab983caee83e19475ed3ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS6x-)4RHB@f9>_S|~aj~j#_qfj zyzw0z#rK%!^dFl{>9%GK^n2jfla!N_{60y;NS2(RKfcNpu_{JoQjceEQk_a6K7Tmw z>ROk=sN(bg0!ez@6`HK5qB#y#Wmd+!C$s)<*s;#Ps*jZw75#CjDzlQu{0)`u0~PPb zp{mSE&hjt67VGP~uTH{Wax1f(m$>6%ciY_V=%CXd10;Z}6mG zev0?n{bH|u)H@OdwO&L2{+p)SK@U~@9!Hk@D`&_5Fn@jSUsLgI9IDE!&UX?EdTPZIFn~N+o&x4=hnBBgHs{C8-_aR^vxtbbo3dezu`4nX%e;)tL{6AuzGs1XIWXM3W* z(dzht8^@vLBzD{KBRjDge%!I#BntdA4(hJ&t7d5wdZ8P*RvNpinbQfZD6PkqZ@Z1q zO%uZ05fo11epp`-i=)Z{EjqT2tJ%HzuO%2p*mo6eTpSwI?-bGkIAQ$_uUzAmyf z`EE47xX+7=i!UnvT^6@#tQi3W5I_I{1Q0*~0R#|0009K%Bp^l6)K?|SDvZKnuS&?_ zy{b7SMmGo`fB*srAb#=;70h*E37^a;7I{X6cDG2q1s}0tg_000IagfB*srAaGeg z-TycB>xZ7{FJ)o!f`ZFU?rmC5-UD=RYh*`+GDp-~cU7C| z3P?@PG6Ibne`JQ?Y}ET7r5<{2I!MK>xBc!5N;w?G=k6WR0|E#jfB*srAbYwP{HNhCmMuUEVy&TOIZ`mBpD?UBTkIOffJu# zID{i7z5<8?7bK2cAp&vW%wgEVt4=4D(DY148mAlbFX{P}qtd_X{k$kHyX$@X&8N)K z9@CD?iJ$MD#oc0>_Wre-o64)AA3JRCO`xoAZfXjdMK+xqxz5V`@N}ksMqw5IP@O9d z*}>e%byn6feuJWYnC!i|k?X9iS^WK1wBazH>`#7Vlg?tk(8AW{Mz9edUN(&z`@09$ zOE-3Q_ce2CrdxNXTUxW0VcT-M*pheEG>vK_IJ~5r zs>Q)WdmrrW%dL%V>U>YrsZT>)|5K9=(4%BO&8^GhwPxr4EPi$Gf1K>gxsmIvtYiH4 zJlb32m33LxEdKs$TAu&P^3PcQy`F!f=Uv8rUu|X`zG)m^tCzi4l#$;^E|SpaVU(tv z_53~nd%;K(7(P@71xh%7wYyhog6WuUnk0y%S4In!{$zTqBxO{HCKEiB zsmH@2tauTYHBXv4twrM%Qih9^uIP-lN+R-o8P|e~rlc{|6=}w@;8`gP8e3SUCEXhr zaJtiBEj+7opAUH1w1S@#8Zy~D-m&P0G2C&!bSr#0)eW}no~B-%maqoa>M zJi2G;pi@YK00@8p2!H?xfB*=900@8p2!H?xoGSsQS*CjZ*e5ge)lQDH*_*0!4IiC> z00@8p2!H?xfB*=900@8p2!OzaAiy-{s;`ZD^yuI3IX2A(tZWv5t;GDU9lzoCuCZ;yA!zp(LFYEqA! z@kjdje1aRfo-brp7nEzbri8Qlp%P=gR%xl(vPGGv|6)$7 tw9M78XiSs8ncXTabHyxF`UCmL&pZG4dR}=L6$pR;2!H?xfIyc7{sBW(cp3lz diff --git a/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db-wal b/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db b/canhazdata/d87eb5f6-3420-47d0-a198-032c95fb2f92/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb~d?1Sidf- zJuBnMIAoVwTd?}e_erhRYwk2Z(`IfppX$U$f7M>~4sJ7jb7yPcxVJgj+97Ox5GOUp z`msoBT^5UeTr-DDy4jLX2iwOlX$+TivL!dd_2k%`OpjLWgB6XbCHBv3zu4YM)>k*= z%D0Io*Qu+|f0xM}bY8}napbwb7VP~$tY01bFUoj34%y|_7O{SFT%ATNwblp~4SnkwJzo?dFasof;IDUt>T0zR4SXex8 z{1*58w3DPk#}V=LZTd-RmZ{^VUTB92w?fP3PU<*ZSR&?86k350u1M_ZnSPYJq*OXr zx>8yx-BN!7p)HYsX|&s|mSr;4d8V#9*VI(!m{fJP-2auz<;so9oyrmwj#8+ueyOWQ z*<@r)M&{9Iv`lfYhlhtRWlV3yZ5q}L0SG_<0uX=z1Rwwb2tWV=5P-m(1Sm0>y8Kv{ zp=-sS9H+x8RdXr~X&?Xr2tWV=5P$##AOHafKmY;|m8}009U<00Izz00bZa0SG`~IRq#%4R!0`H5uyPe|0NnQH_r7lPPNTST6)1009U< z00Izz00bZa0SG`~X$9o<|KalquB!^Erfvl&tkI+A02Q_cSTO`3009U<00Izz00bZa z0SG`~IRz-G80yi>pJWvO{r~JavdgKBsvrOX2tWV=5P$##AOHafKmY>82*~*-s@1F2 zo7KBjzgo;DV6F2Is2G!zCl!_r^=znRLpm8!Qa9Apb4)(^Q6p3@^!^Whrulv5p@kd} zfB*y_009U<00Izz00bZafm0<=en1+H$BnJVSK4?-8>g!F`4n3>W|=9u&Ssefxjxew kkh(U@?8S9D)6B&4K|mG=KmY;|fB*y_009U<;6D)f17;IFc>n+a diff --git a/canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db-wal b/canhazdata/da992dd7-5272-416f-af75-3cf4a5501b25/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db b/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/system.nodes.db deleted file mode 100644 index f42db46040f964f9b6a3b508f4a9b2ac77862cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db b/canhazdata/db137f6d-3cbd-4870-9a0d-06f74d8712f8/tests.db deleted file mode 100644 index 5e76cdbefc0ae07070ed10a3a6e652f20aeb0bd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 diff --git a/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db-wal b/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db b/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db deleted file mode 100644 index 5566718e5be444e2d8f3eb252c7496772dc9ea13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP9Ki8&nzW+@aYIFhAVt?PFS51y(>8Z?*WxQ^(vv{Zxv>?uJNF=7^fh+p zh2V|v;3&SwJg5KIWJDwsp`w>{&YHhw;18u9l?e(AJ z>`&2N(#v;~qwbN&>GfLX``@zl4tl8L_b9U5Ukmp6AJlJ-{cAeDjY4;swMDGIFsk-c z_a?Gz3s!$|SDeYS1>2}B{b!b2%KoVk-z`fYbb59i9lGX-(%Wb>n@N&-u@i-E?D$?S zaAK9XP8xc#Qq`cIHkDZY`}lT#V)ZusC`hAf7&_Hvq8z{3Zs;UI;&|;eY}P{G4XQQK z+h{g|IPgv0(DxiaOhPA&>vg9Qgrumt^f1*9f_AENxS`v0e5Gnmm`2K}=~QXe zRbJaoM6o3{H)m!-qQw!Y$Z0-_djFS7k4w)>TcyR>bhhNq0@4~E)1^ImmN$Rsnrp%3RP;hz3y*-!X`vBeB8d(tn2q1s}0tg_000IagfB*u^A)tT%x6G}V z&vnfC@_&6L!c@0RU5*_?l?Wh!00IagfB*srAb{}j0F;tI)t80tg_000IagFc$a&b)Dn) diff --git a/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db-wal b/canhazdata/dc55cfc7-2928-4dd1-9fad-1819f02d3c2e/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db b/canhazdata/de6f5029-00b4-47f5-9582-1ab93add480f/system.nodes.db deleted file mode 100644 index f42db46040f964f9b6a3b508f4a9b2ac77862cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*%T5zf7y#fo?X-lVQKN|qU39^U1cY#@?CQ?&6!rqKkz0UBT*-sD=%cuE<3lJf zg6EVX8zd=V!kB(1`8g$=`FsBFv;_pK-3p3f%?6O_;<8LSF&O(-b{&YG>eQK4< z&ez)oy8Y8ZmdI)`+T(~_VQsuTh2@_xajL(WUMn*(hU17`VXchyS7Wu0V|*A#>@>e3IpR2mS44o)7xnon|}l zcL)7ueKd0YdgS53(aj@kqmgUZBlkOd+c)OStG%Vw^VgL;jTk;U{&IY>y|=UNC98k7oo#IuS+Cp$ z2!wF{zIwS&n}6Hy_F5b3tBbu(YkhHTx!+stv^wjHyd+pPMUShEkSTpb`GQ5aRkb8ZR0po~)_emq4gp{qhO*t4H^h`>uH| zE-t>t_-C8aKg;gQX*&W02oNAZfB*pk1PBlyP)dQ2)$(-uaW+P^@~}rG!stv@DVa=) z009C72oNAZfB*pk1PJ`s0wD|W^Z!})yaZK*hdumI0s&JXK!5-N0t5&UAV7cs0RqJc zgsc(LrH3zzNk386aD7?KMB5omfB*pk1PBlyK!5-N0t5)$E)dWESJLf=UZr6VeEvOL z-3RFQDf=k_0t5&UAV7cs0RjXF5Fjw2K*;JL-Q(}qgxeJ{JcN~%<>gipspTX>(`7j$4`x8G6(d)IsW-rK#qh1kPwjof`G*3Nge`{kowvEwLPAx zX?IVz>;9;gw#VzTe^vheeqHsca@qBZGwJ6gePu=&Y|lJ2*jP*d&JF%c=}#K$`zdzb z%65MJMtVd?al@eR*p{L8eaBKwE$pkl<6COK?*yh9hhA)ZI5Wv_kd-piQC66d`K%17 zMG@ahrK^~1$)HJ(%s!mjUOF*zE2+DK56sRp8;>+nL*HS4u>Uh``<;dT=@HZUp0;Ok zO)XaZU{`t#N)}H@O@i+7AazEWTVR_<>A%Wsx>L}%GVns3*+Y{a%k&NO>ti1lbgkCD z)^SpC%n!_xiK}qL9Ndr8k|X8|j>rxfvj96f?Fr|Ir;Y6j=y;9^^7z1tGW+c_bMr6v zUlx7fskYnI`+jVyjuo)V+AzDSA3C}kX|Zcsq2orDF*E<7SNzdt(&o(k z^;bOfsuNGo>X5{dTBp^e~b7*L-CXBa^J9&Uh~rJGw06zKp`iL z{ej&!v+$C^FSRwB`2@*{<|oozl$qA-Znk-l{S)tstf*<>YWRjGJ(kxSNH_Ljm0P=g zVDO)G*QnnxyU0#_^`LS?%Yn2+@4StXRU6ZaYK4D)WvX^#R@XJn-5}SsG)b9h%#y0# zWdFoRZBop%U^RV1lOE-FJ)56v84NZD1uM$5$c?SdyvqgT! zKKxDGAo)3QGBlxT;RoR7IRev-qY#075qG(^K)bx{jMFcJA|6WhM%p-S3RfitFGVGZ7$z>;}biex3(E&k1h+6uReD^9P!oV)ysJ>@{%ATmQ+_igS7^c=jA)D$^E zFMy!u1-E|+O$n;`15Hk|d^3VRStRI3#)W8@Ch|KAgkH$F6v>GEn`A7%oY(^MlIi`(2MBqjvMK5orNk*CeAD&^g;ol=S7Y} zi$rL;HJc&y9XUdOc3g^v*hPkxVV#ESR^LUvz|c~!t&~dlK`)w4@#M91U-s}ylK94S z=hDe+O7lbP;75NY-K|WFx0Q*FeJc~2g)+J6;EIy>OR78t#Os&bmN|z!Haqaxo8U(3 z3Y~;&8hMtQYg@L~_tYq6)7VYB&*rl0tY;MYW*CKb>_x82%kt^-uwLp4HK?gxWaU^8 z%rPP#N;pHmgTZg4b!Vw7^k;Kp-BN(w1n|#7U#O9FFpym83pLOe67Pf!X#mUU zh7;SNYV?CpHC;Bj-Sf3j)$G_YL)X!}F`uFr;EklN&<56LlqM*;A-Dxp#%gQ$YF0^s zCTHnjQ1q$I6#b+5F+du|iTn&;bTea9Bq#njK?R_P>RL@;w0M7HMNJD=!#6bPvAj4K zeQ^wshS?%UBifLbxZ!eojqE{bc}sywK^lDt7~Ld3H8#j~4RSS_z-aMNn-nuGSWVy1 zq(}K}jnO*7ZGJ1YLEDV+(nL-fz21Os24a|>NQ+1Vz%D{M=$0at;ca3xPhx`UG_c| z)7QGHXT%|!r(@~9Z#aP+@~5^p;EklR$T@nEJVK+S|muHA;AICcWwdFUmBgIp*KY{Ua}%1 zn}pu_Q`8G2E%n-3E7}Xai0fjI^iqMOUEB3Tzpt9H$ws8v+htYPbt5&lEGz7K?3GMT zz@698g!QDh$Vqw$B)urO4O9m22;}QC`4nh!o=k(J&+th4y9*o-!Y(c{`yEH zCmuOLMM%b^mw?jZJ@SM_>Hdf?4XLU6!K(@pZ%9kra5?b;+mvI{qy$wCp9M-U5u;ig z!glU+is0B*PsO9?N>_D7{od=|xd2EfS@Z+qFRHQ(L3-hexGp2u`65mX@JCJhVwKu(Z@`xL!nT>tN|t z&eCCI$ClRh*b55-lRYjPTdHTdT~+r3&+x<0bhVhv(u;`Rq`Jsix&@YA65I$XExt0- zN`WR9C=XIz0Zg|tLPc`ok`q*h1g2YnY4I+}ikcR#hHq%nV|i^e zF5Pdxd?cKP*&<9M;E0h#EuvH#Nr_z7lB3yXqXn22AGJv_(}LCX z4NZEK-*zy4Y9yS7*&Gw7E21CQ)()1FdH>odjnr?%pTY_6bWh6S{t2jyuG`UD8fu_%GPt$+ZNNSgA z*&qYDwq)uZ``c<~jEdyMCnr*qY??^eDgWar)v2Kn=4+ zoR(3`_bK!uoPGgtx?QE=#F`JT?a8{7Pi{Y>?X>S`Uu<7()A;mj+CQn@4TIex zQ6uJ%miR#ub>d}cLKVdCfT))VRe1|jE`zAWhiy{K8iF;?0&?|e*D#{KQkkh?wn)@6 zYIE7kThNQ%jrEkZG&Or+R+4x#-MMron_BrncJK?{lJ4$QqVGvm1<*s69a@-~&YMl~F52t|O5-BW!Vh#M9~bFcM&t!Xs0N{Fuw~LTn=P0Y zX)3$ds7LHwO}1(K+`_j}SCqy@R*29KvG#viaA!s#5UKeCO)gQsgPO8^p~|?(pESu! z6+Xy<21fpE(3Z7Uve5=4mj*^wFfbzCD_K!1Tgx3 zcn$_phcr1dk~|iIT#tWsk~c#Loezg??D%NrAp(8GfQ3M zl|mPJS!5qsWEc4&NsTV@x#3;pcUJ8sL-b-FS%&vkft~Iv>V-bC)N8n2#B2ZY_VhSq zHK%H$Yeu#g`YL;~sn6~uv)w-WIxxLSPRCdJIJrG_oY)uX(saCK0L ztYNmu)iP@N{)Aq{)sMe9J+8A_rTN5}C9YoG#MLWertyj7>SRg|xcYo0uKvM1xnSrA zsu#gp#y4NKqFw-Nsn>A5h}S*>u-=t}b=T57)9kvc)ejstT-`TR&-EQObPZ3}LN^Eu z{+h%q@J0!&cLA(d1-FC>wa7Jppvm2oFTnb)>R|ohDr}8Rh^+q(WW6iHRV0_ldKbuA zykD}S*5(~(a+>9sk@d-8Wc~Fja1GN%v_|A1O`>(~X=p;##JhpkyNFqND-`bnT8od| zq?q}&)UXA)dX!f+w0>~~xQ5vxTFa>A`xAN**L@yny{k$CiZe@Sy=yaCuL@ynk!XF1 z1P5AQsEXE~t3ub1y~x%wz=sDo=>@iydJWf$*!tSr)8mx2oUM(p8%CNQsBsvwH=?p9 z&Dm5CFIElHiXFpuebeJl1zAP(me_g?Y`sfxQ>d)*m6=uwG`WW|09#)giLL)(Y3R^3 zav`|>GT?eGBUU7r;Cc;kE#5I%QK#jHO?IKl8J3d4^_>;q`b)$48n&rg!h{gS9?~RT z=PrRJR8hPGbiGE{%3JexjcWOCvVY=3Hz_77Nqry4)uSw{()IPBd=0Y{wU`hhqn7Vh z=tXq>0nqhYl_nHtmgstI6J76G5rWqu>H0DWelu0Qb#Vl`{>|Zl4c#fi@!W)r@Ko!q zzKePRuccmFDV6SnUc_q$fY-Zoytd75sOw!#W$$ugZ*;O;O?ADl&EDt~8G-B58&dhJ zc4g0KmGF8u@On*fTc{9D*8G9u_fo#V>&v6!^}B`x?V%{mI!+f2z$5S#!%VAS7ur%(Bukb z0K&d|48s0mYujOLCV>!tFiFZv_R92dLKG1}8%@F%^WyJoY z?I|19scOO?HsTLylCg77Lldej9)4xIzp;nlmA6pt9x%4};7y8|UrP;JkgG>|jl$Tk z-Cvc>x*E9$gdvB@qpInPou%04p+W&iGWpbhg>IRUc~fk=~>oqGkE zP<8PO!0f%mue?Qc_X4xUM{iQh{90<*f?V`A;0&{G-{$2Z7|MQq^T*0Iqz$_iw%}|T zwtR;|FXHTHg0uHlX-RQriL>`^9?NE&y{G>9A|g3Ex$S#1RlRk29M1mecBl>MDaZlZ zGRTJqIq3z^mU<1>i$L22Xz$BG+wpZTGy`4rEzeU;*JA7G>aMP8abW9O2$_J=^)`!ak*a*4F}fwaXt zCoAf-e6h(cG`YZ1GSWUfB56Oyhi%xW>ItZg7(|*x?c6QUger_z0k!uL!}6Bc-3Qbb zAHGR3^J}SL3v$u>B{S5%qbh3ukWbq%OmPd=mT}AXDD)!MUIc6JtJ0X_%o1zw+sN8` z+3W0SP`iHE7RlPl4d9!p>aDxSWbHTcaU0rGlmoV9ln;+`(hIOH^%|}h5!*jMk{+k* z&tbdo*sia!MRpy-VpB(Gjj+Hl12u}{uE%C+YyB>Nd9b~R-V$u@2W;;X+#)Lb`N~Wy z1)AJP834Ag>;$&|X_>>@$ckwD*FoF+GlWHQiMIEHw#9oVE9$hIvB@qpxyVv7+CDcr zZNG;H+{l0`DBw1t5NQ&(bH6|nsxn>%+}=+d%UgnXKX6-o{3gZBucd}9$aRYH!UU4u z2)O+?kGNr(0vEh31DEeo=taE!?VIUwo&8nXQ=D1i?fnJb-p3}92m@}Byq(+&9;n&6 zXMEoNR)hSq#RuY3m;<=3vg+nTwN z7ZLZPAnpSh#v-{y+y_A1;@y)Kbz0uoWEYy;#ZofjK0g+5Ke9D+BL}L|f!v5gq)Ft? z9Rp3M(ujfF2Z&{PYxEufa*Ge(q?q}&)UXA)PE%e$?vtY-_jk9ZZkVRX1#`>D<@*$R z5!?OofD$_gsx+xMv&7s7HZb>oanLQ2xs%(%12tRs?ufZRy)|}2eTs8Hw~X`QaZY*x zx}{#j^&;qg0MLD~0Nr5_bR#!ZW8c?RGw>tTH`sqot#25Ss|B9HhwlA|-V$^l1auz| z+$t*cC}7PWXmUU03+R6C&Y}BnSGE}IMrK6aH$dG7Gn7SgiMkJhy2bk^D{5_Cf+m+( zju~}d7?-*q-U_^t1yxeOZbTx|BzET>hbB~Qyb#!Zka(820OUbnxA+K7ikV+a4O@`w z4CMvvzH?;k{`;-S8@4HQ!QC=+`A&si#NEGkGd-?zFsRU~;>;3vAKbv*2gHH5NbXMV z5D(OBUD+vjziTV>hWr%h0B;%S!vmf40(eWkhU-Ppwg&J%l!JGy>0P()(aaKyjdp7~ zTeimXUDXY{J{$Gcop75slN>_U^vEF~lFi#s6i|DGlFH++x>RZ~E3#3Irp zdgqcs6RJ3_0=*A0rZsqLL>>Zqix1(XnEAETum!o!QeHssQ{$lb*EZ8Pj8p7_y=Cn3 zy$ZdEy|3R)kLw(&(y-#p5_=y4dmo%zYV2DU2j5DitKcg$P6{+hZWa&JY&~ZJ?ENpz zO%qO#7ezYYTShwHYel^P-%_vPdJ%koet?3?;T*no-?SplVcc!8w{M$q)K>$q&!&3Y zvDS?u&ovGHgOms1jS_qx27Dh9+%hVM`N~Wy1)4la834YoP71z1w^|zeMs~!1F9Ura z&X5+#CHg)L`WEk@tfl^hel0a@L9V1W0Dhky6TiP)CU97%;01rn;N`mⅆ#!I&0~1 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 Q{QosONW+RF0VL4-FZAzWv;Y7A diff --git a/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db-wal b/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db b/canhazdata/df787e48-8732-4914-9f80-ed19089df3a0/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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%0AbMSQ2!T<@kDs5o> z@%^qpKKaZ$#Q!G;(YFWDYs2W-Vf6iB^yVmfaTGm1iXI$AFL}{ZUi7dR{oU`JCc+^E5`r!(p#*(t5?0k&4dFXn z6|Am}NV&}j3bG3nmDiPK5H5I9L*?zXmQ}bSO2I@b70qi%22eF#!V0RSTuTNeWRnDNjJ5gbMU&UfTU?Xp?EF42u<{ zgmAHjqVz(*jzipn{epN!wUiZYObjWI3BzHng*304JO%|(CXgEqPpM`$B|+SiMkIM! zr{R3gWyMO6NgI_x*3%7DF{Hi}@|U z(_Nx8=Kt7eDdIResQEwmT$lX+GrxFas(5Uw`181Ucw9U`DZVx-o(zh=O&5<&7r&n= zzBN-kJ6pUpcU4ykWYgshmgh`YaKI*sg7b=18Js)9P+ju8R85lW%CzQJoulm3*?`l)6OeRwa+jJEbm>yj5vL z=A2TOXy2+dB(qMbOGao_8ju;M)Fo@QD)sUD|I$%xD<{1Er(9Icg{<1jX`Kw+k=bSB z-Kw-k22QEV=)6^FmGqrbml1rc(h4C?smmz8RcSf6C#Irr zPIVp;yr&5!d@~ZbZU}@sFa^n*CQYaj_A0o7*;1X$n!?PcG7U>}sj~2p)C%S&VRQ+9 zgjq>x$9fzFbr2b0o>bMkY;?FSGZ?CZ4&^+C(Pf+osFt= zv;Xt|)1QBT$Nx{v6|c@0-V_%ulie+7RmM{N*zW9tx5}I%PDmkJ+vy#ltM(_;4&?m*4SSJ>9Y+F4p!Z++Xkmo_ diff --git a/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db-wal b/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db b/canhazdata/dfa8b02a-4474-4830-91f2-fae3d24cd287/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb;L$|q2;q2!4jx_nrMx&oSA3vnE*Pidb{fv0V zBgSz#iL;OA2{(yheDMB_4IOncj|2XmEl|lD8-^xxR9&A{6?!YP&C^@{b0*f~AM1U^ zQ+0nZCP!|v3t}r?Rs9{-nn~E=cp&^dTxo$=B_zyt6obE zu9&v&vH!sChr4^t=GvB8_^x59Wm@|9U$@l;dRWz;XSL7mwPO4K(fIYb|4~)HnpG8g zE2}tucQ)FaD(c#2S+VgCUp30|H&T91${)<~Q?u-I?Dxz~oP#&4<74$IOL(3{SxcLw zPASV|LM}J|!;7dAG|94vGRY+6Nn6o8O(I^&D$m*cOn(rw%amkk zonRm8H4 z*YVs;hr@MaG_Q4R_%^O9v*)3(czip zj_&vX0SG_<0uX=z1Rwwb2tWV=5P-lX6d;CU>)Ve*RV{P57stubovKTSh*gFF1Rwwb z2tWV=5P$##AOHafthfL%h_8QoJy2i$hXc=5R|A%I6@aYDk0Mrln_=}J009U<00Izz z00bZa0SG_<0_PPV>hTl(=;4#9F8}-g>0>eH9R~VC00Izz00bZa0SG_<0uX=z1R!vR zfV%&0>(>uGrTY+5KMJt4LQdWTw6rzAf*}9_2tWV=5P$##AOHafKmY>wrvNcrU%z_! zM^)ARf5Wm}XIT#b5I>5-D7-(RF)9c^00Izz00bZa0SG_<0uX?}5(U)!6Q1{w_qcb( zd)AwJk;lE4yw~&_0Z>+3z&*ZN;tthCldy0HI&jz1fw`^@iRn9lb9AO4FMNLIgsa~;~ikEXW zjWLUxs&0h{^Q@V8vTgD-uTok!qM(eYIjzE2rA{kR)I}OfR!v;>AykVIl(Sq?mU2m} zBra&mGoD5fOIp!RoJD3zp4f}bf;_Pnnc;Y1E;4)ZWTC4m{+s`qfBGA%ylt0X+T|}! zdCMs;W)E1+r4YZH<#~}kblxn_&zoe}Wm;q}o|}n~L6>QfJ$-H_gLqx0MUIAfnWldc kx68E15i>W_pO}CAqURr9%_9$M1px>^00IzzK%WBt0tJn8>Hq)$ diff --git a/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db-wal b/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db b/canhazdata/dfe757b5-cea9-4857-b02a-15ba9c950d4b/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb$ZOg4zni30{CV;85NK zPF%Qig$juSZ@^Y&k~F?_Nu?UQ;Xl%snMkAYd_O0yYR8_BAKuUkIY-82x1PK`O7)5o z^6bg;p{{i?#uZ)<77)qvA<<-(iryqtm0OwYp4`Si;=nrphW@NnRBTN`Rk@Wi=5MNO zPpfz|3037*N|t~1E@?FSi<^sI=wfa;|JMUs!zFJi++JYj)6MlQ>(1k~jZMN<){?Zr z*f0^Y(PN1iCJlSkGst>AU0dI~r#0&7XFXR3E9stNGBaNCwyzmX_t-kM@nT~$U0GUH z8{Z&?+NP<$|2?L5&{-8&UZ|EdT0# z((iw#{kOFL$>_f}`g!Jl=-AZSeqfHjs|%qoMAw%wA9zX1{Uj88;KY)Lk?=cS?1-)- z2-8QCt?KexJXjtdSoA@oxA>c~Y^1J?g%iYW9>yJq`(5F2Aw#KKn8BN6Yo3HA8KSHrR`4Y%0zOJs1$uS>hP{? zN8C?C86<8LNO%A2eo~r^6sY+}k#MX;J4Fc5$M1Rwwb2tWV=5P$##AOHafOa&;Rmj3DW1r@B|69BX&jhwDi(*Or7~LsHs=tDy&d*ruBUan;$j| z0SG_<0uX=z1Rwwb2tWV=5ICs<)qAAXde~ZTeWR`Sv~^O`C~)3QYnGLgn{1Xe@tzb4Q^H2?qr diff --git a/canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db-wal b/canhazdata/e18e2fdf-bdfc-4278-9f17-4e6f5d275f2b/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db deleted file mode 100644 index 612c8f8a2f64f5971ebdfa8a4df448500d067837..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI5Id3FI6vw;zobKV2I09B^5IZ9@Y?-dUJHjBu(Sn?iKB|SaYkOr|tcX~NfQV19 z1STZnD}V?{kO)b^0uc}sESGs@kKG7)c4t-^&&d9l^yXEM%CGwUs=76e;wPK)xZ6zAKDd5sLwQy7V~5Xs6R4V78=699k*!aR+``Iacor6a&cG`Ffto80 z+5W`HEv&3!{sv|HFxh((Be$@!V)?tTXoEp9-W&hK#tX~&QU|s+*21;q;Hqid+}qi= zUb?xxv!|Jx+l?HU=0;PsgLSj1HkyHb)H3c`zQ4VDc1!E1Wz@CYDmUesF-@ah3lFa7 zrfRYO(C&x3dvbGai#p%cbn4Sk$N#!X1N11_&l6kZc&*s{KgwU7`yVI!YGULTR#q{8 zdy?&K^2!!jRxE$_HLWOqW5wsJ_(3l|)r&>ue&5*4I(XAKK31=Wv6O8Z_qb#e^MkXS!Q_WQ8h<*3Qc3s{$K3%BO%leCqnO!755HfE{$wkvj9tDxlGd~G< zn3a)V)qWJqW@;pj8C@hP<5IM_;F-*P9+gqe%cyF2+BR7uTAy|>ni@%G`hOyYX_eJ;rprWDwo(jdB@!{bo zA06JaETB__1OX5L0T2KI5C8!X009sH0T2KI5I9!?OtVaN`Ozga^yMy&v!g3j=bAn` z0|5{K0T2KI5C8!X009sH0T2LzOF@8X%u{z8_2^%Jx98Zj8nCog0JbVOMO=!JN0J}_ z0w4eaAOHd&00JNY0w4eamx%z=Y)?IU_%xYr8g9>W>}A~rz>Xh~xlH(xD+qu92!H?x zfB*=900@8p2!H?xoC^WE{%@++4?UxLW4d}2U}=S&ya#A$dw`BX00ck)1V8`;KmY_l z00ck)1VG?o5@7WDN%iXGAIX+~|9|%$*^5aVS%ClufB*=900@8p2!H?xfB*=9z;XzX z{zSk3RR6jDwSL-vwf|24-G1HQ>Mv(!&?^z}ywg<>uM^hsdfm59SGBvU)m6=|YIIe- ztFqH7(}tdso-^s84@+k~$FwzfNq2!TyUiOR{gMQI;(+vhvNk65p(x`*BxxPi326nT zm?R(o0w4eaAOHd&00JNY0w4eaAOHgM5^&$pMx(b!JELFO=xa8*!$!aBqwn?67y9U9 zeKc>h2Wvm{{6ti7K;pn6B}v{W&N5EhA#cl;gj1t7DE)fqHd!jGxJ`H%snvnB@p&oo zjQe3w=W$yFZ5|AJWhOq|EW>HEWnzN`N4~F^g-uj>Z^fyLv z*DSs?i(jnbj#WI^h+d4pVqT~6Jj)E7s`7lu+%D2Avv_Kxe^{@JG|Nn%8tE_QbdhE` q8m312li6LQnO5+osbT*O{qghGAHNt!DzX3p5C8!X009t~hrqw;o_2%) diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db-wal b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db deleted file mode 100644 index 7801d864adde67b0703ab3909ef7cad832da464a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*OK#IZ7zgkfKT;(EQ3MDfBve5YmBqAvj9`}=v4Dt2st{qlj&uvs=L`}O$GlT_QB zu{STb`ldF;8dZ2aUZ7B0eP+m9isf-o)mRyCp2qq=VaF!_IWtyfCe91yz4oeK=9^kQ zT~&I6IV)7nIZj^{)!ee9ioTj_?adVp?~dlOm-_0^cJ5v~IlMP&=PXsLtA{pp>~b+2 z-msk4`HCL6n|fn&gITmB+r0mm9oj%wD1MBi$?Y{|<9{!I^Vxru;^R1|YOG9S{;hGg z+faWJ1oDvy&wil7RlkZF{O zEKIdf+Dnp9CR(N;oBjI}V96$5MG!k}A_oN4Z~RzDRZI37N}MuVH~{q|4G-~V~U zX%fP`5P$##AOHafKmY;|fB*y_009Ub5a6uaGN&Hiq;MU}p5#6NUh90H11aDI2tWV= z5P$##AOHafKmY;|fB*#kAwb9f9dr4i+om12%&7nqD|}imiZC$&EEob1fB*y_009U< z00Izz00bb=i~t?~x6GxNzf(-|*uTk+TeYr0Ynq}!00Izz00bZa0SG_<0uX=z1R!t% z0lNQ$x&O!s=0MX)3v_GkC+YG!cfz6TKU(J2bB@{hGvOUToYTFCf=TOQ`4E5r1Rwwb z2tWV=5P$##AOL}jCqVmuTCGbs@#5lb*`qUZEpyLj7kgWdCc+d5KmY;|fB*y_009VG GNP*v}tx5I( diff --git a/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db-wal b/canhazdata/e37b9942-bc26-4dc2-a03e-c503ecd0f78d/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db b/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/system.nodes.db deleted file mode 100644 index f42db46040f964f9b6a3b508f4a9b2ac77862cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 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 O009ILKmdVF5%>euC)_*$ diff --git a/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db-wal b/canhazdata/e43c26ec-a055-45ea-97ca-8a2169e14e75/tests.db-wal deleted file mode 100644 index 2f8f3f6076d940d4b55d407c660d1e75ed29448f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 115192 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 diff --git a/canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db-wal b/canhazdata/ec1316c1-e745-446a-acb1-4ebe7dea961c/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db b/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db deleted file mode 100644 index 1af2232af01a78dda329d7bd763d4ae0a5813d81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI5yKm$~9LGI=uDv`Z9t9_~h}#ufnBd2Z9~A*19v1YJc6hQ^X7Zi+eP(QBz4rXR`}Q;9 z8IKsJ<;>4sUc}ubhVjAsH@39b#XNQRd3OS$xv^zvWR9}UnJL#>nN3e``WF<|@sIRc z@su6TOu635I>v9QXdhJe?#z_yt*lx6{>#Q_R89}3Kapu~F<)w7XKN$bNRO`C*7bwE zL+8coyL$(Qy}jGWk!^1^q8)A8jo4~N?nz7DwR~@P|IRI)la{P&xl?V+J8Ifiy^$PU zF>T%A@PYjg_YdUu#*XTI-!N65mOlPBZ8bp;EBkq7ea_dKt^bqw^|}91Wnaxqx!%e; z#_!Iey{WvmKFgZL@4sr4!ZXYBXXCeG0t*6Fc&wXH;&CKaP~(+J8~ z-O#*}DV1$l#B~;_cUr^N=ZHi9+HPH4J3U?K)63@bCb2su*(5SbMMUc~QA$xAQc-0s z4V!{jRl>Ox*<2+;tWK#FEn^wyG|q~IGEo$?D5{KBb(uQ&{j&f1x z+WJ-DTH58Vsa@<6?IJb*LGW1cbnslT-r-_&7a~Bcv-u?UdCfVmxo5QtiT2R=`1q5L zj_+D}=oFG500JNY0w4eaAOHd&00JNY0w4eaOC>-I$JSpz`pPVGwHL?9$v0I?4IiC> z00@8p2!H?xfB*=900@8p2!Oz)AV3Tf=(~*u>Z89u@LY8@U}aYU$hzDVaVcgVL4p7X zfB*=900@8p2!H?xfB*N#6I^kLeT+5y5hh`u3Y1%+4(<@Z^^$j~JSfB*=900@8p2!H?xfB*=9 z00{iQ3HYxYlgV3?y~(d+@->;#TTZ#06|kPYkf6)*yvPcjo8|c*;&)1mtm3&!f003_w8%=It8`4fPHB;& pVXo5O#O;(8Ib!B2{fYeJ%g#T(o<|-=1p*)d0w4eaAkZg)e*vK3a>)Py diff --git a/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db-wal b/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db b/canhazdata/ed3e16b1-c63b-41c0-ba7f-0d95aa355eb7/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 diff --git a/canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db b/canhazdata/f0128c90-4359-4013-95a8-8d2acfe17d2c/tests.db deleted file mode 100644 index e68d88a4548fdcc17bfde09526507868c5af4d72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*!EVzq7{GD6NjG&8ViO=Vaj9UP;NY!IlQy}Poe{49X`DzAj7?p|c4H61p|7zU z2P7`M15;mQ*ll+~1GQ2^qxEm;t2N2_>hI?^s*)x7`QxkH6x(9jZu{Avi*%P#h|eF+ zbKBcinRdMXTcEGcb79GIn1?ik56=3cimj~vwF|f z{an{KCgXx}b2@J4@ZBIi{g@~5Fx79(@UuI&s!q1@$1kQ^xrf=w$(;jTCpl=3pH$pW z@o_q;4%4&YnW&ieb?o=Q=b8n2xSoqNso(DVcT9Ynh3N`wCHwwQ>fe}Edue(bMYfXF zUpo?4@~UK$D$;*xxuqOm3h~`>%uZ+I_Txdz?omd2?YN_Z)bmx?N;2gKfmV_3_$m&9 zBucVYq@%Xj{&W9!ec_DuT45)Qb(|2X|vb5FJULtBe zvA@4G6B3n2pdsh^B%1Z#+IqZIo@q0a!USa1{?NBgZj@z@e{*y5#l&CRn*J=CE)%Z^ zAbE0R#|0009ILKmY** z5I~?r0#Zox|NlZfD#4uOY7ak@K!7PAfB*srAbzQ==R4bXwvWS*>kYEhQNJG%ik926eLjx!`8XS6%yIn`NFjDE zD6))#SKbR4umMZ4lL#aZll%b^krG8RR-$lm%tlH6z*3|n%1f{!!Vyst3CB_*5%PUi z{q=Ou?d;af&Q4#BE@@|GySl2ne!s7)>i2b3^^*-AzJF7rA!WZC7qcJx_;)M&7vt~9 zj{SrV%5d<1*7zA6DGV;^6vOh%vXUAdX%C##&dcB_s`!-HRnE6$!ej-DeTtXeTW-jR z-VOp~+lD-z&GPy_{HEhq;P-QdePoCgnM~4q}-k;mKoidEVd!FI`H#$ z{8wu7gB5*BJ7jvA%O*@#An_{ReGtIt`u&^wM-as+17(X@JVZpah<=J4A);L%B0puy z3)oSzYmSI_OicyhxDJ54(c`E{&5hMYVyV)EE8ek2M$mc*wYjgw#b?&Gb?N3}4BlhCwP+jkPx zGBiyM^&nJzBX%?|boI!#8kdh6w&q)w;i+~MVhNF{`dC)%nZB;YUKpAVoR(_3;YGft zS|(hBrRi{*9eAo28$pyNx*Ho&-hMG7(z2StExZ6f55ON88;_a)XBCYJv3(CzcQs?X zcf9ek^s@A$*2_CWgtA_OtgWn}P?{npLn#>}%bW2OYyh#6AK5t?M8sne7y zcG5Kdj0eei2$LSXR-Cu}C&H)kRRYXtZ%=wDrhlJd{Pe9{x1G+mRoox*z-I7>|MOIbIM4k!qz@tXg5@s-EX1YHC9+ zhVOWW8=}V`@U$pMz$f8H9yk^ZLk%L=Q0-K6yaap+i5pMqF+eVx8JC|T($?YN@BMm4 zT5F`b26vE{rWU%P7pj(<>hNK>svl{QYPyLAK8eKCym8eP(G*x+%SU&KrfQlAB?Nw| zhCX;?{7_3ZBMIHuu_vuA>&vyQX5j8b2T2z&0Etp*kO=xYUIi6-FP53zx&6Cy2gx_u zJ8_aw=1Y+G4dfzei5Lx~WK=EVwV_)?X+Z;&xk#w5V^MSexW-&07ZKqp13_JMk*o~z`;{kpdpl1X^UaOmIH`0-8) zybuP(Ftmmh!^=v z=oo$1cn$GFU&-l%Wnam$g0Ey9;$P3imDJu?-OO`fn^EL=EKLV>?>pt4V4Zs^vuB641j)O#&-UVkh+z&jXF@2H<|MLLHnDK1?F; zY+LnpPgk`xbaX9o-Oxe@gHVT6vI31GAvLh8E$$KzXZ9zzQ}8*v_;H@QnFiinWw}@v$>dVH7ZrpRf_5307pLG;9bK(5=UwBPr@3T zPMUB)wn%Yx(>cVIFhQ%nL_`0!NQ*`(8JZV(j$qaOtA_qGJRKG~mtR#5{ZC>IY3P5? z(5m54HasH*H4P#ShW=}ljs6L7(6u9bhomLH5RdU6;3*zd;R$Tp4 z3y~KL1UdS&-@cD0DnF-rnjh?)$c5XBaPs-j@WV=5gjhxBR#k*lu+kFo&4{_$U?QHt z1O=rjGG|6?{*xj!zetfpp5G{v$itu_!-q45|C0`)rFc1&B4AL;k$ZFz@6ml=7z6O7 zRC$w1ZIN1Vaw99YGdbBWPlkk$^(Ccgb zc!y2crWl6S(3{fEy(#%z`(bYL{3S7;&pb;UKB`~AVn@9xhY-W50zr*NOEXXEA?|o6 zi+GVYrN(PKUg%AE;^)iWlyC1JnlozEpP>;=c}VjN&$T}s(i{TxU;hF>e0{iHr0ZfX zMm-H^j5AMUGIJyaZ+0|e3%9l zS~%MXe3v$y21}}ZGl*l$)6yOKE<5PEJOl&XcE!$12^+vU2kN8VgXLze=-}j4zRRyH zOzXd-0+t~ESF$0l(h)HnO36lc%XockDo`i)Ubd@sUsmb8ybG|%y_d6GvVdbda$k}; zmWVimG$0XDyxh^}`F(e=YNQm}0x)bZr? zoG%eS5TzX9YcKJ21G=*+Buwgv)M8tJCOUyIxerqjU#CR*`nCvVR0Q@PjWKkMkZ?}nNhXt3M{vQAwSc0jTGV22W0CW+mtSYubY zpAGAMNn)ScRAT=_Z#tPx2DJpX^d%D6vWV$WO4c_oXQtRt)&hRWTQIC=sDufBz^<|O)vPio|DMw_$J{*(cL+xA!>}9J2=05wRN*Tb6 zi)6riCXfMN-d+h1?#S2^Ib$MS45b`l?8Z^X_DR)HRwZNiS68T;n)(yA=tLKj#k&hyd69>u` zjh5s#Wkhkc(GFoHOb{=U+cjQ8d`5qvOzE92%k4*@FCrY*A^wHW@l?{n#%f7!XFGp} zzTqZ`VZsyX7}m<@@XNETNcFWy4|LevBCy;sa@&hx>kbE2?nHqL3wbmU(}5ey2? z+3p2^Z73;jGRhJa^+1W)B4L7t{c|J+7DSphN;x714vdI_{r$yi)IgPD;Jt|L(+uE7 z|I9RE;2T@%0fHV$>*l11bTpK5gtVK=q#f8(6>C+JcCJX;{Zo?msqwrK_Q={sW*o|b zh+?IbBdpy_tlh+gcV)CmLbc$x!>m3DlLv~dot>Vw@5#u^CV>jV9)+a$&DnVr$B3zW z6ov|6BEx@wv&MnyENt4wPo6r^_?>ZY4Iv1&#k?6m2@?vj3>#j56{t`&Q(Zlt(hhDaBjI~7<{uVpoBNL{oN zoJ_t@vG$hmR-bdAyM_&SNqV2zQhI-9adP=h#b5`0hQxQ*6fhr3$w*t~=z#d{mc{o% zW$L?1@qGf|$i?@J_jf~EB=t>pS>mD|D=}jvOwh9b_-S?stW%_Qqm(0(;FhZ-!Ohi3 zxhf^Wg9v1XX8*lAk_3OWxhf#^k+&Ce-bA_^N;$&Y!K-+?r5fU@AoG4JXXtX55@izvFtBsc9QN#o>A{k!eHN?X z1FyX_jZ{s1TaQ9bgZEe9yDvrdm)fBW?~x4eR;I=)AWF#^yJZdu2=U%fhy2_-PpdHlsK7YiHv%< z#H^7p!98b`ecV8QQr>gsH~7*119|iM1xWSSZ}G#5(D+;Fiikup7l7EaLuEnaxv(Pi z$X^kfU#rL>)4vs=Y5j`O>RGXs-HOn1eMM;Zxq8z?dTI6lhfNb{Tg?2%#SZKw-MBrG zVGOkotOL8iZ+YmzZbkY34sidE%Kt-iUbRrA{C_{fk+qJ42WKPy|6k<=S^Z)nNd5ZFG6bt%Ny@_a}do50%eOvOOCf%{)`8(h!;8DYP`nd zg^su9pD8=uHf|X@-f-L3pUq|Dh>-je&v$S(ACJBX=H35YeptFL{B+mHq@U|!)zI~^ z)rfRm>`7X0O+02boydDt;UR&@nldL$b@B?jY`DXAZmLw;9|;2 z%WBq;`uH5n1AkJl;s;q$pI_5FKM4~y4=5WXEuIs4j`e4ICwrDfMJ+-7+Vmu=FJeNJ zk`cGe;Q>crKYxA26SVEWBX3(@ zq>ZDLBi^>dTYKAX$JZ{CSY%hQTOU<=+aAG6k+<#rGxoOq?a<*y93Xptkh3S!^-#(Y z_TI8NdxyzcIyd^NWbcDT_8y)+d%sTv5(!A(GdX=baCILc`rcCZb(#`jQU7_!@oIxtF=CsehW}n&<3M%#Tdel%7rouR3MZOg z)86iPBA&v5NGN){>k-m;_=3Qc7Fl{58=2D@t^oAPcIENR!j0c zTkWYidY~nds~R!9Fv#*P3tmsIxoYTy@a^c1=9^>O5h6oZ(A^^QoOUSB2PDt?73*_p zz|o%PC$Y_@dyqVTP*|S-_{K>jIu*7AHT>tSvdTcjh$!WVKp$Ks(EDiC^AA-DbbJMI zF3@NH3gV(dCj%|fQ4gA!y%8p8+$o8Kfk-n)DMvKkTelMlN9LsRsuT$yLTpJSJhEFN z;a_^d8qt6RF6RV_bU>7HgupwlCh)BX_P|QQT;|P*!72&7P$ck!yGY=-dP~FuxY`@d zeOPd#kx%zVS|83k9TC|}*)duJmRm!T6bWgC^*GyxE8Cv2vlE&Fky`AmjM3DD$qGcQ zX8yt6GSE7D;$;6*wxf5@E07Jxxce){g9D}cdsI7Wqlc;Me|1-x_cZ?^*RT=c}e zEh~)T*ag&s3Wf?{BEx@wvc`ex47QkeI3Q05I@>!SbHsg+k*b z%Zu`U`H+lTUgLsaM}DV#3=tI!lx@)yQ;&qlgIC0hJTWz1il`x6Laa{a6q~a z@!x!rrX|Cgy4xuV2*?r>7MFD@GfRcgUztDar9OjX zHoU~ygqJvnrWLA5ni{@uI9g;R;9?P3_*Gk(qqsZ}G57yWxup7K*+G>!%9`dQ>>yE2=Zt6x#%QUsn4ZRRwfDUW& zUBgxVNQ+d{g&pZ*BQZ74RGO*lr*PAmD!jAJg`MSXxRDb>Q`68e?IcQcBMubF44l|b zU`mvyM{v8_cC7lbgWgv=@}pGuV?W;#qzQzP8hY|^;(ZB@dc@_TNb^A{+4yXkTLDax zSwtUP7c4_!lVk?4;JX?pT$Mh!QwT?P!}RanUgdK1w*Mr|i%vLdn<%axFAs4fOt4j> z1)_PYh9>{_pXDbjy-8+YV9GzFlFz<{7i;njYf zQcmP)#gvyQ__kZSNKM#@GBc zq-Lw#kr%qX{$O#>4RBz-p(WH-%=VfHllw5+r+MD}-Fe$LE^B%=^Dn&$zo}?O#|2(A z^z-{)fuC3V;%)_ZcDB4a^JZfnyBVtVW}m}~(c_5wSuHQ(jotX7#J;}PWM40};OmF& zrR=Ti@E$mL^#i;`;Cu2CY(5E_7_zay28oh2$K~^T6*qs3h|vfP_{*X{Lw5oimUa-5MIJW zhC|<6C zPxcJ5A(Rt410hU?Y5!5vS3D@^b_$qXI}T#|`_S5HC|}qqV0P^|VC^4& zw0HDqe(dbA7s;_*Yx4~)JUn@vA5UJoY0$s>>^Ux?=wNWNDw?Aw z232vgI_h3JQ`$4Xc>2s+pEPT9@(>wxwDOYJwYe;&$HI|aZcqLkZQUP9CF{&z+ zYN6vYQE97EpAf60qnODit|_Yoa4J$xmEel1LTTMd#dMUkDmmlZdY(7qEqhzu2fbq+ z^D^%v-Y2}xP znY&<2>dqUJxO2uxch(r;&KSepX=7q{${6PQ#zgJ}3{&pdn9Lm+le(TUiR&68-JvnU z9T>yizA>@u7{gp*Of){xn@pA_+mo9ohyU%nfm%rV+dHi#gR9=~s^?zu_8ZB?iw}JD z;@cc%TGqS#`~7~YSU(a#0!RP}AOR$R1dsp{Kmter2_OL^@Gc3E-f&=UKaQdFo&DV$ zCztM2y~~E+pCJJxfCP{L5|n=!Jh04kc0A2L@O=)1rk64NB{{S0VIF~kN^@u0!RP}Ac6l+ z0;K0|n}0oAg|e}}y4JGzhpmC#Zy&k*k373y5!QeNkN^@u0!RP}AOR$R1dsp{KmthM z1|tCX{|Dydhb}GeiDUj1VBZdM<#T}c?G<3fNB{{S0VIF~kN^@u0!RP}AOR$R1P&(w z(wl6X&-nWbl>LAH-+qql;iQeNLIOwt2_OL^fCP{L5{)+zr z|3iN2f6Tw#|Eyp7clr1EZxH_<#J@oNKM?&{zu&bqVKow4q;b*HTBTX$kzn^sohc-GO!c)^)5)uDYZbY@5_`H^b*Y z4906S!}+b{NpI@NqVH}@dzbBW z11_z~GNmHT7|m3rsZ5%xtc22qu7gR#z-wdyX@<4=0$GQ%OhH~=nSuZ-v=CJ=7Ft3s zVx?%5)fE*P2x=v3%F9M&Oo>=VEEpv$s_LRtkR!NCOpOUusnoR4y2^?=u4AqPFBN4e zRLN))H;_qK#)4)=q-hn2N<=9n8Lq3qtx74&2I`4boKaDk1i_82D1+*nD6V)J*FmRU zi(t?t3v$r!lHoXTx@0d7NSDmSlTZFn{^_Ut`RjxHM}z#rFn@TM|JKbPaQ7f7HJP#* zmD5s`Sq)jDqb39DCA{N`LHg)IOBp2@E7PKC&8R$0e5=%@_q8fbk%?96(nDL7d@{C5 zU3zh=(u9nxQkS0Isx&5^RqApzv?`5=Yn8fOF|A4-<{#hd{Nt0)yhHqdq91;{AHFgO zpBaSTAB3+D!xx6(W5e))VfdmOKIw)Jx#8cv&cj5oCJKo3iAZTx#}MlU1biiGPMK!9 zsVcbmnFv;ygo|86l5&W}R47%_B92NJ7DU69j-;y7U`0cBOJpf%4cuTvkPx4FQ`15< zvJsV5ki|V%mOR!`Wa3Gj!MG9WhN=XI_CIk%+7=B3>|^26L>2c%^Sk?@#7r0VPe1YzrH4Vg< zBIR&FahU5xtxD@;%_?hqDs_p9tx79o$trb; zoUKaBWYH>hiLR|mOJu<+b&0^ON{eLPDs_p{tx5}I&MI|@%E=`I+cUeYyjzuqq;HkFtj=4N z2E?&ST~_d|N_|4CQkPYJtCHj2@&3&JpY_5=yzoDx@cbxzd=!3j)Okhlo;H~9kCDKk zArNe535S(f*1#5M1Up|mg*9m0WHd_(E|jQLqGfQTg!L?V73EO_b7jup1lSa#RTAk~ zz~Z`$%3urjO1X>^MvKPmU9uQrYf|4)7X{ayb* zKAXQhmw#_Ae_{T*_5uz~5XXif0VIF~kiZQ~fNa~*}14BUY))tiM&MN4Bg| zmz6=A(y@zV(<*gYJ+vv^vW5HqZ@!z^$_e-XuerP0$_e-XuesaX$_e-XuX*~cl@mVy nbIsFmt(@@rA9zqLE;JX7&T8Gt=|JxP->{Q3Y&a4?0=@qN?tWX? diff --git a/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db-wal b/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db b/canhazdata/f149af5b-4eab-4e7b-8894-457ab71ba44d/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMb&IL!U;q{O>w-!OtOh}=r*@0oZTGXktQ=6jeg_b$M#C=U3vmmk)FbzBWZaFszP)qrkB~wli~-n_|z==%>BNxiF5l6>*!p)97-;DDni;u zQc}@mDa|;~Xk90~3EMDCS!LMz-DKatwq40$#EsAXXPCi9}jAO-z$2DXCyw&@xJ-df7y>j(H^WWNxH8#Oxxe z)JiS|qiNQt>{yvm*)$Q&Lf+)9nxkfNUZkspkSfKoFc9%|Uly2ZQdvUe|TI zuG4kxu4{E&v+I(RuG;@W@I>%za3$y~A;evR0I`nuC$Ud@&PmTb?k!={?wa!8;FFII zPAzv0#|sER00Izz00bZa0SG_<0uX=z1TLTeF&tZe{phP|najO6P7c4Rx`2q-WC%b2 z0uX=z1Rwwb2tWV=5P-mn3lM_@`lr_e_0iuSc&@q{u(YcHWL16?vEus-n+E|1KmY;| zfB*y_009U<00Iy=s{m2ApXgf;pH_AGpZ`y8i#cl=7!LsmKmY;|fB*y_009U<00Izz zz$pUi`+r+Me&`uJhM4+RfTb03{2ZXAZ2=~R00bZa0SG_<0uX=z1Rwwb2t1eq#Bc-s z=;a?(b%`_Zd_&y0R=k_oiOxW!_8PYx;=*D61{t2I^`Fi(OwgsXNe3;vQW>ab5i?a~<78uB{vHTDl2c zQ#ZLwbR&o{4)oG@O`2S-+1oap=8U&A zmuX(*ZQI6?94~YYVeFOadP2ggh~{}+Q;{|$&9XS5EY0$e$*8TfX6#0yZmU*E8kcI( zVv$r#O%_KqO3GHstYu9l#?B%uC6DbzRzV(Hi>z=wHWyjFcuW>qnK*d!KkH9_V-cSRIYQ^I^87dPyGV;1#d9MakUyMxJ`s1s4=3%QK009U<00I!`Q{Z1l-g7Si diff --git a/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db-wal b/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db b/canhazdata/f4893831-00f6-490d-b8e6-542068b334f9/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbk7{KxQ*j)%)jT%inXv`kk#*lyzDA*g`3{N4j5Q(KUh1htq58{DG@#e*c zP~v;w3@mV|#7#QgE&M0>I@@$QGv9BQX|mhh{rTgY06r=uB#uB?@4_gL#cX2&M~z#J<%9n&auWv!$!e@AEgP{)TTbY-oi zEdTsF6$Guqr0`n`)^gtKj=e#tTB^?uUFTwQIrZLr9E~T+9gf0Y;JSmb(+`?%*cpUD zcG2==)AC|;d2>r|(XzH_dEOrOZtT-_x~1yuWyUovrVqwn#*^N#bgl;sV>^I82b}cLy>y7?NvDWK!il^0Xy?EO1R=VX{r}nnrP_9{Zr}?u{w|%x;fX(9C zEX?)(KRB>3L%K|{fG_IwAkOL!jkxPAZ@raWZN=^Pw%gC= z^RGJoU2c0o`a=K#1Q0*~0R#|0009ILKmdU|7ZByS=JI1+hm%S6tb{DCRNXlN10sL` z0tg_000IagfB*srAh7cSqD24yzfwbdnxDiUN6`LB2BBsfEcMgRc> z5I_I{1Q0*~0R#|0;C>3|^FPPO_jBsZdaJ+@XH&NN@IwR;KmY**5I_I{1olthFEM4I AaR2}S diff --git a/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db-wal b/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db b/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db deleted file mode 100644 index 2801a443100116400d724fe3567dbabf1dcd3db8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wl&^6b9fKkDV$Jh?a{`g@ht#qJresiEr^PWsP_R@KrLmR=Ln6eF=6f@+j=s z@D5ZF?@`XgZd9Ry(#EbM@{e>nt~8$U`6h`PyY~F}{*`aAO_r7OI{)=5)d^?p)4StT z*0LyBg`fWx2%_VZNivP1p9fW?m3(?i>;H-!%lw=2wX#7m$%CrW$|~kBDBIfzZ+H5a-`ZU{1-A@h=FKwvJ8d}pQSwpd(MwhlzMYv~9A1LZa|3f^{ zM)7boWD1QWvww@?TOL%ER#q|pTAu9*)iTN~E0%x# z1sjjQ@bN?$mznkT`{rUg6oNhgCTidhI`UmR*$Hjaiu~Br9joi=R^03Ay^d|`W}L)5 z!w3y8aoFacpEak?`D7+b`RL_Vs57dln|p5{tY%TgpPM_#&-n{u_<^jmM4MMqyc?qv{2? zkbl(6!qxefHs7k9Z)I(&`+0VD_L<`ErMg4I$Pj=41Rwwb2tWV=5P$##AOHaf6ePfz zHakC2r~ZUe?a6UIyH-_DV(10}5P$##AOHafKmY;|fB*y_0D-vxXI#jCy}n0L@z;Mk zlKEj_0|F3$00bZa0SG_<0uX=z1Rwx`0tGm033=<`LyGFZ|1WaKOo7RxD+oXU0uX=z z1Rwwb2tWV=5P-m%2+;L^RX%>`k<6DXm0p48=g$FJ6MLiy0SG_<0uX=z1Rwwb2tWV= z5V$D;y8mCuM=zgJ@QNSW&lP&Yta($JV;l%T00Izz00bZa0SG_<0uX?}`Uuea6Sdl{ z+Fe|FUxzu@gj~Z%o1JITIBj?3{U37aIaNOTvEmy*IA3VBopqQfKmY;|fB*y_ z009U<00IywQ~>MG7RtF~XDzYF%E~Qek)@DZIGeKMY+!c?KmY;|fB*y_009X6Zvwvo DY%VR- diff --git a/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db-wal b/canhazdata/f70ea4d0-67f5-4ebb-93c6-9fc1c04b48f7/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db b/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/system.nodes.db deleted file mode 100644 index d13b20598078d8d7152edd9ba55cb78af67112ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*yKm$~90zcZpKC8qiATW+E#h{C_LwmCj9(Q2As!a=l#E{@;*y+_h!YhjQBd(0 z97QOp_!mGFG)R=R5P>MDDUMf|Nj9;Bvd5-yc1gY?&CTq|`i*}dudO@pu7BTt^C|I+ zM~vfkGR|I}XShQQ%D%%HDe`nU!&|6!v{QZ}V(Wsd2O@AcQ-g3Uuft`&tzLp$Zx2;=y zJNwQHx3+io4106CZbr7fQJ3v#-LA`xdgLB$8FyR0yS;n%md??ZqT6yyZZ>Dew5@85 zA6zqSy~X|myC3ZCHJfW&YVlpeRBKxL{9m`#0eV>VpJu(!~l&k>Y!^_{1#w%>6%O6X)P{>-b!~o^X-YO%v0k zN=hnNBxuPKsa`f*)^WsTo*1^iM(q1Hw<~$`_;R5yFYD8L#O@-=Qj{zeEfsMTQ6cJ* z=3$-EGUH*zLMdfg&yDmuvARfQnnnq$IL-6ArXp=hnq_f9S(@b`lf11nbsai;pKh4M z>>`OMEh8xyO|wR-?8=PFrr|UTqb6@v-ZhhRBN0NnNUg|nt}>yFwFwnDt5sr6LSqrJ zBr7==Z9Xs3^iO}?@Vtk-$GvObv)b@ULrwjLtaQbWjGQ@_exq6eXle-JztJRLk2taiHCyK@N;>*RP6`*h}<&fJsP zxq|kv@!{deA0FPf^{^;HLI45~fB*y_009U<00Izz00ba#p#sEkZ2j@0uexO}_vSb` z`lRYY)5l^EfB*y_009U<00Izz00bZafh!?E3=-&X8x7Qd{r!RGs=EP8y9+>8aUO2tWV=5P$##AOHafKmY;|xJm-Va0C6*!zWcYiM|71IF|lB<`Nn?{(;OAR>qPL zfB*y_009U<00Izz00bZafy*tRKL5A%PIjCp!)K^|KB}F_Ht??D+oXU0uX=z1Rwwb2tWV=5P-mP z1XTTr;qZy!GsEYH>G0*@Tf?`9)o^RLoSng{N+1YM?}7wfVVz*m{jJwc-EQi1Q@fj5 z-PG)+>E~v00bZa0SG_<0uX=z1Rwwb2>hP~{MU@h=%qdUGR?4hpO(n*D7`1T{wJlAWT-EGtn~3Ht zYSpG`Ugd4u#$1jUx`#0KGR|3)*A1=0hEXA#oR)E%(n!X#Oj#+?BpJJ*j8vgu5z>}R zwPKT{G>f8))^!p!VH<`itH#bEm6FHyB2|#b)*=;-$L1o{i^pV<%EZAN|EfRzwN>1+ zi!bcrXQ#O96c_UjSj|;P&{cU}e9RUWo;=!*zVqeMa{iAO?DkjWN;G`n*ju~X1ADcfGiPHnSBs9* z&ojNa?&MiNUu=w~3y0o#x|^#nx7F60elOis`3stS=ghg>(Okjs;dm}*Rc~&dIiX|s zR^;%G<-AQd)WF?UJG(o~qIPYw|F1i=f^Ja!m_(WDt7hB(D1Y7jz z@Y68OVlNBgsBjj|b=K)T@07X4W7#tnXj?`0lr}H2CDQtDwQjfWx0YKo?j;sir2x05 z2f*ApdFD?4(ecLgy(;@?+CDx$eoyh|QgsK>J_H~D0SG_<0uX=z1Rwwb2tWV=7Z%{m zb099qmtwJ|`t*U!y7XlD~00bZa0SG_<0uX=z z1R!u_1)5JsU*}Q|00Izz00bZa0SL@O;5P)OMj!wH diff --git a/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db-wal b/canhazdata/f752672e-933b-4b7f-b499-42e77216a065/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db b/canhazdata/f7c8387f-0e9c-4164-b743-bd523ac5944d/system.nodes.db deleted file mode 100644 index 723fcda33e9464bf3a6edcd31b2c5b8c27b1858c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*!EO>k7{KxQ*agB?qec@C8ncJCF(e?!Qra8d3{N4j5Q(KUh1htq58{DG@#e*c zP~uB?!Wmc~X^=pg?QWL;BwuG~r!)KghEAK^?(WYY-z2LZt9e<}!OLB$8&T@>r|X`n zO-aowK5iCh`PV&V$kICMLFg*95=>8M{qNYZ$=@~am8_0&5V{Jj#4&$MXZujchahwn zT8UZyxp&HS8~IWGx8y_1d9OQ8_llL`$>h+sE=O16^qb4U)kxX>f!}d$yXUvMZr%1< zJ>SjDT2@yrKMscLTc&3%y;aMLX1}wxPupr2E0dQg+q4)z7=9U!I{o5>9(<@$dQ8jw z{MT(gL63C&2_nq-irM>rmcLp1pXm4=gsws>am+sxWP77)6JeH^<)5poMkCC8={p1g zk;!{&zNQ^^Ywgp@X{}o*b~zIi{Gt(ixs_gSWfogeD@>=; zuR8u;qTWHqM*sl?5I_I{1Q0*~0R#|00D(ITh)Ub$^kYtkm5TPLgv`!V-8m&XKmY** z5I_I{1Q0*~0R#|00D)TqqD24yzfwd{q8u@|Uj7w>^h8$oM~%VmunPzv zfB*srAbXi3-&DW<62Zq+fiFFV#P=-Sn(GO zi?U?JzW`#v28ktG7=c)@W-+|VxouiYXfh-txry5EN+;*0y8W)t@7h-4B>ukp_A};a zk7y_DG|!$clWsCi`{4Z>TPmxjpCmlqn?Tjv*wPd-i(+#YlzMBk<>^g-Nnut0SnVqg z#o;U{_14z0euJugkmB80Q0lF%S^dM8weh%^9!!5?)81;n)WX)*M!1pOzG@oR5B3hN z7q9Q`9cbqEZX?I0xz$wdc++gEt!8W=kBqyK@9pm2eWZ0fGU`U|l-u&Inx;{2gtxEg zrW$eh!2XB(2XcF3hbG_Gbehvp$N#2D3-mC>&$H-rz1D31KdxV$`yZwFY8I4wYwK9Q zJ*)O6Wfgt4HLHL4s#X-gvEp-9{Gb<~>P4Tm|F1T)Zogri9IIDF6=kW6a$ZRp@<`-4 z&+@$FK^tdf6iexcjb^HI#NqJTZe3nGIbEpJ%jWb?W_C(4OshPP0$$ZY!lR}Rc9ei+nw+*U!G2XmGFVXRYX^F~O&Y?T4OHH8NfO6kuhIo!$p%Wm|xWK>!3m00ck)1V8`; zKmY_l00cnbViI6<`$=`{U3SZ>snpc?7BwR z)w?b`>oU!AmGzvdZv8kkm_0CcYen`mj4kA)gS`X8wHu;)OZn4Sl`s90k@`XP6Sf4B@cAvvNSIW2)ZBA~!G9wS&GOBqQ zRb;8#Hd!NDzmziah9Q{_w`q`*zpnBTPLz+Zl!82Wvnp+5BJw)*27Vx9-jtGyrjL3pOZT=IS7-xaT~TN&E!|HXZwk$;(%mC zO7_K3oMoJzhrBIYGJB2Mp!93cTEr>YGZ%3|_KZawjy-)5_hN6Mt10fA|M8#x#whNX z#g}IBi&fmRiu+vB3-NEv?OdK0*+b{KJU_3qVW+gnUOZQcu|cP_$eun|Nn=i@w8+sg oPiguWvpc0lj+nVhNAMp%Z~yTNaiF3I5C8!X009sHfu#ui3plNJxBvhE diff --git a/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db-wal b/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db b/canhazdata/f9d1e0ad-7520-48f5-9f48-1167c3c6c047/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbw-!OtOg)y1m;Jj+f*+(l5W+X!bkv`^?x%{FvXj-+W3u z;}PSyocQ_2v$$KtFy4Rf=7#pVn8yx3?@geTH#ZE8%u%*JH|07j^XchK|BS*q{;^&w zp0fS9Dc4z9#rQ21?SsnRnVWK*l@*JB_>wUm7qh+Dk7U+a%$Hi&*;tF$(u1qEbz^U5 z-+AH2_RgMRZ*I$aY}*^MY{u)hEH~uXJ!+Y>E#KYVy?aaNs3mJ#Zi&tMu9~)0t;Gjd zOk20ue_;26-MxBqZA*2&YnZA}OCSI1wwj=amHjlgF6V2-*8frb`rQAhvM=YRTxVq! z<9FxL-cnv$mu1D`AHHG~#jm9Jj1=FS#V2ObW$gFWCeFd@*731=HBOT%O<6#BQZvdj z!Ko0Tq;bqd+Avm$C^Kw*j@Tbw->$^<Epq9QIU%A!b8&eKNK z>auEt2(nb2J?^gboI$KsDT>lGVpT*-9@XmmaYS=2V;YMr3FMkqGKtwL<*Z@q zTY`p+t1;DyinFdct+J?*GB2Y#l?#;!A+1s)(jaImNo6WC%BoO}E>R)IQ6|cer75qX zMM|^7;kw~@4|$J!SG;GvnHPH8d(nGU|1pHJ+5}ub41*wbhuS6XKs)Ao+QqJ`UF162 zg|4j~cP-_@z%})!+$Gv&YW{uyG5=}*n!noNVsvLBK&+GbB=%{|Ijy-TwKIu!(D?B1 z;|~w-Svu$xk{|#AAOHd&00JNY0w4eaAOHd&00QSqfEbRgZ$A!|S!TZ%$H~#1s&fq= zoq+%dfB*=900@8p2!H?xfB*=9z@;ES4C3pjjRxvp|KY%M)zyIBt^$x%c_`vi%shew z0T2KI5C8!X009sH0T2KI5V%YPh~fJB)x#&1nZ%l31L%hUIetN=pU%-M2!H?xfB*=9 z00@8p2!H?xfB*JgO#LcAZ-t!f1Jv6H&@l*r00@8p2!H?xfB*=9 z00@8p2wY48L~TE*w_g51S^v-fxBJLmOxlPF1V8`;KmY_l00ck)1V8`;KmY{#A)xY4 zj7Cq4o*6wq%0@4b-Wt6K z{OlCBo#K2}z-snF{5H$;GAndpmgm38uvJ=S6)#l!iws(&Wmft^r9X++DlKy~EL8e~ kxUJGMN6bQ{-;sa(yz`H*=8=a{fdB}A00@8p2y{u{AE#JxxBvhE diff --git a/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db-wal b/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db b/canhazdata/fa600fcd-d6d7-4c12-b52d-327ab14668c2/tests.db deleted file mode 100644 index ed986afe193b07b05219c282f202ad728d93a492..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 diff --git a/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db-wal b/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db b/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db deleted file mode 100644 index c21c343f01c86668cf81a154928865765f98942f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*-)hrP9Ki8&nzUmDaYIFhAVt?PFS4!8pEh@O*WxQ^(xgyyZgj)#&OL}1eU06D zA$a3EIEwEvf2aT0WJP@Ost<>ia z$8A%ak{eXK{$C(Yj@!zRJUp4@zhPoC{*w8uEJ<{SAysB&9>;IVXdg(t zABI$!l{p*#@@uuWw)^TN_@y^98}kAu&bPPRt)Tb9whoRuU2D6YD0^=|NlUifPU2Rn zVJC4rDHZzd{NB!>-RkzcPI~aM-HeXX`TjR-IY193eh(wd<27fW|Ni*RxqnsS+c2cctjy#13&YW# zN^K&`GH2so-c@J%Y|c8BrT^4&Yu!6l>bqshNvCVaQKw?gDBblWt$MDP)||TM*B!53 zNuAgYL#I|v+?rPj(n>Q_D}SHg&QGlFdc9h$gkBgqUNsFJX)8%uzVGY=VbrWQgCq>= zN}ARD*!L>F6NjGbc%ifn;~;QqQRw-6N#0@@m#)3rTb%9}s*P0@wX zdxQ1ayJXc#50)GGv4d1B% diff --git a/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db-wal b/canhazdata/fae22d7b-fa03-4e9a-a6e7-51835fcd16e4/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db deleted file mode 100644 index 57021692e469703c5d58bd730b445a8d560b7a6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%WvaE90zcZpNYd$;&EVwg4jeT%M`!HW1lDp@vz{|5sy6<5!-gvR;)O&5(iHF z1sK<)yKp$ z9x~3_`8a!cnc)^OjCbF;In|?X=GlOs_ZATK&8eZu9M!jHT@9VJ+3x8q{v`wJ{D=Bj z@l-#Wbv1O>)-iueWqZHsZ_TxL+AZJSJGlFn&gqs(yX9`VBkvm1wyLf8 z_=;)kEspLxc<Su~#B3uq zqDd0Y7>#%y(?sMs&GVAevTD+taZ!u1nH$LYqGnU{4P(=d@-Imv_yk)$+^;<~A- zFpzA1c7OJ_4bOYPd(^w)J?%}r(968%y_fYLLul(Q;QC=01c}?%L+tkS5V@WnLf2J8 z7`Tpp#9Uhs+_m(OyQUs8m*^o?```B;@t^dc@z*}Q|00Izz00bZa0SG_<0-Gd24A<9RJ$zhs$0U|v>#G2(5g=#Znpw@_SQP>gfB*y_ z009U<00Izz00bcLKNe8$|J(ZZLr>@&iK)K|u(C#0blqWP31eXhKmY;|fB*y_009U< z00Izzz>)-ry8WcS_40SBum1D@?R{jIls=Y$00bZa0SG_<0uX=z1Rwwb2yBFasy{Ip zJT`c0@a%vOUL3qJcymwP+bOx2 z5@Y1+(sQ=D{{wN%zGWM(*ISJYF&C=JvzjM|RUrTY2tWV=5P$##AOHafKmY>&VS)ZD z#(4btcz^s88Gk{>x5@YybNr1t{?r_QV2+oQ*vPNSTxKy3Xeeq`Ay`D5=CvyG+cYv$ z^@3$qr`f0VFsCI` z^>~9Q<*KN!h*?mLyqKvX#$}LD9tDkxRc18jLdD{uij#n`hy^3JDMgybWkRdER`rIH zs-{^fQ!1Mvk18Ij-!vmu~na)i#S7d`o%^xH^_9K~}Z{YH9!i?qOzJ~z^@#A_ohayHD3 mbceWYq(#n{d6BM}s6W2!`s3?)=HXdE00Izz00bb=rNCc|D|E~N diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db-wal b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db deleted file mode 100644 index 1bf94acffbc11497e113e7db0497a632e4a4781b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*OK#IZ7zgkfKT;(EQ3ME8NT`A)DvN0y+hb>T<*`Iu0sNFAD6P_pc1Q04i(I2S zkdWAL2dW5(18{)yO&(oT1-WWmyYL_B>!hhYGvCj4s>HG9+t-hLfi1F0nbp%@&r=<6 z#@@Z&>+4z1uZjK z^G0_J>ut1|4ei}*XLpAg)UTa&<%2MudaWruCu{d1GLs#~kq$|2%B!w>{ zPbfF{MbwMZJa;{rWDZ+A{mO8(Zw^irS5mJWw)>Q)-fN zeku!Zl7*ASo*UEH!)_7_Ur|1>=XHhjmC6z&Ri@I5Wsyg55O|R0nTho zpMGpon8xLO27T7R`S@JbS%1NE5P$##AOHafKmY;|fB*y_009VGM1V7H=&xSiqNw)W zKlNXiFGXAg6zf6&0uX=z1Rwwb2tWV=5P$##YAC>2+t8OD-leGi{eO|`YHEmxAwd8F z5P$##AOHafKmY;|fB*z)E>Hq)$ diff --git a/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db-wal b/canhazdata/fbf44755-2793-4b99-99a7-acf6957bdbaf/tests.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db b/canhazdata/fd7e05c9-85cb-45db-8fc6-b350eaf5298c/system.nodes.db deleted file mode 100644 index 9c96ad5155104a0d8123b6b721ef3940ecd7282d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI*%Wl&^6b9fKd+aC)S8-cVp&*(FRZMYwO?CmXKoJi?#`cJa-qco9tmq5y1}w^( zz={ofwooCl;0?HynIw%jZAqnA4(UJA$xJ2d*ynTNRF3WW_~8vLkxOLQ4*Sucr|EVn zAupcq^mVVBG3@YqvVcf-`b3jiDmtT3U2bi(dveQv%EY?%d76spUu%~<{A2c%Z(E^RM;p-Z{de5Mmy{bg@C++Sqo#`fl(b$?@hbDOZ$^(3t^ z)=z}2byy<$NzEQC8DvX7Ti-f*No%mApDnr8TTPG5$;^1!+g~u4USjXu*2}H!bai=6 zt$d3ZYMrM3{CAkzK^Ikg9Yvn|YsTLHgZlNc|FVjAqflLLZ5HddN7e4CUPqp7#_BIW zBHiwH+I>sApN#Hnqnl^#|IAIT{m16;v%1)pv2cR8$-}tiaK9})E`$iUD;&S)xh+@9 zCSm#*u~%MMk9#Y_!-YP)be4WmmSvJjl&VZ^-U?#D{U8y%CF76_FL2VH4BU1rJ~q=I zYG#>2Ux>CZW8U+Ul>132c+ZI?4(aZ zP`ac41wxx60o!Ue9mlts?n2wtU0@r!^K7a+SMC2w%qanD;3AL;x-Lyh5!U0009U<00Izz00bZa0SG`~N&=KvO#l2?R$&^& zo*buxU#g~57}7uh0uX=z1Rwwb2tWV=5P$##ATSo7gj)K#qbn*{!6yLdtXvc^*1-S* z5P$##AOHafKmY;|fB*y_FdqVx*p|Na@P-Q0V1-@)K!^9q%m*y0fB*y_009U<00Izz z00bZa0SL^HfcpJ^@O*-sdYh=BZv`l<(ZlBe6}AOfF$5q00SG_<0uX=z1Rwwb2tZ&y z1t_Ul`q9guRTO{yfA$>N`P4>L5P$##AOHafKmY;|fB*y_0D)oz)ch0G>hb+`I zEoKw2)@cY-tntZ{3d@FOHZ-y!9S`ty`1Klw6o0=YoO?XaKxc#>|9 z67u}nZddlQDdP^W#|s3}ZkI?hO+5^OiW_)B$riKk`e@$U>iQ$?4i~b3pM|H?;Fn>AX@pS=Ro~+*I3tq>ewUx0BdOyeRN_*bF^x$8Nyajlke7!;HPij+#*r z5+;uk!{SCS^f$(b3wd~H*MCx$X7c=&;tX_&t6nlrcQd$COlg>!`~ zg|)&h`7aRK3JK_%X&Q#DGugFtRd$Z9$j;KK?3!Z#mr9pQH%fO(D^xg2p{o3&E*oXj zkv1LahokW_`Mn+-9J~}UyXCiOSTh75009U<00Izz00bZa0SG_<0t*tLL}T*n$D#;T z$@k03}qD*BxCF!E!zUK$qpBh^Y<+ z5P$##AOHafKmY;|fB*y_0D;vIphVZ?t%uh{C@RbK0suO`L1r~zQ3V7b009U<00Izz z00bZa0SG`~i3G&=|D)#;Kc|$gZX~s)7InAOHafKmY;|fB*y_009W(BOvCVD3`C6ZRe|ns%)NFkgMuEGaOfyV2;^~ et8}iJi5G)_ED(SI1Rwwb2tWV=5P-mcAn*sbp+GtS diff --git a/canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db-wal b/canhazdata/fe6f8dba-c2c8-4e7b-90b0-501e8d4d2dbc/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db b/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db deleted file mode 100644 index 856a212086ffa1b4c52c2e961ba14f7ffd285ab3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45056 zcmeI5UC13r8OP6@kKOm2eZRlI@)EJTl+=kkGy5@fWfYOJwpS`BMQ~?#7K3e5nqcXT zR=wzj6!D@UR58-4UQ{V4MT$^Aij)df3Kj)F8VtQ?MWKk)BJr8zO(v0UvuX1tZx16eHB-0deaG&9`!z>r*G$}+_m=mVx78dDs>9;cc7JHsI5~a%!Q&^)J%{gw zjUVszVVeVc{vR2_4w{4Vx81Ur`)i*a|7Y88`~C$e&+Zm5d$#Py_ItaneF&^Ad%5hh z_K!c_D~i`h@dHx4+%F#K7kkbYnqg0LleO{RZXra7gZA* zEkztBy`k+*PLA(BR+V?3>sV~3apbmjGIUC*V0kPvNmZPHT+>ukr4^%@5sj%Do*E@u zl~&2XDRE|`l4(s-ttwEeYg%SGr%bT4HnCQkH?2x*r0UFNrKZP_#+8kB*Cvp@KX}}kOYsD;5#IEgaltF!N2>#>;2%B ze(?K#@IpU$wjcbYA6#}PUxgJWI~Vr&4UUtucdFiHL-1or00|%gB!C2v01`j~ zNB{{S0VIF~kU%Q|(jzN7MB!C2v01`j~NB{{S0VIF~kN^^Re-a?Q$&UT%;Tn|dKmWh*wV3xOOsq8$ zKmter2_OL^fCP{L55`QHJ$ZZ*ISBLO6U z1dsp{Kmter2_OL^fCP{L61Xu5ke;_=f8+13P|iN;4#z9R{s;X-KJ%sj5&skZ zo&Kl&yL{~*_3!f^@W0~!hxl(0|8?S@CjOs^|1$A^OZ?}F{|n+jL;N2T|4GOqc;heL z4n!z;?j5iu^R}%?y)A1JZ_^s#ZCJy-b!(WnW=-s^f?>*Au||5!*5uxjHJP_)P3kRx ziIq2RUnSn0HNu;p*68L zu!ebkFkE`X8bx~Hj!ivxEByY$(Ay-_3zMn!rQYgzw0&S}aej7YZEmo<(%%TK!R{ra zPC18e{KE`ehy;)T5o`L z92P$s7NWJvWTLKaAcSMK6t_Cr8o4qv#bcdd7<$^`d|H zorj5V9R>rf8=g@vg@p9$NlCSqB^5Gbs*$D6Ga0U_8WOr2rYIEX>rDxrE-N7geQ6R_ z)maVQcepB8T^o^dJ0d6;T_6>_t~8@k@T7*wcUsFTToI*UB9)5fH4Fxje_p~0s-#>? z7Rx*_v0>qInM1u~3h${L){2dU(FKN)Qq*Y%`ReP+RN;~oqHa>2fIUrmLm(4|!&(c_P*$o0QpIy+M?D6ki|zJm zo~J42EQim9^J!i+c?{bTWdb9p;VIS34qWglX+)BzbsEm)Tvn`vjirsspwH9|RWS^Z zDU61OrJ84^3}-Vt{56@OBF$k$jB8u3RMCtXUK`d_CRO1~-Q+Si36RJIr-@<-g&h-9 zQ!^DyRX3uH!|5))G>-qV(Ne^5vR}vl;B#HZ|DXBA8&ky-Q^jA##iQfmg-P+XN%3@0 z{C&E3e7g9 zxG_gIoRTg9H%|=(J?LL#R#Dlcg0du4Ml^8)XMC&DELnF-U3#ikr5Up3l)Ch0txD5m z)hTu9@miGvvT~79hhDK&X+oBrQkR~yRcTC?oKlzGwN+_~EIOqwJ#ed%PZpd~mtMM6 ziI91x)TJkHRr1K3Q|i*&wO3QOPXQ+UFcP?72!uNjg5*t;Ce#Rf6$=%*oP8k2cD0-C=(1GSBbUKylLgMFXR6=?L`_k90?$S G-v0nOpJPz~ diff --git a/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db-wal b/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db b/canhazdata/ff464e8d-4aaf-4322-9f79-23cf0eb83004/tests.db deleted file mode 100644 index 23a30492be74dafb77f69013dce61b90b39854c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 zcmeIwF$#bn6vpw-AX+;@XNwkT&#?~DeOkIx`LI?YXb}0o!4J{ly`P@P?mG2K_2#qv z5}T8jIe1H}CIxF=V4Q-Nk+u1IwVvAi1AnE~=VdMg5I_I{1Q0*~0R#{zNMMbhNE#%NX1g2sPV(z4?Q~{;pP|!cx4ZlE$2ZBS$7)vQb@+0d>PD2h`h49p zwJE7t#mDsmt>C(+44I>&5r(cJE8+A+*8i3roBTcVUdiYfg`um+N)q$8bhZz5d<;WZ zk(GqypM9@9ubCU>eoHR0ocFq8r&lN!YU4xOx)@%LoHrN!%b~K*`a#FD?OxF8dJQ{h z^#U(FZCPEm{L~+;Zs|;0R+cT#{j<)>K5eUAD34#JY|~=&VDM!y?3@+O_22`Q(qmfY z=f7d=33{aCPZ&|oSHj-^)BMfa|3t_4Fmx4JNn-x#Fxwkln~1U`EdOjnHJef9OWzR) zh>Sm2vo-Co+wE3s)srA!4{F7HrCP7&>+QGYe7o$w^E7C{)Py#Jz)zj{pJ)Ab4_}wkD7qpVHXfU z009ILKmY**5I_I{1Q6I60sZ`mgM*#PhD0_JaF+*KL>-BF^xWbh6&rOBO(T(wo~0Ab z;Pi?B0tg_000IagfB*srAb`LQ3+UrN$HzOI-~Og{#L<-foqRG!009ILKmY**5I|t1 Fz&{J6p!om* diff --git a/canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db-wal b/canhazdata/fff5657d-9d60-4599-9c23-c3a8ae6da74a/system.nodes.db-wal deleted file mode 100644 index e69de29..0000000 diff --git a/canhazdata/two/system.nodes.db b/canhazdata/two/system.nodes.db deleted file mode 100644 index 38d811e22c7429c92f40529ef25ea5e318846088..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeI*!A=uF7y#g%c3aY-QKN|mjOoEd;ZQXwUhCDT5Gck*padF;CwU2P9{MQWy!a4G zd=H#y3%#Jy#7$TDCiy$tWSE)%n`KFM+1+nnKZk|vW;QOT_2la;)ltZ@_wNpSsZOOb zu6+JkV5583%Mw{FMrRVSDy&SFr?CEK>^SA$O8d$}jNv3=Rahxw{?(Z6^%$=w5v#&V z$?|W!%v!BiD}$9EVWqH~uXM+?UVF8@cKjf(?hW>bwa0t?{Xv%R^t)TFJnwZk-n2S- zcca&B)kiI#Pg}n2ADrK^Hfs57+H!Y&XY1TP^Xg`M_4r;TPc4Sm4n7l8(nlI7p%WXsD% z=Bw{{2!wF_usS~IRR@RtEKkSMVPm_$xxPIP=$;1PBly zK!5-N0t5&UAV8pu0wJsA>GESEMzu2Evl3x+rK*fd=0t!10RjXF5FkK+009C7{%?Vh zh4}yfS$4YwX@vQnekg%}DG(q)fB*pk1PBlyK!5;&Vg%y#|B!Ayyjx87GxZuqcf`!} zBN`JRK!5-N0t5&UAV7cs0Rk5gh}Zw~^!TBr)HYPotpIZ?!GlodW^Z5u1PBlyK!5-N z0t5&UxZDCEYligbXvzJs{sDok}g^*sAqYxlKfB*pk1PBlyK!5-N0{>bdp8u((`#+Q` zCy+bca^==s!UPBqAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ vfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pke-Zcvuv3N# diff --git a/canhazdata/two/system.nodes.db-wal b/canhazdata/two/system.nodes.db-wal deleted file mode 100644 index 3dcfe72239f49030c0bf90de44a98d7e57ffe6a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24 Ycmb Date: Sun, 13 Jun 2021 20:44:16 +1000 Subject: [PATCH 03/73] Fix tests --- .../tmp/coverage-267186-1623581051457-0.json | 1 + package-lock.json | 623 ++++++++++++++++++ package.json | 3 +- 3 files changed, 626 insertions(+), 1 deletion(-) create mode 100644 coverage/tmp/coverage-267186-1623581051457-0.json diff --git a/coverage/tmp/coverage-267186-1623581051457-0.json b/coverage/tmp/coverage-267186-1623581051457-0.json new file mode 100644 index 0000000..be4435e --- /dev/null +++ b/coverage/tmp/coverage-267186-1623581051457-0.json @@ -0,0 +1 @@ +{"result":[{"scriptId":"6","url":"internal/per_context/primordials.js","functions":[{"functionName":"uncurryThis","ranges":[{"startOffset":1000,"endOffset":1096,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1038,"endOffset":1093,"count":6990}],"isBlockCoverage":true}]},{"scriptId":"9","url":"internal/bootstrap/loaders.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10311,"count":1}],"isBlockCoverage":true},{"functionName":"binding","ranges":[{"startOffset":3652,"endOffset":4049,"count":0}],"isBlockCoverage":false},{"functionName":"_linkedBinding","ranges":[{"startOffset":4079,"endOffset":4287,"count":0}],"isBlockCoverage":false},{"functionName":"internalBinding","ranges":[{"startOffset":4467,"endOffset":4729,"count":288},{"startOffset":4569,"endOffset":4709,"count":40}],"isBlockCoverage":true},{"functionName":"getOwn","ranges":[{"startOffset":4874,"endOffset":5028,"count":1584},{"startOffset":5010,"endOffset":5025,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5395,"endOffset":5493,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5454,"endOffset":5488,"count":232}],"isBlockCoverage":true},{"functionName":"NativeModule","ranges":[{"startOffset":5498,"endOffset":6250,"count":232}],"isBlockCoverage":true},{"functionName":"exposeInternals","ranges":[{"startOffset":6400,"endOffset":6626,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6637,"endOffset":6690,"count":0}],"isBlockCoverage":false},{"functionName":"canBeRequiredByUsers","ranges":[{"startOffset":6701,"endOffset":6817,"count":440},{"startOffset":6785,"endOffset":6812,"count":57}],"isBlockCoverage":true},{"functionName":"compileForPublicLoader","ranges":[{"startOffset":6889,"endOffset":7583,"count":55},{"startOffset":6952,"endOffset":7144,"count":0},{"startOffset":7208,"endOffset":7505,"count":12},{"startOffset":7467,"endOffset":7471,"count":0}],"isBlockCoverage":true},{"functionName":"getESMFacade","ranges":[{"startOffset":7587,"endOffset":8138,"count":61},{"startOffset":7625,"endOffset":7644,"count":49},{"startOffset":7644,"endOffset":8137,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7865,"endOffset":7978,"count":12}],"isBlockCoverage":true},{"functionName":"syncExports","ranges":[{"startOffset":8434,"endOffset":8778,"count":67},{"startOffset":8553,"endOffset":8768,"count":1584},{"startOffset":8630,"endOffset":8639,"count":0}],"isBlockCoverage":true},{"functionName":"compileForInternalLoader","ranges":[{"startOffset":8782,"endOffset":9367,"count":648},{"startOffset":8831,"endOffset":8846,"count":125},{"startOffset":8848,"endOffset":8882,"count":529},{"startOffset":8882,"endOffset":9021,"count":119},{"startOffset":9021,"endOffset":9056,"count":1},{"startOffset":9057,"endOffset":9078,"count":118},{"startOffset":9232,"endOffset":9366,"count":119}],"isBlockCoverage":true},{"functionName":"nativeModuleRequire","ranges":[{"startOffset":9565,"endOffset":9936,"count":599},{"startOffset":9623,"endOffset":9654,"count":6},{"startOffset":9654,"endOffset":9838,"count":593},{"startOffset":9838,"endOffset":9893,"count":0},{"startOffset":9893,"endOffset":9935,"count":593}],"isBlockCoverage":true},{"functionName":"requireWithFallbackInDeps","ranges":[{"startOffset":10052,"endOffset":10224,"count":0}],"isBlockCoverage":false}]},{"scriptId":"10","url":"internal/bootstrap/node.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12616,"count":1}],"isBlockCoverage":true},{"functionName":"process.openStdin","ranges":[{"startOffset":3399,"endOffset":3469,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6160,"endOffset":6322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6424,"endOffset":6596,"count":0}],"isBlockCoverage":false},{"functionName":"setupPrepareStackTrace","ranges":[{"startOffset":9383,"endOffset":9969,"count":1}],"isBlockCoverage":true},{"functionName":"setupProcessObject","ranges":[{"startOffset":9971,"endOffset":10576,"count":1}],"isBlockCoverage":true},{"functionName":"setupGlobalProxy","ranges":[{"startOffset":10578,"endOffset":10755,"count":1}],"isBlockCoverage":true},{"functionName":"setupBuffer","ranges":[{"startOffset":10757,"endOffset":11193,"count":1}],"isBlockCoverage":true},{"functionName":"createGlobalConsole","ranges":[{"startOffset":11195,"endOffset":11876,"count":1}],"isBlockCoverage":true},{"functionName":"exposeNamespace","ranges":[{"startOffset":11928,"endOffset":12126,"count":1}],"isBlockCoverage":true},{"functionName":"exposeInterface","ranges":[{"startOffset":12178,"endOffset":12376,"count":4}],"isBlockCoverage":true},{"functionName":"defineOperation","ranges":[{"startOffset":12436,"endOffset":12615,"count":7}],"isBlockCoverage":true}]},{"scriptId":"11","url":"internal/errors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":53549,"count":1}],"isBlockCoverage":false},{"functionName":"prepareStackTrace","ranges":[{"startOffset":1404,"endOffset":2120,"count":93},{"startOffset":1581,"endOffset":1697,"count":0},{"startOffset":1824,"endOffset":1846,"count":0},{"startOffset":2027,"endOffset":2056,"count":0}],"isBlockCoverage":true},{"functionName":"maybeOverridePrepareStackTrace","ranges":[{"startOffset":2162,"endOffset":2869,"count":93},{"startOffset":2431,"endOffset":2497,"count":0},{"startOffset":2778,"endOffset":2844,"count":0}],"isBlockCoverage":true},{"functionName":"lazyInternalUtil","ranges":[{"startOffset":2959,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"lazyInternalUtilInspect","ranges":[{"startOffset":3119,"endOffset":3281,"count":0}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":3295,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"SystemError","ranges":[{"startOffset":3906,"endOffset":6444,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":6448,"endOffset":6523,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6527,"endOffset":6716,"count":0}],"isBlockCoverage":false},{"functionName":"makeSystemErrorWithCode","ranges":[{"startOffset":6720,"endOffset":6865,"count":4}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6811,"endOffset":6858,"count":0}],"isBlockCoverage":false},{"functionName":"makeNodeErrorWithCode","ranges":[{"startOffset":6867,"endOffset":7622,"count":233}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6955,"endOffset":7536,"count":93},{"startOffset":7045,"endOffset":7254,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":7542,"endOffset":7615,"count":0}],"isBlockCoverage":false},{"functionName":"hideStackFrames","ranges":[{"startOffset":7694,"endOffset":8105,"count":31}],"isBlockCoverage":true},{"functionName":"hidden","ranges":[{"startOffset":7734,"endOffset":8102,"count":2743},{"startOffset":7898,"endOffset":7962,"count":2084},{"startOffset":8046,"endOffset":8092,"count":2084}],"isBlockCoverage":true},{"functionName":"addCodeToName","ranges":[{"startOffset":8107,"endOffset":8723,"count":93},{"startOffset":8205,"endOffset":8260,"count":0},{"startOffset":8545,"endOffset":8689,"count":0}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":8835,"endOffset":9343,"count":234},{"startOffset":9077,"endOffset":9122,"count":4},{"startOffset":9122,"endOffset":9176,"count":230},{"startOffset":9211,"endOffset":9321,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9238,"endOffset":9315,"count":3}],"isBlockCoverage":true},{"functionName":"getMessage","ranges":[{"startOffset":9345,"endOffset":10149,"count":93},{"startOffset":9446,"endOffset":9482,"count":1},{"startOffset":9773,"endOffset":9831,"count":0},{"startOffset":10053,"endOffset":10148,"count":0}],"isBlockCoverage":true},{"functionName":"lazyUv","ranges":[{"startOffset":10167,"endOffset":10271,"count":20},{"startOffset":10205,"endOffset":10249,"count":1}],"isBlockCoverage":true},{"functionName":"uvErrmapGet","ranges":[{"startOffset":10328,"endOffset":10498,"count":20},{"startOffset":10406,"endOffset":10459,"count":1}],"isBlockCoverage":true},{"functionName":"uvException","ranges":[{"startOffset":10791,"endOffset":11987,"count":20},{"startOffset":10868,"endOffset":10886,"count":0},{"startOffset":11080,"endOffset":11149,"count":0},{"startOffset":11688,"endOffset":11810,"count":60},{"startOffset":11736,"endOffset":11754,"count":40},{"startOffset":11756,"endOffset":11779,"count":20},{"startOffset":11779,"endOffset":11810,"count":40},{"startOffset":11882,"endOffset":11908,"count":0}],"isBlockCoverage":true},{"functionName":"uvExceptionWithHostPort","ranges":[{"startOffset":12300,"endOffset":13205,"count":0}],"isBlockCoverage":false},{"functionName":"errnoException","ranges":[{"startOffset":13384,"endOffset":14090,"count":0}],"isBlockCoverage":false},{"functionName":"exceptionWithHostPort","ranges":[{"startOffset":14443,"endOffset":15659,"count":0}],"isBlockCoverage":false},{"functionName":"dnsException","ranges":[{"startOffset":15823,"endOffset":17338,"count":0}],"isBlockCoverage":false},{"functionName":"connResetException","ranges":[{"startOffset":17340,"endOffset":17495,"count":0}],"isBlockCoverage":false},{"functionName":"isStackOverflowError","ranges":[{"startOffset":17785,"endOffset":18163,"count":0}],"isBlockCoverage":false},{"functionName":"addNumericalSeparator","ranges":[{"startOffset":18244,"endOffset":18480,"count":0}],"isBlockCoverage":false},{"functionName":"beforeInspector","ranges":[{"startOffset":18759,"endOffset":19150,"count":0}],"isBlockCoverage":false},{"functionName":"afterInspector","ranges":[{"startOffset":19154,"endOffset":20492,"count":0}],"isBlockCoverage":false},{"functionName":"AbortError","ranges":[{"startOffset":20728,"endOffset":20846,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22625,"endOffset":22789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25628,"endOffset":25743,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26032,"endOffset":26126,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":28407,"endOffset":28635,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":30368,"endOffset":30586,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32336,"endOffset":32636,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32678,"endOffset":32822,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32865,"endOffset":36070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36111,"endOffset":36367,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36759,"endOffset":36922,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37584,"endOffset":37719,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37760,"endOffset":38084,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38243,"endOffset":38391,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38435,"endOffset":39209,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39587,"endOffset":39751,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39804,"endOffset":40135,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40179,"endOffset":40486,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40856,"endOffset":40931,"count":93}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":40975,"endOffset":41263,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":41591,"endOffset":42022,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42698,"endOffset":43221,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43315,"endOffset":43416,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44176,"endOffset":44874,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44925,"endOffset":45117,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45166,"endOffset":45482,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45515,"endOffset":46392,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":46844,"endOffset":47103,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":48453,"endOffset":48622,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":50520,"endOffset":50651,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":51244,"endOffset":51527,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52507,"endOffset":52605,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52799,"endOffset":53154,"count":0}],"isBlockCoverage":false}]},{"scriptId":"12","url":"internal/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12498,"count":1}],"isBlockCoverage":false},{"functionName":"lazyUv","ranges":[{"startOffset":991,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"removeColors","ranges":[{"startOffset":1084,"endOffset":1153,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":1155,"endOffset":1405,"count":0}],"isBlockCoverage":false},{"functionName":"deprecate","ranges":[{"startOffset":1690,"endOffset":2787,"count":45},{"startOffset":1764,"endOffset":1784,"count":0},{"startOffset":1844,"endOffset":1899,"count":0},{"startOffset":2541,"endOffset":2763,"count":30}],"isBlockCoverage":true},{"functionName":"deprecated","ranges":[{"startOffset":1925,"endOffset":2399,"count":0}],"isBlockCoverage":false},{"functionName":"decorateErrorStack","ranges":[{"startOffset":2789,"endOffset":3128,"count":0}],"isBlockCoverage":false},{"functionName":"assertCrypto","ranges":[{"startOffset":3130,"endOffset":3204,"count":3},{"startOffset":3176,"endOffset":3202,"count":0}],"isBlockCoverage":true},{"functionName":"normalizeEncoding","ranges":[{"startOffset":3383,"endOffset":3514,"count":92},{"startOffset":3453,"endOffset":3471,"count":7},{"startOffset":3473,"endOffset":3487,"count":85},{"startOffset":3487,"endOffset":3513,"count":7}],"isBlockCoverage":true},{"functionName":"slowCases","ranges":[{"startOffset":3516,"endOffset":5096,"count":7},{"startOffset":3570,"endOffset":3814,"count":0},{"startOffset":3819,"endOffset":3939,"count":0},{"startOffset":3944,"endOffset":4348,"count":0},{"startOffset":4389,"endOffset":4405,"count":0},{"startOffset":4454,"endOffset":4470,"count":0},{"startOffset":4499,"endOffset":4515,"count":0},{"startOffset":4564,"endOffset":4580,"count":0},{"startOffset":4645,"endOffset":4661,"count":0},{"startOffset":4710,"endOffset":4726,"count":0},{"startOffset":4744,"endOffset":4888,"count":0},{"startOffset":4893,"endOffset":5040,"count":0},{"startOffset":5045,"endOffset":5090,"count":0}],"isBlockCoverage":true},{"functionName":"emitExperimentalWarning","ranges":[{"startOffset":5098,"endOffset":5386,"count":0}],"isBlockCoverage":false},{"functionName":"filterDuplicateStrings","ranges":[{"startOffset":5388,"endOffset":5696,"count":0}],"isBlockCoverage":false},{"functionName":"cachedResult","ranges":[{"startOffset":5698,"endOffset":5841,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5749,"endOffset":5838,"count":0}],"isBlockCoverage":false},{"functionName":"createClassWrapper","ranges":[{"startOffset":6106,"endOffset":6471,"count":0}],"isBlockCoverage":false},{"functionName":"getSignalsToNamesMapping","ranges":[{"startOffset":6500,"endOffset":6778,"count":0}],"isBlockCoverage":false},{"functionName":"convertToValidSignal","ranges":[{"startOffset":6780,"endOffset":7087,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorOf","ranges":[{"startOffset":7089,"endOffset":7435,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7437,"endOffset":7566,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorMap","ranges":[{"startOffset":7568,"endOffset":7633,"count":0}],"isBlockCoverage":false},{"functionName":"promisify","ranges":[{"startOffset":7778,"endOffset":9249,"count":5},{"startOffset":7851,"endOffset":7916,"count":0},{"startOffset":7960,"endOffset":8281,"count":0}],"isBlockCoverage":true},{"functionName":"fn","ranges":[{"startOffset":8481,"endOffset":8962,"count":916}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8527,"endOffset":8956,"count":916}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8585,"endOffset":8948,"count":37},{"startOffset":8624,"endOffset":8665,"count":0},{"startOffset":8706,"endOffset":8726,"count":0},{"startOffset":8728,"endOffset":8893,"count":0}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":9344,"endOffset":9666,"count":0}],"isBlockCoverage":false},{"functionName":"spliceOne","ranges":[{"startOffset":9807,"endOffset":9934,"count":90},{"startOffset":9888,"endOffset":9918,"count":0}],"isBlockCoverage":true},{"functionName":"isInsideNodeModules","ranges":[{"startOffset":10016,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":11190,"endOffset":11348,"count":0}],"isBlockCoverage":false},{"functionName":"sleep","ranges":[{"startOffset":11371,"endOffset":11586,"count":0}],"isBlockCoverage":false}]},{"scriptId":"13","url":"events.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":26873,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2207,"endOffset":2367,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter","ranges":[{"startOffset":2372,"endOffset":2441,"count":319}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2805,"endOffset":2861,"count":3}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":2865,"endOffset":3099,"count":0}],"isBlockCoverage":false},{"functionName":"checkListener","ranges":[{"startOffset":3671,"endOffset":3821,"count":2353},{"startOffset":3744,"endOffset":3819,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3910,"endOffset":3958,"count":214}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3967,"endOffset":4242,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.setMaxListeners","ranges":[{"startOffset":4618,"endOffset":5532,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.init","ranges":[{"startOffset":5555,"endOffset":6285,"count":319},{"startOffset":5606,"endOffset":5666,"count":152},{"startOffset":5668,"endOffset":5739,"count":167},{"startOffset":5810,"endOffset":5835,"count":219},{"startOffset":5837,"endOffset":6096,"count":0}],"isBlockCoverage":true},{"functionName":"addCatch","ranges":[{"startOffset":6288,"endOffset":6847,"count":33},{"startOffset":6375,"endOffset":6794,"count":0},{"startOffset":6799,"endOffset":6845,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6576,"endOffset":6786,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionOrErr","ranges":[{"startOffset":6849,"endOffset":7507,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxListeners","ranges":[{"startOffset":7678,"endOffset":7877,"count":30},{"startOffset":7764,"endOffset":7834,"count":0}],"isBlockCoverage":true},{"functionName":"_getMaxListeners","ranges":[{"startOffset":7880,"endOffset":8029,"count":331},{"startOffset":7958,"endOffset":7998,"count":211},{"startOffset":7998,"endOffset":8028,"count":120}],"isBlockCoverage":true},{"functionName":"getMaxListeners","ranges":[{"startOffset":8072,"endOffset":8135,"count":0}],"isBlockCoverage":false},{"functionName":"identicalSequenceRange","ranges":[{"startOffset":8263,"endOffset":8839,"count":0}],"isBlockCoverage":false},{"functionName":"enhanceStackTrace","ranges":[{"startOffset":8841,"endOffset":9447,"count":0}],"isBlockCoverage":false},{"functionName":"emit","ranges":[{"startOffset":9479,"endOffset":11762,"count":1970},{"startOffset":9624,"endOffset":9662,"count":0},{"startOffset":9670,"endOffset":9704,"count":0},{"startOffset":9728,"endOffset":9757,"count":0},{"startOffset":9763,"endOffset":9800,"count":0},{"startOffset":9872,"endOffset":10804,"count":0},{"startOffset":10872,"endOffset":10885,"count":784},{"startOffset":10885,"endOffset":10924,"count":1186},{"startOffset":10924,"endOffset":11213,"count":706},{"startOffset":11140,"endOffset":11158,"count":3},{"startOffset":11160,"endOffset":11209,"count":3},{"startOffset":11213,"endOffset":11744,"count":480},{"startOffset":11330,"endOffset":11740,"count":1020},{"startOffset":11661,"endOffset":11679,"count":30},{"startOffset":11681,"endOffset":11734,"count":30},{"startOffset":11744,"endOffset":11761,"count":1186}],"isBlockCoverage":true},{"functionName":"_addListener","ranges":[{"startOffset":11765,"endOffset":13820,"count":1563},{"startOffset":11945,"endOffset":12029,"count":60},{"startOffset":12029,"endOffset":12527,"count":1503},{"startOffset":12214,"endOffset":12494,"count":575},{"startOffset":12291,"endOffset":12310,"count":240},{"startOffset":12311,"endOffset":12321,"count":335},{"startOffset":12559,"endOffset":12697,"count":1232},{"startOffset":12697,"endOffset":13800,"count":331},{"startOffset":12745,"endOffset":12961,"count":241},{"startOffset":12856,"endOffset":12878,"count":60},{"startOffset":12879,"endOffset":12901,"count":181},{"startOffset":12961,"endOffset":13065,"count":90},{"startOffset":12980,"endOffset":13021,"count":0},{"startOffset":13169,"endOffset":13188,"count":0},{"startOffset":13190,"endOffset":13796,"count":0}],"isBlockCoverage":true},{"functionName":"addListener","ranges":[{"startOffset":13859,"endOffset":13951,"count":1473}],"isBlockCoverage":true},{"functionName":"prependListener","ranges":[{"startOffset":14064,"endOffset":14167,"count":90}],"isBlockCoverage":true},{"functionName":"onceWrapper","ranges":[{"startOffset":14170,"endOffset":14434,"count":180},{"startOffset":14333,"endOffset":14372,"count":120},{"startOffset":14372,"endOffset":14432,"count":60}],"isBlockCoverage":true},{"functionName":"_onceWrap","ranges":[{"startOffset":14436,"endOffset":14677,"count":455}],"isBlockCoverage":true},{"functionName":"once","ranges":[{"startOffset":14709,"endOffset":14835,"count":455}],"isBlockCoverage":true},{"functionName":"prependOnceListener","ranges":[{"startOffset":14887,"endOffset":15057,"count":0}],"isBlockCoverage":false},{"functionName":"removeListener","ranges":[{"startOffset":15179,"endOffset":16473,"count":335},{"startOffset":15328,"endOffset":15340,"count":0},{"startOffset":15413,"endOffset":15425,"count":0},{"startOffset":15455,"endOffset":15484,"count":214},{"startOffset":15486,"endOffset":15746,"count":185},{"startOffset":15537,"endOffset":15571,"count":0},{"startOffset":15667,"endOffset":15728,"count":1},{"startOffset":15746,"endOffset":16447,"count":150},{"startOffset":15865,"endOffset":16004,"count":270},{"startOffset":15902,"endOffset":15934,"count":120},{"startOffset":15936,"endOffset":15994,"count":150},{"startOffset":16042,"endOffset":16054,"count":0},{"startOffset":16094,"endOffset":16107,"count":60},{"startOffset":16107,"endOffset":16268,"count":90},{"startOffset":16174,"endOffset":16221,"count":1},{"startOffset":16311,"endOffset":16334,"count":60},{"startOffset":16395,"endOffset":16439,"count":0}],"isBlockCoverage":true},{"functionName":"removeAllListeners","ranges":[{"startOffset":16593,"endOffset":17919,"count":0}],"isBlockCoverage":false},{"functionName":"_listeners","ranges":[{"startOffset":17922,"endOffset":18317,"count":0}],"isBlockCoverage":false},{"functionName":"listeners","ranges":[{"startOffset":18354,"endOffset":18421,"count":0}],"isBlockCoverage":false},{"functionName":"rawListeners","ranges":[{"startOffset":18462,"endOffset":18533,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.listenerCount","ranges":[{"startOffset":18565,"endOffset":18733,"count":0}],"isBlockCoverage":false},{"functionName":"listenerCount","ranges":[{"startOffset":18790,"endOffset":19080,"count":358},{"startOffset":18963,"endOffset":18986,"count":108},{"startOffset":18986,"endOffset":19061,"count":250},{"startOffset":19022,"endOffset":19061,"count":0},{"startOffset":19065,"endOffset":19079,"count":250}],"isBlockCoverage":true},{"functionName":"eventNames","ranges":[{"startOffset":19118,"endOffset":19211,"count":0}],"isBlockCoverage":false},{"functionName":"arrayClone","ranges":[{"startOffset":19214,"endOffset":19674,"count":480},{"startOffset":19386,"endOffset":19418,"count":420},{"startOffset":19423,"endOffset":19463,"count":60},{"startOffset":19468,"endOffset":19516,"count":0},{"startOffset":19521,"endOffset":19577,"count":0},{"startOffset":19582,"endOffset":19646,"count":0},{"startOffset":19650,"endOffset":19673,"count":0}],"isBlockCoverage":true},{"functionName":"unwrapListeners","ranges":[{"startOffset":19676,"endOffset":19890,"count":0}],"isBlockCoverage":false},{"functionName":"getEventListeners","ranges":[{"startOffset":19892,"endOffset":20687,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":20689,"endOffset":22475,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22553,"endOffset":22574,"count":0}],"isBlockCoverage":false},{"functionName":"createIterResult","ranges":[{"startOffset":22589,"endOffset":22657,"count":0}],"isBlockCoverage":false},{"functionName":"addErrorHandlerIfEventEmitter","ranges":[{"startOffset":22659,"endOffset":22842,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticRemoveListener","ranges":[{"startOffset":22844,"endOffset":23229,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticAddListener","ranges":[{"startOffset":23231,"endOffset":23820,"count":0}],"isBlockCoverage":false},{"functionName":"on","ranges":[{"startOffset":23822,"endOffset":26872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"14","url":"internal/util/inspect.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":71637,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2893,"endOffset":2929,"count":62}],"isBlockCoverage":true},{"functionName":"isUndetectableObject","ranges":[{"startOffset":3020,"endOffset":3070,"count":0}],"isBlockCoverage":false},{"functionName":"getUserOptions","ranges":[{"startOffset":6215,"endOffset":7666,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":7961,"endOffset":9878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9970,"endOffset":10015,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":10019,"endOffset":10227,"count":0}],"isBlockCoverage":false},{"functionName":"defineColorAlias","ranges":[{"startOffset":11964,"endOffset":12206,"count":12}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":12059,"endOffset":12099,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":12105,"endOffset":12151,"count":0}],"isBlockCoverage":false},{"functionName":"addQuotes","ranges":[{"startOffset":13216,"endOffset":13374,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":13393,"endOffset":13425,"count":0}],"isBlockCoverage":false},{"functionName":"strEscape","ranges":[{"startOffset":13538,"endOffset":15164,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeWithColor","ranges":[{"startOffset":15166,"endOffset":15432,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeNoColor","ranges":[{"startOffset":15434,"endOffset":15480,"count":0}],"isBlockCoverage":false},{"functionName":"getEmptyFormatArray","ranges":[{"startOffset":15559,"endOffset":15606,"count":0}],"isBlockCoverage":false},{"functionName":"isInstanceof","ranges":[{"startOffset":15608,"endOffset":15726,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorName","ranges":[{"startOffset":15728,"endOffset":16988,"count":0}],"isBlockCoverage":false},{"functionName":"addPrototypeProperties","ranges":[{"startOffset":17175,"endOffset":19018,"count":0}],"isBlockCoverage":false},{"functionName":"getPrefix","ranges":[{"startOffset":19020,"endOffset":19407,"count":0}],"isBlockCoverage":false},{"functionName":"getKeys","ranges":[{"startOffset":19444,"endOffset":20386,"count":0}],"isBlockCoverage":false},{"functionName":"getCtxStyle","ranges":[{"startOffset":20388,"endOffset":20651,"count":0}],"isBlockCoverage":false},{"functionName":"formatProxy","ranges":[{"startOffset":20653,"endOffset":21102,"count":0}],"isBlockCoverage":false},{"functionName":"findTypedConstructor","ranges":[{"startOffset":21104,"endOffset":21627,"count":0}],"isBlockCoverage":false},{"functionName":"formatValue","ranges":[{"startOffset":21809,"endOffset":24348,"count":0}],"isBlockCoverage":false},{"functionName":"formatRaw","ranges":[{"startOffset":24350,"endOffset":34825,"count":0}],"isBlockCoverage":false},{"functionName":"getIteratorBraces","ranges":[{"startOffset":34827,"endOffset":35009,"count":0}],"isBlockCoverage":false},{"functionName":"getBoxedBase","ranges":[{"startOffset":35011,"endOffset":36185,"count":0}],"isBlockCoverage":false},{"functionName":"getClassBase","ranges":[{"startOffset":36187,"endOffset":36787,"count":0}],"isBlockCoverage":false},{"functionName":"getFunctionBase","ranges":[{"startOffset":36789,"endOffset":37882,"count":0}],"isBlockCoverage":false},{"functionName":"formatError","ranges":[{"startOffset":37884,"endOffset":41005,"count":0}],"isBlockCoverage":false},{"functionName":"groupArrayElements","ranges":[{"startOffset":41007,"endOffset":45258,"count":0}],"isBlockCoverage":false},{"functionName":"handleMaxCallStackSize","ranges":[{"startOffset":45260,"endOffset":45648,"count":0}],"isBlockCoverage":false},{"functionName":"formatNumber","ranges":[{"startOffset":45650,"endOffset":45827,"count":0}],"isBlockCoverage":false},{"functionName":"formatBigInt","ranges":[{"startOffset":45829,"endOffset":45901,"count":0}],"isBlockCoverage":false},{"functionName":"formatPrimitive","ranges":[{"startOffset":45903,"endOffset":47086,"count":0}],"isBlockCoverage":false},{"functionName":"formatNamespaceObject","ranges":[{"startOffset":47088,"endOffset":48208,"count":0}],"isBlockCoverage":false},{"functionName":"formatSpecialArray","ranges":[{"startOffset":48255,"endOffset":49462,"count":0}],"isBlockCoverage":false},{"functionName":"formatArrayBuffer","ranges":[{"startOffset":49464,"endOffset":50064,"count":0}],"isBlockCoverage":false},{"functionName":"formatArray","ranges":[{"startOffset":50066,"endOffset":50660,"count":0}],"isBlockCoverage":false},{"functionName":"formatTypedArray","ranges":[{"startOffset":50662,"endOffset":51678,"count":0}],"isBlockCoverage":false},{"functionName":"formatSet","ranges":[{"startOffset":51680,"endOffset":51912,"count":0}],"isBlockCoverage":false},{"functionName":"formatMap","ranges":[{"startOffset":51914,"endOffset":52212,"count":0}],"isBlockCoverage":false},{"functionName":"formatSetIterInner","ranges":[{"startOffset":52214,"endOffset":53027,"count":0}],"isBlockCoverage":false},{"functionName":"formatMapIterInner","ranges":[{"startOffset":53029,"endOffset":54351,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakCollection","ranges":[{"startOffset":54353,"endOffset":54445,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakSet","ranges":[{"startOffset":54447,"endOffset":54604,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakMap","ranges":[{"startOffset":54606,"endOffset":54763,"count":0}],"isBlockCoverage":false},{"functionName":"formatIterator","ranges":[{"startOffset":54765,"endOffset":55156,"count":0}],"isBlockCoverage":false},{"functionName":"formatPromise","ranges":[{"startOffset":55158,"endOffset":55623,"count":0}],"isBlockCoverage":false},{"functionName":"formatProperty","ranges":[{"startOffset":55625,"endOffset":58023,"count":0}],"isBlockCoverage":false},{"functionName":"isBelowBreakLength","ranges":[{"startOffset":58025,"endOffset":58967,"count":0}],"isBlockCoverage":false},{"functionName":"reduceToSingleString","ranges":[{"startOffset":58969,"endOffset":61715,"count":0}],"isBlockCoverage":false},{"functionName":"hasBuiltInToString","ranges":[{"startOffset":61717,"endOffset":62736,"count":0}],"isBlockCoverage":false},{"functionName":"firstErrorLine","ranges":[{"startOffset":62761,"endOffset":62800,"count":0}],"isBlockCoverage":false},{"functionName":"tryStringify","ranges":[{"startOffset":62830,"endOffset":63299,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":63301,"endOffset":63385,"count":0}],"isBlockCoverage":false},{"functionName":"formatWithOptions","ranges":[{"startOffset":63387,"endOffset":63665,"count":34},{"startOffset":63510,"endOffset":63602,"count":0}],"isBlockCoverage":true},{"functionName":"formatWithOptionsInternal","ranges":[{"startOffset":63667,"endOffset":67451,"count":34},{"startOffset":63890,"endOffset":67250,"count":0},{"startOffset":67254,"endOffset":67450,"count":0}],"isBlockCoverage":true},{"functionName":"getStringWidth","ranges":[{"startOffset":67880,"endOffset":68431,"count":0}],"isBlockCoverage":false},{"functionName":"getStringWidth","ranges":[{"startOffset":68546,"endOffset":68958,"count":0}],"isBlockCoverage":false},{"functionName":"isFullWidthCodePoint","ranges":[{"startOffset":69126,"endOffset":70735,"count":0}],"isBlockCoverage":false},{"functionName":"isZeroWidthCodePoint","ranges":[{"startOffset":70769,"endOffset":71337,"count":0}],"isBlockCoverage":false},{"functionName":"stripVTControlCharacters","ranges":[{"startOffset":71427,"endOffset":71501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"15","url":"internal/util/types.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1915,"count":1}],"isBlockCoverage":false},{"functionName":"isTypedArray","ranges":[{"startOffset":425,"endOffset":516,"count":0}],"isBlockCoverage":false},{"functionName":"isUint8Array","ranges":[{"startOffset":518,"endOffset":612,"count":459}],"isBlockCoverage":true},{"functionName":"isUint8ClampedArray","ranges":[{"startOffset":614,"endOffset":722,"count":0}],"isBlockCoverage":false},{"functionName":"isUint16Array","ranges":[{"startOffset":724,"endOffset":820,"count":0}],"isBlockCoverage":false},{"functionName":"isUint32Array","ranges":[{"startOffset":822,"endOffset":918,"count":0}],"isBlockCoverage":false},{"functionName":"isInt8Array","ranges":[{"startOffset":920,"endOffset":1012,"count":0}],"isBlockCoverage":false},{"functionName":"isInt16Array","ranges":[{"startOffset":1014,"endOffset":1108,"count":0}],"isBlockCoverage":false},{"functionName":"isInt32Array","ranges":[{"startOffset":1110,"endOffset":1204,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat32Array","ranges":[{"startOffset":1206,"endOffset":1304,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat64Array","ranges":[{"startOffset":1306,"endOffset":1404,"count":0}],"isBlockCoverage":false},{"functionName":"isBigInt64Array","ranges":[{"startOffset":1406,"endOffset":1506,"count":0}],"isBlockCoverage":false},{"functionName":"isBigUint64Array","ranges":[{"startOffset":1508,"endOffset":1610,"count":96}],"isBlockCoverage":true}]},{"scriptId":"16","url":"internal/assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":false},{"functionName":"lazyError","ranges":[{"startOffset":26,"endOffset":155,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":157,"endOffset":307,"count":511},{"startOffset":205,"endOffset":305,"count":0}],"isBlockCoverage":true},{"functionName":"fail","ranges":[{"startOffset":309,"endOffset":426,"count":0}],"isBlockCoverage":false}]},{"scriptId":"17","url":"internal/validators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7218,"count":1}],"isBlockCoverage":false},{"functionName":"isInt32","ranges":[{"startOffset":581,"endOffset":640,"count":177}],"isBlockCoverage":true},{"functionName":"isUint32","ranges":[{"startOffset":642,"endOffset":704,"count":202}],"isBlockCoverage":true},{"functionName":"parseFileMode","ranges":[{"startOffset":1326,"endOffset":1807,"count":114},{"startOffset":1389,"endOffset":1409,"count":0},{"startOffset":1411,"endOffset":1432,"count":0},{"startOffset":1480,"endOffset":1806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1852,"endOffset":2233,"count":126},{"startOffset":1972,"endOffset":2026,"count":0},{"startOffset":2066,"endOffset":2120,"count":0},{"startOffset":2163,"endOffset":2229,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2279,"endOffset":2860,"count":177},{"startOffset":2441,"endOffset":2739,"count":0},{"startOffset":2776,"endOffset":2856,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2904,"endOffset":3414,"count":0}],"isBlockCoverage":false},{"functionName":"validateString","ranges":[{"startOffset":3418,"endOffset":3550,"count":2877},{"startOffset":3494,"endOffset":3548,"count":0}],"isBlockCoverage":true},{"functionName":"validateNumber","ranges":[{"startOffset":3552,"endOffset":3684,"count":61},{"startOffset":3628,"endOffset":3682,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3724,"endOffset":4174,"count":30},{"startOffset":3796,"endOffset":4172,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3835,"endOffset":3888,"count":0}],"isBlockCoverage":false},{"functionName":"validateBoolean","ranges":[{"startOffset":4178,"endOffset":4313,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4357,"endOffset":4582,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4624,"endOffset":4911,"count":0}],"isBlockCoverage":false},{"functionName":"validateSignalName","ranges":[{"startOffset":4915,"endOffset":5336,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5377,"endOffset":5607,"count":88},{"startOffset":5442,"endOffset":5605,"count":0}],"isBlockCoverage":true},{"functionName":"validateEncoding","ranges":[{"startOffset":5611,"endOffset":5945,"count":7},{"startOffset":5779,"endOffset":5798,"count":0},{"startOffset":5800,"endOffset":5943,"count":0}],"isBlockCoverage":true},{"functionName":"validatePort","ranges":[{"startOffset":6089,"endOffset":6463,"count":37},{"startOffset":6193,"endOffset":6220,"count":0},{"startOffset":6257,"endOffset":6284,"count":0},{"startOffset":6363,"endOffset":6376,"count":0},{"startOffset":6379,"endOffset":6442,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6506,"endOffset":6607,"count":982},{"startOffset":6564,"endOffset":6605,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6655,"endOffset":6872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"18","url":"buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":36751,"count":1}],"isBlockCoverage":false},{"functionName":"validateOffset","ranges":[{"startOffset":2784,"endOffset":2868,"count":0}],"isBlockCoverage":false},{"functionName":"createUnsafeBuffer","ranges":[{"startOffset":4082,"endOffset":4218,"count":22}],"isBlockCoverage":true},{"functionName":"createPool","ranges":[{"startOffset":4220,"endOffset":4379,"count":9}],"isBlockCoverage":true},{"functionName":"alignPool","ranges":[{"startOffset":4395,"endOffset":4517,"count":77},{"startOffset":4469,"endOffset":4515,"count":71}],"isBlockCoverage":true},{"functionName":"showFlaggedDeprecation","ranges":[{"startOffset":4821,"endOffset":5501,"count":0}],"isBlockCoverage":false},{"functionName":"toInteger","ranges":[{"startOffset":5503,"endOffset":5721,"count":0}],"isBlockCoverage":false},{"functionName":"_copy","ranges":[{"startOffset":5723,"endOffset":6988,"count":0}],"isBlockCoverage":false},{"functionName":"_copyActual","ranges":[{"startOffset":6990,"endOffset":7592,"count":0}],"isBlockCoverage":false},{"functionName":"Buffer","ranges":[{"startOffset":8168,"endOffset":8501,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":8594,"endOffset":8622,"count":0}],"isBlockCoverage":false},{"functionName":"from","ranges":[{"startOffset":8879,"endOffset":9843,"count":3},{"startOffset":9008,"endOffset":9059,"count":0},{"startOffset":9061,"endOffset":9842,"count":0}],"isBlockCoverage":true},{"functionName":"of","ranges":[{"startOffset":10214,"endOffset":10366,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10655,"endOffset":10876,"count":126},{"startOffset":10699,"endOffset":10764,"count":0},{"startOffset":10807,"endOffset":10874,"count":0}],"isBlockCoverage":true},{"functionName":"alloc","ranges":[{"startOffset":10979,"endOffset":11224,"count":38},{"startOffset":11063,"endOffset":11076,"count":0},{"startOffset":11077,"endOffset":11088,"count":0},{"startOffset":11090,"endOffset":11191,"count":0}],"isBlockCoverage":true},{"functionName":"allocUnsafe","ranges":[{"startOffset":11403,"endOffset":11478,"count":88}],"isBlockCoverage":true},{"functionName":"allocUnsafeSlow","ranges":[{"startOffset":11719,"endOffset":11808,"count":0}],"isBlockCoverage":false},{"functionName":"SlowBuffer","ranges":[{"startOffset":11904,"endOffset":11994,"count":0}],"isBlockCoverage":false},{"functionName":"allocate","ranges":[{"startOffset":12108,"endOffset":12440,"count":88},{"startOffset":12151,"endOffset":12185,"count":0},{"startOffset":12224,"endOffset":12403,"count":75},{"startOffset":12272,"endOffset":12285,"count":8},{"startOffset":12403,"endOffset":12439,"count":13}],"isBlockCoverage":true},{"functionName":"fromStringFast","ranges":[{"startOffset":12442,"endOffset":12988,"count":3},{"startOffset":12568,"endOffset":12617,"count":1},{"startOffset":12617,"endOffset":12663,"count":2},{"startOffset":12663,"endOffset":12676,"count":0},{"startOffset":12676,"endOffset":12809,"count":2},{"startOffset":12809,"endOffset":12935,"count":0},{"startOffset":12935,"endOffset":12987,"count":2}],"isBlockCoverage":true},{"functionName":"fromString","ranges":[{"startOffset":12990,"endOffset":13443,"count":3},{"startOffset":13076,"endOffset":13100,"count":1},{"startOffset":13102,"endOffset":13221,"count":2},{"startOffset":13139,"endOffset":13163,"count":0},{"startOffset":13221,"endOffset":13403,"count":1},{"startOffset":13298,"endOffset":13339,"count":0},{"startOffset":13375,"endOffset":13399,"count":0}],"isBlockCoverage":true},{"functionName":"fromArrayBuffer","ranges":[{"startOffset":13445,"endOffset":14142,"count":0}],"isBlockCoverage":false},{"functionName":"fromArrayLike","ranges":[{"startOffset":14144,"endOffset":14518,"count":0}],"isBlockCoverage":false},{"functionName":"fromObject","ranges":[{"startOffset":14520,"endOffset":14826,"count":0}],"isBlockCoverage":false},{"functionName":"isBuffer","ranges":[{"startOffset":14865,"endOffset":14919,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":14939,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"isEncoding","ranges":[{"startOffset":15287,"endOffset":15438,"count":85}],"isBlockCoverage":true},{"functionName":"concat","ranges":[{"startOffset":15504,"endOffset":16708,"count":0}],"isBlockCoverage":false},{"functionName":"base64ByteLength","ranges":[{"startOffset":16711,"endOffset":16947,"count":1},{"startOffset":16885,"endOffset":16893,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":17082,"endOffset":17146,"count":2}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":17159,"endOffset":17205,"count":85}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17220,"endOffset":17316,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17409,"endOffset":17438,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17451,"endOffset":17515,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17528,"endOffset":17574,"count":19}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17589,"endOffset":17688,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17787,"endOffset":17816,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17829,"endOffset":17893,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17906,"endOffset":17952,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":17967,"endOffset":18066,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18162,"endOffset":18187,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18200,"endOffset":18266,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18279,"endOffset":18327,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18342,"endOffset":18440,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18533,"endOffset":18558,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18571,"endOffset":18636,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18649,"endOffset":18696,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18711,"endOffset":18923,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19019,"endOffset":19070,"count":1}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":19083,"endOffset":19149,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19162,"endOffset":19210,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19225,"endOffset":19439,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19526,"endOffset":19557,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":19570,"endOffset":19633,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19646,"endOffset":19691,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19706,"endOffset":19914,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingOps","ranges":[{"startOffset":19922,"endOffset":21477,"count":105},{"startOffset":20009,"endOffset":20294,"count":104},{"startOffset":20048,"endOffset":20072,"count":85},{"startOffset":20072,"endOffset":20128,"count":19},{"startOffset":20128,"endOffset":20294,"count":0},{"startOffset":20299,"endOffset":20704,"count":0},{"startOffset":20709,"endOffset":20839,"count":0},{"startOffset":20844,"endOffset":20976,"count":0},{"startOffset":20981,"endOffset":21348,"count":1},{"startOffset":21055,"endOffset":21081,"count":0},{"startOffset":21141,"endOffset":21239,"count":0},{"startOffset":21249,"endOffset":21348,"count":0},{"startOffset":21353,"endOffset":21471,"count":0}],"isBlockCoverage":true},{"functionName":"byteLength","ranges":[{"startOffset":21479,"endOffset":22136,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22276,"endOffset":22370,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22448,"endOffset":22546,"count":0}],"isBlockCoverage":false},{"functionName":"copy","ranges":[{"startOffset":22578,"endOffset":22711,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":22992,"endOffset":23571,"count":176},{"startOffset":23064,"endOffset":23112,"count":72},{"startOffset":23112,"endOffset":23164,"count":104},{"startOffset":23164,"endOffset":23174,"count":0},{"startOffset":23174,"endOffset":23237,"count":104},{"startOffset":23204,"endOffset":23214,"count":0},{"startOffset":23237,"endOffset":23263,"count":104},{"startOffset":23263,"endOffset":23275,"count":0},{"startOffset":23281,"endOffset":23291,"count":104},{"startOffset":23291,"endOffset":23312,"count":0},{"startOffset":23312,"endOffset":23338,"count":104},{"startOffset":23338,"endOffset":23348,"count":0},{"startOffset":23348,"endOffset":23384,"count":104},{"startOffset":23384,"endOffset":23418,"count":0},{"startOffset":23418,"endOffset":23489,"count":104},{"startOffset":23489,"endOffset":23530,"count":0},{"startOffset":23530,"endOffset":23570,"count":104}],"isBlockCoverage":true},{"functionName":"equals","ranges":[{"startOffset":23600,"endOffset":23954,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":24082,"endOffset":25077,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":25173,"endOffset":26322,"count":0}],"isBlockCoverage":false},{"functionName":"bidirectionalIndexOf","ranges":[{"startOffset":26750,"endOffset":28057,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":28086,"endOffset":28203,"count":0}],"isBlockCoverage":false},{"functionName":"lastIndexOf","ranges":[{"startOffset":28237,"endOffset":28359,"count":0}],"isBlockCoverage":false},{"functionName":"includes","ranges":[{"startOffset":28390,"endOffset":28495,"count":0}],"isBlockCoverage":false},{"functionName":"fill","ranges":[{"startOffset":28673,"endOffset":28772,"count":0}],"isBlockCoverage":false},{"functionName":"_fill","ranges":[{"startOffset":28775,"endOffset":30684,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":30711,"endOffset":31726,"count":0}],"isBlockCoverage":false},{"functionName":"toJSON","ranges":[{"startOffset":31755,"endOffset":31989,"count":0}],"isBlockCoverage":false},{"functionName":"adjustOffset","ranges":[{"startOffset":31992,"endOffset":32426,"count":38},{"startOffset":32232,"endOffset":32270,"count":19},{"startOffset":32270,"endOffset":32333,"count":0},{"startOffset":32333,"endOffset":32357,"count":19},{"startOffset":32357,"endOffset":32381,"count":0},{"startOffset":32381,"endOffset":32411,"count":19},{"startOffset":32411,"endOffset":32414,"count":0},{"startOffset":32415,"endOffset":32423,"count":19}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":32453,"endOffset":32753,"count":19},{"startOffset":32614,"endOffset":32625,"count":0},{"startOffset":32673,"endOffset":32676,"count":0}],"isBlockCoverage":true},{"functionName":"swap","ranges":[{"startOffset":32756,"endOffset":32827,"count":0}],"isBlockCoverage":false},{"functionName":"swap16","ranges":[{"startOffset":32855,"endOffset":33259,"count":0}],"isBlockCoverage":false},{"functionName":"swap32","ranges":[{"startOffset":33288,"endOffset":33732,"count":0}],"isBlockCoverage":false},{"functionName":"swap64","ranges":[{"startOffset":33761,"endOffset":34269,"count":0}],"isBlockCoverage":false},{"functionName":"transcode","ranges":[{"startOffset":34582,"endOffset":35322,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35391,"endOffset":35581,"count":0}],"isBlockCoverage":false},{"functionName":"btoa","ranges":[{"startOffset":35585,"endOffset":35921,"count":0}],"isBlockCoverage":false},{"functionName":"atob","ranges":[{"startOffset":36017,"endOffset":36338,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36664,"endOffset":36699,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36705,"endOffset":36742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"19","url":"internal/buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":29666,"count":1}],"isBlockCoverage":false},{"functionName":"checkBounds","ranges":[{"startOffset":1107,"endOffset":1323,"count":0}],"isBlockCoverage":false},{"functionName":"checkInt","ranges":[{"startOffset":1325,"endOffset":1947,"count":0}],"isBlockCoverage":false},{"functionName":"boundsError","ranges":[{"startOffset":1949,"endOffset":2352,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64LE","ranges":[{"startOffset":2372,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64BE","ranges":[{"startOffset":2873,"endOffset":3372,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64LE","ranges":[{"startOffset":3374,"endOffset":3875,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64BE","ranges":[{"startOffset":3877,"endOffset":4372,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntLE","ranges":[{"startOffset":4374,"endOffset":4926,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48LE","ranges":[{"startOffset":4928,"endOffset":5311,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40LE","ranges":[{"startOffset":5313,"endOffset":5669,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32LE","ranges":[{"startOffset":5671,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24LE","ranges":[{"startOffset":5999,"endOffset":6287,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16LE","ranges":[{"startOffset":6289,"endOffset":6549,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt8","ranges":[{"startOffset":6551,"endOffset":6731,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntBE","ranges":[{"startOffset":6733,"endOffset":7285,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48BE","ranges":[{"startOffset":7287,"endOffset":7670,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40BE","ranges":[{"startOffset":7672,"endOffset":8028,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32BE","ranges":[{"startOffset":8030,"endOffset":8356,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24BE","ranges":[{"startOffset":8358,"endOffset":8646,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16BE","ranges":[{"startOffset":8648,"endOffset":8908,"count":0}],"isBlockCoverage":false},{"functionName":"readIntLE","ranges":[{"startOffset":8910,"endOffset":9455,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48LE","ranges":[{"startOffset":9457,"endOffset":9888,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40LE","ranges":[{"startOffset":9890,"endOffset":10277,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32LE","ranges":[{"startOffset":10279,"endOffset":10614,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24LE","ranges":[{"startOffset":10616,"endOffset":10948,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16LE","ranges":[{"startOffset":10950,"endOffset":11256,"count":0}],"isBlockCoverage":false},{"functionName":"readInt8","ranges":[{"startOffset":11258,"endOffset":11466,"count":0}],"isBlockCoverage":false},{"functionName":"readIntBE","ranges":[{"startOffset":11468,"endOffset":12013,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48BE","ranges":[{"startOffset":12015,"endOffset":12444,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40BE","ranges":[{"startOffset":12446,"endOffset":12834,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32BE","ranges":[{"startOffset":12836,"endOffset":13171,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24BE","ranges":[{"startOffset":13173,"endOffset":13505,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16BE","ranges":[{"startOffset":13507,"endOffset":13813,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatBackwards","ranges":[{"startOffset":13830,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatForwards","ranges":[{"startOffset":14237,"endOffset":14641,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleBackwards","ranges":[{"startOffset":14643,"endOffset":15213,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleForwards","ranges":[{"startOffset":15215,"endOffset":15784,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64LE","ranges":[{"startOffset":15805,"endOffset":16287,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64LE","ranges":[{"startOffset":16289,"endOffset":16411,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64BE","ranges":[{"startOffset":16413,"endOffset":16911,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64BE","ranges":[{"startOffset":16913,"endOffset":17035,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64LE","ranges":[{"startOffset":17037,"endOffset":17181,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64BE","ranges":[{"startOffset":17183,"endOffset":17327,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntLE","ranges":[{"startOffset":17329,"endOffset":17938,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48LE","ranges":[{"startOffset":17940,"endOffset":18353,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40LE","ranges":[{"startOffset":18355,"endOffset":18734,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32LE","ranges":[{"startOffset":18736,"endOffset":19043,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32LE","ranges":[{"startOffset":19045,"endOffset":19151,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24LE","ranges":[{"startOffset":19153,"endOffset":19412,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16LE","ranges":[{"startOffset":19414,"endOffset":19610,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16LE","ranges":[{"startOffset":19612,"endOffset":19714,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int8","ranges":[{"startOffset":19716,"endOffset":20128,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt8","ranges":[{"startOffset":20130,"endOffset":20224,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntBE","ranges":[{"startOffset":20226,"endOffset":20835,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48BE","ranges":[{"startOffset":20837,"endOffset":21258,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40BE","ranges":[{"startOffset":21260,"endOffset":21622,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32BE","ranges":[{"startOffset":21624,"endOffset":21939,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32BE","ranges":[{"startOffset":21941,"endOffset":22047,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24BE","ranges":[{"startOffset":22049,"endOffset":22314,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16BE","ranges":[{"startOffset":22316,"endOffset":22512,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16BE","ranges":[{"startOffset":22514,"endOffset":22616,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntLE","ranges":[{"startOffset":22618,"endOffset":23280,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32LE","ranges":[{"startOffset":23282,"endOffset":23397,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16LE","ranges":[{"startOffset":23399,"endOffset":23506,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt8","ranges":[{"startOffset":23508,"endOffset":23605,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntBE","ranges":[{"startOffset":23607,"endOffset":24269,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32BE","ranges":[{"startOffset":24271,"endOffset":24386,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16BE","ranges":[{"startOffset":24388,"endOffset":24495,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleForwards","ranges":[{"startOffset":24514,"endOffset":24980,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleBackwards","ranges":[{"startOffset":24982,"endOffset":25449,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatForwards","ranges":[{"startOffset":25451,"endOffset":25752,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatBackwards","ranges":[{"startOffset":25754,"endOffset":26056,"count":0}],"isBlockCoverage":false},{"functionName":"addBufferPrototypeMethods","ranges":[{"startOffset":26098,"endOffset":29155,"count":1},{"startOffset":28181,"endOffset":28201,"count":0},{"startOffset":28255,"endOffset":28274,"count":0},{"startOffset":28330,"endOffset":28351,"count":0},{"startOffset":28407,"endOffset":28427,"count":0},{"startOffset":28484,"endOffset":28505,"count":0},{"startOffset":28561,"endOffset":28581,"count":0},{"startOffset":28639,"endOffset":28661,"count":0},{"startOffset":28719,"endOffset":28740,"count":0}],"isBlockCoverage":true},{"functionName":"markAsUntransferable","ranges":[{"startOffset":29311,"endOffset":29575,"count":9},{"startOffset":29379,"endOffset":29407,"count":0},{"startOffset":29430,"endOffset":29437,"count":0}],"isBlockCoverage":true}]},{"scriptId":"20","url":"internal/worker/js_transferable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1310,"count":1}],"isBlockCoverage":false},{"functionName":"setup","ranges":[{"startOffset":304,"endOffset":1091,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":585,"endOffset":1087,"count":0}],"isBlockCoverage":false}]},{"scriptId":"21","url":"internal/process/per_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10598,"count":1}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":796,"endOffset":884,"count":0}],"isBlockCoverage":false},{"functionName":"wrapProcessMethods","ranges":[{"startOffset":962,"endOffset":6703,"count":1}],"isBlockCoverage":true},{"functionName":"_rawDebug","ranges":[{"startOffset":1173,"endOffset":1255,"count":0}],"isBlockCoverage":false},{"functionName":"cpuUsage","ranges":[{"startOffset":1466,"endOffset":3025,"count":0}],"isBlockCoverage":false},{"functionName":"previousValueIsValid","ranges":[{"startOffset":3178,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"hrtime","ranges":[{"startOffset":3539,"endOffset":4142,"count":0}],"isBlockCoverage":false},{"functionName":"hrtimeBigInt","ranges":[{"startOffset":4329,"endOffset":4423,"count":0}],"isBlockCoverage":false},{"functionName":"memoryUsage","ranges":[{"startOffset":4468,"endOffset":4694,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":4698,"endOffset":5136,"count":0}],"isBlockCoverage":false},{"functionName":"kill","ranges":[{"startOffset":5140,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"resourceUsage","ranges":[{"startOffset":5836,"endOffset":6569,"count":0}],"isBlockCoverage":false},{"functionName":"buildAllowedFlags","ranges":[{"startOffset":6914,"endOffset":9974,"count":0}],"isBlockCoverage":false},{"functionName":"toggleTraceCategoryState","ranges":[{"startOffset":10164,"endOffset":10494,"count":1},{"startOffset":10244,"endOffset":10419,"count":0},{"startOffset":10451,"endOffset":10492,"count":0}],"isBlockCoverage":true}]},{"scriptId":"22","url":"internal/async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19081,"count":1}],"isBlockCoverage":false},{"functionName":"useDomainTrampoline","ranges":[{"startOffset":5274,"endOffset":5328,"count":0}],"isBlockCoverage":false},{"functionName":"callbackTrampoline","ranges":[{"startOffset":5330,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"executionAsyncResource","ranges":[{"startOffset":5999,"endOffset":6497,"count":0}],"isBlockCoverage":false},{"functionName":"inspectExceptionValue","ranges":[{"startOffset":6499,"endOffset":6635,"count":0}],"isBlockCoverage":false},{"functionName":"fatalError","ranges":[{"startOffset":6696,"endOffset":7082,"count":0}],"isBlockCoverage":false},{"functionName":"lookupPublicResource","ranges":[{"startOffset":7084,"endOffset":7433,"count":0}],"isBlockCoverage":false},{"functionName":"emitInitNative","ranges":[{"startOffset":7624,"endOffset":8717,"count":0}],"isBlockCoverage":false},{"functionName":"emitHook","ranges":[{"startOffset":8818,"endOffset":9768,"count":0}],"isBlockCoverage":false},{"functionName":"emitHookFactory","ranges":[{"startOffset":9770,"endOffset":10030,"count":4}],"isBlockCoverage":true},{"functionName":"getHookArrays","ranges":[{"startOffset":10059,"endOffset":10549,"count":0}],"isBlockCoverage":false},{"functionName":"storeActiveHooks","ranges":[{"startOffset":10552,"endOffset":10852,"count":0}],"isBlockCoverage":false},{"functionName":"copyHooks","ranges":[{"startOffset":10854,"endOffset":11119,"count":0}],"isBlockCoverage":false},{"functionName":"restoreActiveHooks","ranges":[{"startOffset":11234,"endOffset":11439,"count":0}],"isBlockCoverage":false},{"functionName":"trackPromise","ranges":[{"startOffset":11441,"endOffset":11798,"count":0}],"isBlockCoverage":false},{"functionName":"fastPromiseHook","ranges":[{"startOffset":11800,"endOffset":12936,"count":0}],"isBlockCoverage":false},{"functionName":"enableHooks","ranges":[{"startOffset":12967,"endOffset":13027,"count":0}],"isBlockCoverage":false},{"functionName":"updatePromiseHookMode","ranges":[{"startOffset":13055,"endOffset":13346,"count":0}],"isBlockCoverage":false},{"functionName":"disableHooks","ranges":[{"startOffset":13348,"endOffset":13623,"count":0}],"isBlockCoverage":false},{"functionName":"disablePromiseHookIfNecessary","ranges":[{"startOffset":13625,"endOffset":13751,"count":0}],"isBlockCoverage":false},{"functionName":"newAsyncId","ranges":[{"startOffset":13952,"endOffset":14022,"count":1488}],"isBlockCoverage":true},{"functionName":"getOrSetAsyncId","ranges":[{"startOffset":14024,"endOffset":14214,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultTriggerAsyncId","ranges":[{"startOffset":14397,"endOffset":14687,"count":1488},{"startOffset":14611,"endOffset":14653,"count":1474},{"startOffset":14653,"endOffset":14686,"count":14}],"isBlockCoverage":true},{"functionName":"clearDefaultTriggerAsyncId","ranges":[{"startOffset":14690,"endOffset":14779,"count":0}],"isBlockCoverage":false},{"functionName":"defaultTriggerAsyncIdScope","ranges":[{"startOffset":14782,"endOffset":15257,"count":74},{"startOffset":14892,"endOffset":14914,"count":0}],"isBlockCoverage":true},{"functionName":"hasHooks","ranges":[{"startOffset":15259,"endOffset":15322,"count":7326}],"isBlockCoverage":true},{"functionName":"enabledHooksExist","ranges":[{"startOffset":15324,"endOffset":15383,"count":1450}],"isBlockCoverage":true},{"functionName":"initHooksExist","ranges":[{"startOffset":15385,"endOffset":15440,"count":1488}],"isBlockCoverage":true},{"functionName":"afterHooksExist","ranges":[{"startOffset":15442,"endOffset":15499,"count":0}],"isBlockCoverage":false},{"functionName":"destroyHooksExist","ranges":[{"startOffset":15501,"endOffset":15562,"count":1488}],"isBlockCoverage":true},{"functionName":"emitInitScript","ranges":[{"startOffset":15565,"endOffset":15973,"count":0}],"isBlockCoverage":false},{"functionName":"emitBeforeScript","ranges":[{"startOffset":15976,"endOffset":16152,"count":1450},{"startOffset":16124,"endOffset":16150,"count":0}],"isBlockCoverage":true},{"functionName":"emitAfterScript","ranges":[{"startOffset":16155,"endOffset":16275,"count":1450},{"startOffset":16219,"endOffset":16244,"count":0}],"isBlockCoverage":true},{"functionName":"emitDestroyScript","ranges":[{"startOffset":16278,"endOffset":16488,"count":0}],"isBlockCoverage":false},{"functionName":"hasAsyncIdStack","ranges":[{"startOffset":16491,"endOffset":16554,"count":0}],"isBlockCoverage":false},{"functionName":"pushAsyncContext","ranges":[{"startOffset":16620,"endOffset":17190,"count":1450},{"startOffset":16840,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"popAsyncContext","ranges":[{"startOffset":17255,"endOffset":17879,"count":1450},{"startOffset":17371,"endOffset":17384,"count":0},{"startOffset":17463,"endOffset":17569,"count":0}],"isBlockCoverage":true},{"functionName":"executionAsyncId","ranges":[{"startOffset":17882,"endOffset":17958,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":17960,"endOffset":18032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"23","url":"internal/process/task_queues.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4409,"count":1}],"isBlockCoverage":false},{"functionName":"hasTickScheduled","ranges":[{"startOffset":1007,"endOffset":1082,"count":1354}],"isBlockCoverage":true},{"functionName":"setHasTickScheduled","ranges":[{"startOffset":1084,"endOffset":1170,"count":595},{"startOffset":1160,"endOffset":1163,"count":314},{"startOffset":1164,"endOffset":1167,"count":281}],"isBlockCoverage":true},{"functionName":"runNextTicks","ranges":[{"startOffset":1272,"endOffset":1468,"count":677},{"startOffset":1434,"endOffset":1467,"count":0}],"isBlockCoverage":true},{"functionName":"processTicksAndRejections","ranges":[{"startOffset":1470,"endOffset":2438,"count":281},{"startOffset":1526,"endOffset":2318,"count":311},{"startOffset":1561,"endOffset":2293,"count":476},{"startOffset":1762,"endOffset":1795,"count":9},{"startOffset":1795,"endOffset":2169,"count":467},{"startOffset":1882,"endOffset":1915,"count":147},{"startOffset":1928,"endOffset":1970,"count":320},{"startOffset":1983,"endOffset":2034,"count":0},{"startOffset":2047,"endOffset":2107,"count":0},{"startOffset":2120,"endOffset":2147,"count":0},{"startOffset":2231,"endOffset":2252,"count":0}],"isBlockCoverage":true},{"functionName":"nextTick","ranges":[{"startOffset":2582,"endOffset":3497,"count":476},{"startOffset":2654,"endOffset":2695,"count":0},{"startOffset":2725,"endOffset":2732,"count":0},{"startOffset":2780,"endOffset":2794,"count":9},{"startOffset":2799,"endOffset":2836,"count":147},{"startOffset":2841,"endOffset":2892,"count":320},{"startOffset":2897,"endOffset":2962,"count":0},{"startOffset":2967,"endOffset":3110,"count":0},{"startOffset":3139,"endOffset":3165,"count":314},{"startOffset":3409,"endOffset":3469,"count":0}],"isBlockCoverage":true},{"functionName":"runMicrotask","ranges":[{"startOffset":3499,"endOffset":3675,"count":0}],"isBlockCoverage":false},{"functionName":"queueMicrotask","ranges":[{"startOffset":3747,"endOffset":4107,"count":0}],"isBlockCoverage":false},{"functionName":"setupTaskQueue","ranges":[{"startOffset":4130,"endOffset":4387,"count":1}],"isBlockCoverage":true}]},{"scriptId":"24","url":"internal/process/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9605,"count":1}],"isBlockCoverage":false},{"functionName":"setHasRejectionToWarn","ranges":[{"startOffset":1918,"endOffset":2008,"count":281},{"startOffset":1998,"endOffset":2001,"count":0}],"isBlockCoverage":true},{"functionName":"hasRejectionToWarn","ranges":[{"startOffset":2010,"endOffset":2089,"count":1354}],"isBlockCoverage":true},{"functionName":"getUnhandledRejectionsMode","ranges":[{"startOffset":2091,"endOffset":2626,"count":0}],"isBlockCoverage":false},{"functionName":"promiseRejectHandler","ranges":[{"startOffset":2628,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"resolveError","ranges":[{"startOffset":3199,"endOffset":3449,"count":0}],"isBlockCoverage":false},{"functionName":"unhandledRejection","ranges":[{"startOffset":3451,"endOffset":3745,"count":0}],"isBlockCoverage":false},{"functionName":"handledRejection","ranges":[{"startOffset":3747,"endOffset":4563,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionWarning","ranges":[{"startOffset":4635,"endOffset":5531,"count":0}],"isBlockCoverage":false},{"functionName":"emitDeprecationWarning","ranges":[{"startOffset":5564,"endOffset":5849,"count":0}],"isBlockCoverage":false},{"functionName":"processPromiseRejections","ranges":[{"startOffset":6022,"endOffset":8506,"count":281},{"startOffset":6180,"endOffset":6346,"count":0},{"startOffset":6411,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"getErrorWithoutStack","ranges":[{"startOffset":8508,"endOffset":8926,"count":0}],"isBlockCoverage":false},{"functionName":"generateUnhandledRejectionError","ranges":[{"startOffset":8928,"endOffset":9398,"count":0}],"isBlockCoverage":false},{"functionName":"listenForRejections","ranges":[{"startOffset":9400,"endOffset":9484,"count":1}],"isBlockCoverage":true}]},{"scriptId":"25","url":"internal/fixed_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4184,"count":1}],"isBlockCoverage":false},{"functionName":"FixedCircularBuffer","ranges":[{"startOffset":2959,"endOffset":3073,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3077,"endOffset":3129,"count":1574}],"isBlockCoverage":true},{"functionName":"isFull","ranges":[{"startOffset":3133,"endOffset":3200,"count":476}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3204,"endOffset":3291,"count":476}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3295,"endOffset":3510,"count":787},{"startOffset":3388,"endOffset":3400,"count":311},{"startOffset":3400,"endOffset":3509,"count":476}],"isBlockCoverage":true},{"functionName":"FixedQueue","ranges":[{"startOffset":3552,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3630,"endOffset":3677,"count":787}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3681,"endOffset":3945,"count":476},{"startOffset":3722,"endOffset":3915,"count":0}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3949,"endOffset":4180,"count":787},{"startOffset":4041,"endOffset":4062,"count":625},{"startOffset":4064,"endOffset":4159,"count":0}],"isBlockCoverage":true}]},{"scriptId":"26","url":"async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9502,"count":1}],"isBlockCoverage":false},{"functionName":"AsyncHook","ranges":[{"startOffset":1416,"endOffset":2250,"count":1},{"startOffset":1544,"endOffset":1586,"count":0},{"startOffset":1616,"endOffset":1647,"count":0},{"startOffset":1655,"endOffset":1699,"count":0},{"startOffset":1728,"endOffset":1758,"count":0},{"startOffset":1766,"endOffset":1809,"count":0},{"startOffset":1840,"endOffset":1872,"count":0},{"startOffset":1880,"endOffset":1925,"count":0},{"startOffset":1963,"endOffset":2002,"count":0},{"startOffset":2010,"endOffset":2062,"count":0}],"isBlockCoverage":true},{"functionName":"enable","ranges":[{"startOffset":2254,"endOffset":3491,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":3495,"endOffset":4271,"count":0}],"isBlockCoverage":false},{"functionName":"createHook","ranges":[{"startOffset":4276,"endOffset":4333,"count":1}],"isBlockCoverage":true},{"functionName":"AsyncResource","ranges":[{"startOffset":4426,"endOffset":5613,"count":0}],"isBlockCoverage":false},{"functionName":"runInAsyncScope","ranges":[{"startOffset":5617,"endOffset":5979,"count":0}],"isBlockCoverage":false},{"functionName":"emitDestroy","ranges":[{"startOffset":5983,"endOffset":6158,"count":0}],"isBlockCoverage":false},{"functionName":"asyncId","ranges":[{"startOffset":6162,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":6215,"endOffset":6279,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6283,"endOffset":6785,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6796,"endOffset":6915,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":6978,"endOffset":7260,"count":0}],"isBlockCoverage":false},{"functionName":"AsyncLocalStorage","ranges":[{"startOffset":7357,"endOffset":7454,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":7458,"endOffset":7783,"count":0}],"isBlockCoverage":false},{"functionName":"_enable","ranges":[{"startOffset":7787,"endOffset":7933,"count":0}],"isBlockCoverage":false},{"functionName":"_propagate","ranges":[{"startOffset":8002,"endOffset":8176,"count":0}],"isBlockCoverage":false},{"functionName":"enterWith","ranges":[{"startOffset":8180,"endOffset":8312,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":8316,"endOffset":8892,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":8896,"endOffset":9094,"count":0}],"isBlockCoverage":false},{"functionName":"getStore","ranges":[{"startOffset":9098,"endOffset":9237,"count":0}],"isBlockCoverage":false}]},{"scriptId":"27","url":"internal/console/global.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1939,"count":1}],"isBlockCoverage":false}]},{"scriptId":"28","url":"internal/console/constructor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19933,"count":1}],"isBlockCoverage":false},{"functionName":"Console","ranges":[{"startOffset":2592,"endOffset":4763,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":4972,"endOffset":5026,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5274,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5683,"endOffset":6271,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5865,"endOffset":5960,"count":102},{"startOffset":5898,"endOffset":5921,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":5972,"endOffset":6002,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6104,"endOffset":6203,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6215,"endOffset":6245,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6341,"endOffset":7523,"count":1}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":7593,"endOffset":9039,"count":34},{"startOffset":7819,"endOffset":7833,"count":0},{"startOffset":7907,"endOffset":7933,"count":0},{"startOffset":7972,"endOffset":8161,"count":0},{"startOffset":8219,"endOffset":8247,"count":0},{"startOffset":8604,"endOffset":8631,"count":30},{"startOffset":8685,"endOffset":8969,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9112,"endOffset":9602,"count":34},{"startOffset":9325,"endOffset":9331,"count":0},{"startOffset":9406,"endOffset":9527,"count":0},{"startOffset":9571,"endOffset":9595,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9673,"endOffset":9801,"count":34}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9872,"endOffset":10000,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteErrorHandler","ranges":[{"startOffset":10089,"endOffset":10978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10157,"endOffset":10975,"count":34},{"startOffset":10427,"endOffset":10445,"count":0},{"startOffset":10920,"endOffset":10965,"count":5}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":11007,"endOffset":11094,"count":34}],"isBlockCoverage":true},{"functionName":"warn","ranges":[{"startOffset":11100,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"dir","ranges":[{"startOffset":11194,"endOffset":11379,"count":0}],"isBlockCoverage":false},{"functionName":"time","ranges":[{"startOffset":11384,"endOffset":11742,"count":0}],"isBlockCoverage":false},{"functionName":"timeEnd","ranges":[{"startOffset":11747,"endOffset":12036,"count":0}],"isBlockCoverage":false},{"functionName":"timeLog","ranges":[{"startOffset":12041,"endOffset":12279,"count":0}],"isBlockCoverage":false},{"functionName":"trace","ranges":[{"startOffset":12291,"endOffset":12477,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":12482,"endOffset":12700,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":12761,"endOffset":13191,"count":0}],"isBlockCoverage":false},{"functionName":"count","ranges":[{"startOffset":13252,"endOffset":13708,"count":0}],"isBlockCoverage":false},{"functionName":"countReset","ranges":[{"startOffset":13774,"endOffset":14062,"count":0}],"isBlockCoverage":false},{"functionName":"group","ranges":[{"startOffset":14067,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"groupEnd","ranges":[{"startOffset":14240,"endOffset":14408,"count":0}],"isBlockCoverage":false},{"functionName":"table","ranges":[{"startOffset":14457,"endOffset":17867,"count":0}],"isBlockCoverage":false},{"functionName":"timeLogImpl","ranges":[{"startOffset":17908,"endOffset":18404,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":18406,"endOffset":18483,"count":0}],"isBlockCoverage":false},{"functionName":"formatTime","ranges":[{"startOffset":18485,"endOffset":19247,"count":0}],"isBlockCoverage":false},{"functionName":"isArray","ranges":[{"startOffset":19381,"endOffset":19437,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":19440,"endOffset":19458,"count":0}],"isBlockCoverage":false}]},{"scriptId":"29","url":"internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1582,"count":1}],"isBlockCoverage":false}]},{"scriptId":"30","url":"internal/util/inspector.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2215,"count":1}],"isBlockCoverage":false},{"functionName":"sendInspectorCommand","ranges":[{"startOffset":92,"endOffset":434,"count":0}],"isBlockCoverage":false},{"functionName":"installConsoleExtensions","ranges":[{"startOffset":508,"endOffset":1062,"count":0}],"isBlockCoverage":false},{"functionName":"wrapConsole","ranges":[{"startOffset":1141,"endOffset":1931,"count":1},{"startOffset":1299,"endOffset":1929,"count":23},{"startOffset":1514,"endOffset":1807,"count":19},{"startOffset":1807,"endOffset":1925,"count":4}],"isBlockCoverage":true},{"functionName":"get consoleFromVM","ranges":[{"startOffset":2103,"endOffset":2154,"count":0}],"isBlockCoverage":false},{"functionName":"set consoleFromVM","ranges":[{"startOffset":2158,"endOffset":2211,"count":1}],"isBlockCoverage":true}]},{"scriptId":"31","url":"internal/url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":41325,"count":1}],"isBlockCoverage":false},{"functionName":"toUSVString","ranges":[{"startOffset":2224,"endOffset":2520,"count":75},{"startOffset":2477,"endOffset":2519,"count":0}],"isBlockCoverage":true},{"functionName":"serializeTupleOrigin","ranges":[{"startOffset":2732,"endOffset":2850,"count":0}],"isBlockCoverage":false},{"functionName":"URLContext","ranges":[{"startOffset":3254,"endOffset":3477,"count":1107}],"isBlockCoverage":true},{"functionName":"URLSearchParams","ranges":[{"startOffset":3767,"endOffset":6130,"count":1014},{"startOffset":3882,"endOffset":6068,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6134,"endOffset":7204,"count":0}],"isBlockCoverage":false},{"functionName":"onParseComplete","ranges":[{"startOffset":7208,"endOffset":7901,"count":1014},{"startOffset":7463,"endOffset":7473,"count":0},{"startOffset":7536,"endOffset":7546,"count":0},{"startOffset":7627,"endOffset":7631,"count":0}],"isBlockCoverage":true},{"functionName":"onParseError","ranges":[{"startOffset":7903,"endOffset":7978,"count":93}],"isBlockCoverage":true},{"functionName":"onParseProtocolComplete","ranges":[{"startOffset":7980,"endOffset":8325,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostnameComplete","ranges":[{"startOffset":8327,"endOffset":8673,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePortComplete","ranges":[{"startOffset":8675,"endOffset":8837,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostComplete","ranges":[{"startOffset":8839,"endOffset":9145,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePathComplete","ranges":[{"startOffset":9147,"endOffset":9641,"count":173},{"startOffset":9413,"endOffset":9481,"count":0}],"isBlockCoverage":true},{"functionName":"onParseSearchComplete","ranges":[{"startOffset":9643,"endOffset":9811,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHashComplete","ranges":[{"startOffset":9813,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"URL","ranges":[{"startOffset":9999,"endOffset":10327,"count":1107},{"startOffset":10134,"endOffset":10186,"count":360}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10331,"endOffset":10412,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10416,"endOffset":10509,"count":3262}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10584,"endOffset":10784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10788,"endOffset":11721,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":11890,"endOffset":13071,"count":942},{"startOffset":11975,"endOffset":12036,"count":0},{"startOffset":12446,"endOffset":12607,"count":0},{"startOffset":12639,"endOffset":12676,"count":0},{"startOffset":12730,"endOffset":12752,"count":0},{"startOffset":12760,"endOffset":12824,"count":0},{"startOffset":12936,"endOffset":12959,"count":0},{"startOffset":13021,"endOffset":13047,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":13345,"endOffset":13404,"count":278}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":13470,"endOffset":13515,"count":664}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":13521,"endOffset":13701,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":13782,"endOffset":14410,"count":486},{"startOffset":13922,"endOffset":14166,"count":0},{"startOffset":14175,"endOffset":14187,"count":0},{"startOffset":14196,"endOffset":14211,"count":0},{"startOffset":14220,"endOffset":14233,"count":0},{"startOffset":14242,"endOffset":14256,"count":0},{"startOffset":14265,"endOffset":14276,"count":0},{"startOffset":14285,"endOffset":14368,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14480,"endOffset":14528,"count":639}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":14534,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14973,"endOffset":15023,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15029,"endOffset":15427,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15497,"endOffset":15547,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15553,"endOffset":15951,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16017,"endOffset":16173,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":16179,"endOffset":16470,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16540,"endOffset":16592,"count":467}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":16598,"endOffset":16897,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16963,"endOffset":17063,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17069,"endOffset":17386,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":17456,"endOffset":17651,"count":3089},{"startOffset":17535,"endOffset":17554,"count":0},{"startOffset":17596,"endOffset":17606,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":17657,"endOffset":17876,"count":173},{"startOffset":17767,"endOffset":17774,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17944,"endOffset":18083,"count":75},{"startOffset":18016,"endOffset":18031,"count":0},{"startOffset":18051,"endOffset":18082,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18089,"endOffset":18581,"count":75},{"startOffset":18275,"endOffset":18523,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":18668,"endOffset":18714,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":18780,"endOffset":18931,"count":75},{"startOffset":18858,"endOffset":18876,"count":0},{"startOffset":18896,"endOffset":18930,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18937,"endOffset":19355,"count":75},{"startOffset":19159,"endOffset":19354,"count":0}],"isBlockCoverage":true},{"functionName":"toJSON","ranges":[{"startOffset":19501,"endOffset":19558,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":19568,"endOffset":19873,"count":0}],"isBlockCoverage":false},{"functionName":"initSearchParams","ranges":[{"startOffset":19875,"endOffset":20015,"count":1089},{"startOffset":19972,"endOffset":20014,"count":0}],"isBlockCoverage":true},{"functionName":"parseParams","ranges":[{"startOffset":20124,"endOffset":22425,"count":0}],"isBlockCoverage":false},{"functionName":"serializeParams","ranges":[{"startOffset":23404,"endOffset":23964,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":24019,"endOffset":24707,"count":2},{"startOffset":24357,"endOffset":24503,"count":13},{"startOffset":24558,"endOffset":24705,"count":1}],"isBlockCoverage":true},{"functionName":"merge","ranges":[{"startOffset":24727,"endOffset":25357,"count":0}],"isBlockCoverage":false},{"functionName":"append","ranges":[{"startOffset":25424,"endOffset":25811,"count":0}],"isBlockCoverage":false},{"functionName":"delete","ranges":[{"startOffset":25816,"endOffset":26315,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":26320,"endOffset":26754,"count":0}],"isBlockCoverage":false},{"functionName":"getAll","ranges":[{"startOffset":26759,"endOffset":27227,"count":0}],"isBlockCoverage":false},{"functionName":"has","ranges":[{"startOffset":27232,"endOffset":27660,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27665,"endOffset":28691,"count":0}],"isBlockCoverage":false},{"functionName":"sort","ranges":[{"startOffset":28696,"endOffset":29873,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":30036,"endOffset":30245,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":30250,"endOffset":30822,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":30877,"endOffset":31077,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":31082,"endOffset":31286,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":31419,"endOffset":31619,"count":0}],"isBlockCoverage":false},{"functionName":"createSearchParamsIterator","ranges":[{"startOffset":31899,"endOffset":32102,"count":0}],"isBlockCoverage":false},{"functionName":"next","ranges":[{"startOffset":32326,"endOffset":33079,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":33083,"endOffset":34297,"count":0}],"isBlockCoverage":false},{"functionName":"domainToASCII","ranges":[{"startOffset":34303,"endOffset":34478,"count":0}],"isBlockCoverage":false},{"functionName":"domainToUnicode","ranges":[{"startOffset":34480,"endOffset":34659,"count":0}],"isBlockCoverage":false},{"functionName":"urlToOptions","ranges":[{"startOffset":34802,"endOffset":35345,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLWin32","ranges":[{"startOffset":35381,"endOffset":36774,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLPosix","ranges":[{"startOffset":36776,"endOffset":37280,"count":467},{"startOffset":36839,"endOffset":36895,"count":0},{"startOffset":36973,"endOffset":37239,"count":32483},{"startOffset":37004,"endOffset":37235,"count":0}],"isBlockCoverage":true},{"functionName":"fileURLToPath","ranges":[{"startOffset":37282,"endOffset":37629,"count":467},{"startOffset":37349,"endOffset":37370,"count":0},{"startOffset":37408,"endOffset":37472,"count":0},{"startOffset":37510,"endOffset":37551,"count":0},{"startOffset":37571,"endOffset":37598,"count":0}],"isBlockCoverage":true},{"functionName":"encodePathChars","ranges":[{"startOffset":38389,"endOffset":38945,"count":173},{"startOffset":38460,"endOffset":38509,"count":0},{"startOffset":38615,"endOffset":38666,"count":0},{"startOffset":38702,"endOffset":38751,"count":0},{"startOffset":38787,"endOffset":38843,"count":0},{"startOffset":38879,"endOffset":38924,"count":0}],"isBlockCoverage":true},{"functionName":"pathToFileURL","ranges":[{"startOffset":38947,"endOffset":40062,"count":173},{"startOffset":39035,"endOffset":39065,"count":0},{"startOffset":39067,"endOffset":39616,"count":0},{"startOffset":39848,"endOffset":39911,"count":172},{"startOffset":39871,"endOffset":39910,"count":0},{"startOffset":39913,"endOffset":39966,"count":1},{"startOffset":39974,"endOffset":39990,"count":1}],"isBlockCoverage":true},{"functionName":"isURLInstance","ranges":[{"startOffset":40064,"endOffset":40183,"count":896},{"startOffset":40157,"endOffset":40180,"count":486}],"isBlockCoverage":true},{"functionName":"toPathIfFileURL","ranges":[{"startOffset":40185,"endOffset":40330,"count":429},{"startOffset":40268,"endOffset":40289,"count":410},{"startOffset":40289,"endOffset":40329,"count":19}],"isBlockCoverage":true},{"functionName":"constructUrl","ranges":[{"startOffset":40332,"endOffset":41032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"32","url":"internal/querystring.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3021,"count":1}],"isBlockCoverage":false},{"functionName":"encodeStr","ranges":[{"startOffset":1336,"endOffset":2959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"33","url":"path.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":43399,"count":1}],"isBlockCoverage":false},{"functionName":"isPathSeparator","ranges":[{"startOffset":1492,"endOffset":1596,"count":0}],"isBlockCoverage":false},{"functionName":"isPosixPathSeparator","ranges":[{"startOffset":1598,"endOffset":1675,"count":84288}],"isBlockCoverage":true},{"functionName":"isWindowsDeviceRoot","ranges":[{"startOffset":1677,"endOffset":1847,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeString","ranges":[{"startOffset":1910,"endOffset":3714,"count":1054},{"startOffset":2127,"endOffset":3698,"count":84280},{"startOffset":2160,"endOffset":2186,"count":83226},{"startOffset":2186,"endOffset":2277,"count":1054},{"startOffset":2229,"endOffset":2235,"count":1046},{"startOffset":2235,"endOffset":2277,"count":8},{"startOffset":2277,"endOffset":2310,"count":83234},{"startOffset":2310,"endOffset":3599,"count":11507},{"startOffset":2342,"endOffset":2355,"count":10056},{"startOffset":2357,"endOffset":2382,"count":1546},{"startOffset":2382,"endOffset":3556,"count":9961},{"startOffset":2404,"endOffset":3343,"count":31},{"startOffset":2460,"endOffset":2518,"count":0},{"startOffset":2519,"endOffset":2577,"count":0},{"startOffset":2715,"endOffset":2791,"count":0},{"startOffset":3024,"endOffset":3193,"count":0},{"startOffset":3203,"endOffset":3335,"count":0},{"startOffset":3343,"endOffset":3556,"count":9930},{"startOffset":3389,"endOffset":3442,"count":8876},{"startOffset":3442,"endOffset":3501,"count":1054},{"startOffset":3556,"endOffset":3599,"count":11476},{"startOffset":3599,"endOffset":3694,"count":71727},{"startOffset":3627,"endOffset":3641,"count":1012},{"startOffset":3643,"endOffset":3664,"count":161},{"startOffset":3664,"endOffset":3694,"count":71566}],"isBlockCoverage":true},{"functionName":"_format","ranges":[{"startOffset":3892,"endOffset":4317,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":4435,"endOffset":8838,"count":0}],"isBlockCoverage":false},{"functionName":"normalize","ranges":[{"startOffset":8904,"endOffset":11655,"count":0}],"isBlockCoverage":false},{"functionName":"isAbsolute","ranges":[{"startOffset":11722,"endOffset":12090,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":12159,"endOffset":14215,"count":0}],"isBlockCoverage":false},{"functionName":"relative","ranges":[{"startOffset":14512,"endOffset":17986,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":17991,"endOffset":19019,"count":0}],"isBlockCoverage":false},{"functionName":"dirname","ranges":[{"startOffset":19085,"endOffset":21413,"count":0}],"isBlockCoverage":false},{"functionName":"basename","ranges":[{"startOffset":21506,"endOffset":24141,"count":0}],"isBlockCoverage":false},{"functionName":"extname","ranges":[{"startOffset":24207,"endOffset":26216,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":26420,"endOffset":30886,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":31069,"endOffset":31965,"count":1046},{"startOffset":31192,"endOffset":31212,"count":2667},{"startOffset":31219,"endOffset":31519,"count":1622},{"startOffset":31247,"endOffset":31256,"count":1621},{"startOffset":31257,"endOffset":31272,"count":1},{"startOffset":31369,"endOffset":31396,"count":0},{"startOffset":31904,"endOffset":31954,"count":0},{"startOffset":31955,"endOffset":31960,"count":0}],"isBlockCoverage":true},{"functionName":"normalize","ranges":[{"startOffset":32031,"endOffset":32606,"count":8},{"startOffset":32117,"endOffset":32128,"count":0},{"startOffset":32418,"endOffset":32512,"count":0},{"startOffset":32546,"endOffset":32558,"count":0},{"startOffset":32582,"endOffset":32594,"count":0}],"isBlockCoverage":true},{"functionName":"isAbsolute","ranges":[{"startOffset":32673,"endOffset":32802,"count":259}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":32871,"endOffset":33285,"count":8},{"startOffset":32920,"endOffset":32931,"count":0},{"startOffset":32990,"endOffset":33197,"count":16},{"startOffset":33126,"endOffset":33183,"count":8},{"startOffset":33234,"endOffset":33245,"count":0}],"isBlockCoverage":true},{"functionName":"relative","ranges":[{"startOffset":33375,"endOffset":35585,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":35590,"endOffset":35666,"count":840}],"isBlockCoverage":true},{"functionName":"dirname","ranges":[{"startOffset":35732,"endOffset":36360,"count":391},{"startOffset":35815,"endOffset":35826,"count":0},{"startOffset":35984,"endOffset":36221,"count":3937},{"startOffset":36039,"endOffset":36123,"count":391},{"startOffset":36123,"endOffset":36215,"count":3546},{"startOffset":36249,"endOffset":36276,"count":0},{"startOffset":36313,"endOffset":36325,"count":0}],"isBlockCoverage":true},{"functionName":"basename","ranges":[{"startOffset":36453,"endOffset":38773,"count":86},{"startOffset":36508,"endOffset":36535,"count":0},{"startOffset":36664,"endOffset":36681,"count":0},{"startOffset":36682,"endOffset":36710,"count":0},{"startOffset":36712,"endOffset":38179,"count":0},{"startOffset":38227,"endOffset":38696,"count":880},{"startOffset":38282,"endOffset":38506,"count":86},{"startOffset":38506,"endOffset":38690,"count":794},{"startOffset":38528,"endOffset":38690,"count":86},{"startOffset":38724,"endOffset":38734,"count":0}],"isBlockCoverage":true},{"functionName":"extname","ranges":[{"startOffset":38839,"endOffset":40497,"count":75},{"startOffset":39172,"endOffset":40118,"count":744},{"startOffset":39252,"endOffset":39498,"count":75},{"startOffset":39472,"endOffset":39498,"count":0},{"startOffset":39498,"endOffset":39521,"count":669},{"startOffset":39521,"endOffset":39678,"count":75},{"startOffset":39678,"endOffset":39708,"count":669},{"startOffset":39708,"endOffset":39908,"count":75},{"startOffset":39837,"endOffset":39900,"count":0},{"startOffset":39908,"endOffset":40112,"count":594},{"startOffset":39935,"endOffset":40112,"count":442},{"startOffset":40357,"endOffset":40389,"count":0},{"startOffset":40390,"endOffset":40428,"count":0},{"startOffset":40431,"endOffset":40455,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":40706,"endOffset":43060,"count":0}],"isBlockCoverage":false}]},{"scriptId":"34","url":"internal/encoding.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15916,"count":1}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":958,"endOffset":1067,"count":0}],"isBlockCoverage":false},{"functionName":"validateEncoder","ranges":[{"startOffset":1069,"endOffset":1194,"count":0}],"isBlockCoverage":false},{"functionName":"validateDecoder","ranges":[{"startOffset":1196,"endOffset":1321,"count":19},{"startOffset":1277,"endOffset":1319,"count":0}],"isBlockCoverage":true},{"functionName":"validateArgument","ranges":[{"startOffset":1323,"endOffset":1533,"count":20},{"startOffset":1470,"endOffset":1531,"count":0}],"isBlockCoverage":true},{"functionName":"trimAsciiWhitespace","ranges":[{"startOffset":8274,"endOffset":8756,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingFromLabel","ranges":[{"startOffset":8758,"endOffset":8937,"count":1},{"startOffset":8869,"endOffset":8936,"count":0}],"isBlockCoverage":true},{"functionName":"TextEncoder","ranges":[{"startOffset":9008,"endOffset":9054,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":9058,"endOffset":9125,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":9129,"endOffset":9221,"count":0}],"isBlockCoverage":false},{"functionName":"encodeInto","ranges":[{"startOffset":9225,"endOffset":9535,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9539,"endOffset":9934,"count":0}],"isBlockCoverage":false},{"functionName":"makeTextDecoderICU","ranges":[{"startOffset":10305,"endOffset":11966,"count":1}],"isBlockCoverage":true},{"functionName":"TextDecoder","ranges":[{"startOffset":10443,"endOffset":11170,"count":1},{"startOffset":10675,"endOffset":10722,"count":0},{"startOffset":10806,"endOffset":10829,"count":0},{"startOffset":10870,"endOffset":10898,"count":0},{"startOffset":11000,"endOffset":11047,"count":0}],"isBlockCoverage":true},{"functionName":"decode","ranges":[{"startOffset":11177,"endOffset":11937,"count":19},{"startOffset":11279,"endOffset":11330,"count":0},{"startOffset":11367,"endOffset":11546,"count":0},{"startOffset":11693,"endOffset":11696,"count":0},{"startOffset":11814,"endOffset":11896,"count":0}],"isBlockCoverage":true},{"functionName":"makeTextDecoderJS","ranges":[{"startOffset":11968,"endOffset":14509,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":14634,"endOffset":14715,"count":0}],"isBlockCoverage":false},{"functionName":"get fatal","ranges":[{"startOffset":14722,"endOffset":14849,"count":0}],"isBlockCoverage":false},{"functionName":"get ignoreBOM","ranges":[{"startOffset":14856,"endOffset":15011,"count":0}],"isBlockCoverage":false},{"functionName":"ObjectGetOwnPropertyDescriptors","ranges":[{"startOffset":15018,"endOffset":15632,"count":0}],"isBlockCoverage":false}]},{"scriptId":"35","url":"timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8324,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1797,"endOffset":1822,"count":1}],"isBlockCoverage":true},{"functionName":"unenroll","ranges":[{"startOffset":2319,"endOffset":3503,"count":38},{"startOffset":2372,"endOffset":2379,"count":0},{"startOffset":2439,"endOffset":2485,"count":0},{"startOffset":2576,"endOffset":2614,"count":0},{"startOffset":2620,"endOffset":2655,"count":0},{"startOffset":3049,"endOffset":3396,"count":8},{"startOffset":3230,"endOffset":3372,"count":4}],"isBlockCoverage":true},{"functionName":"enroll","ranges":[{"startOffset":3710,"endOffset":3963,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":3994,"endOffset":4639,"count":887},{"startOffset":4149,"endOffset":4156,"count":879},{"startOffset":4186,"endOffset":4227,"count":0},{"startOffset":4232,"endOffset":4279,"count":0},{"startOffset":4284,"endOffset":4505,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":4716,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"clearTimeout","ranges":[{"startOffset":4856,"endOffset":5222,"count":218},{"startOffset":4899,"endOffset":4918,"count":68},{"startOffset":4920,"endOffset":4987,"count":38},{"startOffset":4987,"endOffset":5048,"count":180},{"startOffset":5050,"endOffset":5220,"count":0}],"isBlockCoverage":true},{"functionName":"setInterval","ranges":[{"startOffset":5224,"endOffset":5871,"count":0}],"isBlockCoverage":false},{"functionName":"clearInterval","ranges":[{"startOffset":5873,"endOffset":6171,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.close","ranges":[{"startOffset":6199,"endOffset":6250,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.","ranges":[{"startOffset":6292,"endOffset":6453,"count":0}],"isBlockCoverage":false},{"functionName":"setImmediate","ranges":[{"startOffset":6456,"endOffset":6997,"count":95},{"startOffset":6606,"endOffset":6626,"count":35},{"startOffset":6631,"endOffset":6672,"count":60},{"startOffset":6677,"endOffset":6724,"count":0},{"startOffset":6729,"endOffset":6950,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":7076,"endOffset":7212,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":7219,"endOffset":7685,"count":0}],"isBlockCoverage":false}]},{"scriptId":"36","url":"internal/linkedlist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1112,"count":1}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":15,"endOffset":88,"count":0}],"isBlockCoverage":false},{"functionName":"peek","ranges":[{"startOffset":118,"endOffset":210,"count":1145},{"startOffset":171,"endOffset":183,"count":3},{"startOffset":183,"endOffset":209,"count":1142}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":245,"endOffset":472,"count":1834}],"isBlockCoverage":true},{"functionName":"append","ranges":[{"startOffset":528,"endOffset":980,"count":917},{"startOffset":579,"endOffset":596,"count":0}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":982,"endOffset":1042,"count":8}],"isBlockCoverage":true}]},{"scriptId":"37","url":"internal/timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18495,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4398,"endOffset":4423,"count":1}],"isBlockCoverage":true},{"functionName":"initAsyncResource","ranges":[{"startOffset":5366,"endOffset":5644,"count":1012},{"startOffset":5592,"endOffset":5642,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout","ranges":[{"startOffset":5729,"endOffset":6726,"count":917},{"startOffset":5852,"endOffset":5875,"count":38},{"startOffset":5878,"endOffset":6214,"count":879},{"startOffset":5909,"endOffset":6144,"count":0},{"startOffset":6551,"endOffset":6558,"count":0},{"startOffset":6614,"endOffset":6628,"count":887}],"isBlockCoverage":true},{"functionName":"Timeout.","ranges":[{"startOffset":6839,"endOffset":7010,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.refresh","ranges":[{"startOffset":7041,"endOffset":7139,"count":139},{"startOffset":7078,"endOffset":7091,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout.unref","ranges":[{"startOffset":7168,"endOffset":7296,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.ref","ranges":[{"startOffset":7323,"endOffset":7451,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.hasRef","ranges":[{"startOffset":7481,"endOffset":7518,"count":0}],"isBlockCoverage":false},{"functionName":"TimersList","ranges":[{"startOffset":7521,"endOffset":7821,"count":8}],"isBlockCoverage":true},{"functionName":"TimersList.","ranges":[{"startOffset":7937,"endOffset":8108,"count":0}],"isBlockCoverage":false},{"functionName":"ImmediateList","ranges":[{"startOffset":8166,"endOffset":8234,"count":2}],"isBlockCoverage":true},{"functionName":"ImmediateList.append","ranges":[{"startOffset":8413,"endOffset":8580,"count":95},{"startOffset":8456,"endOffset":8525,"count":64},{"startOffset":8525,"endOffset":8558,"count":31}],"isBlockCoverage":true},{"functionName":"ImmediateList.remove","ranges":[{"startOffset":8758,"endOffset":9095,"count":0}],"isBlockCoverage":false},{"functionName":"incRefCount","ranges":[{"startOffset":9098,"endOffset":9174,"count":887},{"startOffset":9151,"endOffset":9172,"count":1}],"isBlockCoverage":true},{"functionName":"decRefCount","ranges":[{"startOffset":9176,"endOffset":9253,"count":8},{"startOffset":9229,"endOffset":9251,"count":1}],"isBlockCoverage":true},{"functionName":"active","ranges":[{"startOffset":9336,"endOffset":9390,"count":0}],"isBlockCoverage":false},{"functionName":"unrefActive","ranges":[{"startOffset":9537,"endOffset":9597,"count":139}],"isBlockCoverage":true},{"functionName":"insertGuarded","ranges":[{"startOffset":9818,"endOffset":10334,"count":139},{"startOffset":9914,"endOffset":9936,"count":0},{"startOffset":9949,"endOffset":10064,"count":0},{"startOffset":10066,"endOffset":10333,"count":0}],"isBlockCoverage":true},{"functionName":"insert","ranges":[{"startOffset":10336,"endOffset":10987,"count":917},{"startOffset":10659,"endOffset":10960,"count":8},{"startOffset":10894,"endOffset":10956,"count":6}],"isBlockCoverage":true},{"functionName":"setUnrefTimeout","ranges":[{"startOffset":10989,"endOffset":11295,"count":30},{"startOffset":11116,"endOffset":11167,"count":0}],"isBlockCoverage":true},{"functionName":"getTimerDuration","ranges":[{"startOffset":11362,"endOffset":11884,"count":60},{"startOffset":11471,"endOffset":11553,"count":0},{"startOffset":11628,"endOffset":11865,"count":0}],"isBlockCoverage":true},{"functionName":"compareTimersLists","ranges":[{"startOffset":11886,"endOffset":12091,"count":545},{"startOffset":11988,"endOffset":12068,"count":0}],"isBlockCoverage":true},{"functionName":"setPosition","ranges":[{"startOffset":12093,"endOffset":12164,"count":291}],"isBlockCoverage":true},{"functionName":"getTimerCallbacks","ranges":[{"startOffset":12166,"endOffset":17263,"count":1}],"isBlockCoverage":true},{"functionName":"processImmediate","ranges":[{"startOffset":12478,"endOffset":14279,"count":31},{"startOffset":12557,"endOffset":12581,"count":0},{"startOffset":12974,"endOffset":14162,"count":95},{"startOffset":13018,"endOffset":13033,"count":64},{"startOffset":13033,"endOffset":13083,"count":31},{"startOffset":13350,"endOffset":13446,"count":0},{"startOffset":13851,"endOffset":13876,"count":35},{"startOffset":13876,"endOffset":13932,"count":60},{"startOffset":14034,"endOffset":14055,"count":0},{"startOffset":14206,"endOffset":14235,"count":0}],"isBlockCoverage":true},{"functionName":"processTimers","ranges":[{"startOffset":14284,"endOffset":14758,"count":266},{"startOffset":14474,"endOffset":14740,"count":532},{"startOffset":14505,"endOffset":14604,"count":266},{"startOffset":14582,"endOffset":14595,"count":0},{"startOffset":14604,"endOffset":14642,"count":266},{"startOffset":14642,"endOffset":14657,"count":0},{"startOffset":14657,"endOffset":14740,"count":266},{"startOffset":14740,"endOffset":14757,"count":0}],"isBlockCoverage":true},{"functionName":"listOnTimeout","ranges":[{"startOffset":14762,"endOffset":17204,"count":266},{"startOffset":14955,"endOffset":16659,"count":1142},{"startOffset":15176,"endOffset":15404,"count":263},{"startOffset":15404,"endOffset":15444,"count":879},{"startOffset":15444,"endOffset":15459,"count":613},{"startOffset":15459,"endOffset":15505,"count":266},{"startOffset":15505,"endOffset":15661,"count":879},{"startOffset":15661,"endOffset":15890,"count":0},{"startOffset":15890,"endOffset":16009,"count":879},{"startOffset":16009,"endOffset":16031,"count":0},{"startOffset":16031,"endOffset":16145,"count":879},{"startOffset":16145,"endOffset":16195,"count":0},{"startOffset":16204,"endOffset":16626,"count":879},{"startOffset":16240,"endOffset":16268,"count":0},{"startOffset":16270,"endOffset":16379,"count":0},{"startOffset":16587,"endOffset":16608,"count":0},{"startOffset":16626,"endOffset":16659,"count":879},{"startOffset":16659,"endOffset":17200,"count":3}],"isBlockCoverage":true},{"functionName":"Immediate","ranges":[{"startOffset":17285,"endOffset":17607,"count":95}],"isBlockCoverage":true},{"functionName":"ref","ranges":[{"startOffset":17611,"endOffset":17784,"count":95},{"startOffset":17732,"endOffset":17757,"count":31}],"isBlockCoverage":true},{"functionName":"unref","ranges":[{"startOffset":17788,"endOffset":17964,"count":0}],"isBlockCoverage":false},{"functionName":"hasRef","ranges":[{"startOffset":17968,"endOffset":18009,"count":0}],"isBlockCoverage":false}]},{"scriptId":"38","url":"internal/priority_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2924,"count":1}],"isBlockCoverage":false},{"functionName":"PriorityQueue","ranges":[{"startOffset":570,"endOffset":811,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":815,"endOffset":855,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":859,"endOffset":1044,"count":8},{"startOffset":995,"endOffset":1012,"count":0}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":1048,"endOffset":1087,"count":532}],"isBlockCoverage":true},{"functionName":"percolateDown","ranges":[{"startOffset":1091,"endOffset":1759,"count":270},{"startOffset":1309,"endOffset":1668,"count":268},{"startOffset":1375,"endOffset":1422,"count":266},{"startOffset":1537,"endOffset":1543,"count":265},{"startOffset":1543,"endOffset":1668,"count":3}],"isBlockCoverage":true},{"functionName":"percolateUp","ranges":[{"startOffset":1763,"endOffset":2254,"count":8},{"startOffset":1941,"endOffset":2163,"count":10},{"startOffset":2029,"endOffset":2035,"count":0}],"isBlockCoverage":true},{"functionName":"removeAt","ranges":[{"startOffset":2258,"endOffset":2591,"count":7},{"startOffset":2454,"endOffset":2505,"count":1},{"startOffset":2515,"endOffset":2537,"count":0}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":2595,"endOffset":2761,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":2765,"endOffset":2920,"count":3},{"startOffset":2867,"endOffset":2874,"count":0}],"isBlockCoverage":true}]},{"scriptId":"39","url":"internal/util/debuglog.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2815,"count":1}],"isBlockCoverage":false},{"functionName":"initializeDebugEnv","ranges":[{"startOffset":500,"endOffset":873,"count":1},{"startOffset":591,"endOffset":790,"count":0}],"isBlockCoverage":true},{"functionName":"emitWarningIfNeeded","ranges":[{"startOffset":947,"endOffset":1272,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":1274,"endOffset":1292,"count":5269}],"isBlockCoverage":true},{"functionName":"debuglogImpl","ranges":[{"startOffset":1294,"endOffset":1859,"count":10},{"startOffset":1369,"endOffset":1831,"count":6},{"startOffset":1388,"endOffset":1784,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":1477,"endOffset":1777,"count":0}],"isBlockCoverage":false},{"functionName":"debuglog","ranges":[{"startOffset":2079,"endOffset":2758,"count":14}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":2110,"endOffset":2206,"count":10}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":2221,"endOffset":2458,"count":10}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":2488,"endOffset":2557,"count":0}],"isBlockCoverage":false},{"functionName":"logger","ranges":[{"startOffset":2576,"endOffset":2603,"count":10}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2653,"endOffset":2687,"count":0}],"isBlockCoverage":false}]},{"scriptId":"40","url":"internal/process/execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6944,"count":1}],"isBlockCoverage":false},{"functionName":"tryGetCwd","ranges":[{"startOffset":526,"endOffset":856,"count":1},{"startOffset":587,"endOffset":854,"count":0}],"isBlockCoverage":true},{"functionName":"evalModule","ranges":[{"startOffset":858,"endOffset":1298,"count":0}],"isBlockCoverage":false},{"functionName":"evalScript","ranges":[{"startOffset":1300,"endOffset":2682,"count":0}],"isBlockCoverage":false},{"functionName":"setUncaughtExceptionCaptureCallback","ranges":[{"startOffset":2759,"endOffset":3453,"count":0}],"isBlockCoverage":false},{"functionName":"hasUncaughtExceptionCaptureCallback","ranges":[{"startOffset":3455,"endOffset":3556,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":3558,"endOffset":3576,"count":0}],"isBlockCoverage":false},{"functionName":"createOnGlobalUncaughtException","ranges":[{"startOffset":4119,"endOffset":6518,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4388,"endOffset":6515,"count":0}],"isBlockCoverage":false},{"functionName":"readStdin","ranges":[{"startOffset":6520,"endOffset":6725,"count":0}],"isBlockCoverage":false}]},{"scriptId":"41","url":"internal/process/warning.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4833,"count":1}],"isBlockCoverage":false},{"functionName":"lazyOption","ranges":[{"startOffset":277,"endOffset":831,"count":0}],"isBlockCoverage":false},{"functionName":"writeOut","ranges":[{"startOffset":932,"endOffset":1054,"count":0}],"isBlockCoverage":false},{"functionName":"writeToFile","ranges":[{"startOffset":1056,"endOffset":1440,"count":0}],"isBlockCoverage":false},{"functionName":"doEmitWarning","ranges":[{"startOffset":1442,"endOffset":1513,"count":0}],"isBlockCoverage":false},{"functionName":"onWarning","ranges":[{"startOffset":1552,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarning","ranges":[{"startOffset":2853,"endOffset":3997,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarningSync","ranges":[{"startOffset":3999,"endOffset":4093,"count":0}],"isBlockCoverage":false},{"functionName":"createWarningObject","ranges":[{"startOffset":4095,"endOffset":4762,"count":0}],"isBlockCoverage":false}]},{"scriptId":"42","url":"internal/bootstrap/switches/is_main_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6397,"count":1}],"isBlockCoverage":true},{"functionName":"process._startProfilerIdleNotifier","ranges":[{"startOffset":513,"endOffset":521,"count":0}],"isBlockCoverage":false},{"functionName":"process._stopProfilerIdleNotifier","ranges":[{"startOffset":559,"endOffset":567,"count":0}],"isBlockCoverage":false},{"functionName":"defineStream","ranges":[{"startOffset":570,"endOffset":717,"count":3}],"isBlockCoverage":true},{"functionName":"createWritableStdioStream","ranges":[{"startOffset":1278,"endOffset":2845,"count":2},{"startOffset":1562,"endOffset":1748,"count":0},{"startOffset":1754,"endOffset":1766,"count":0},{"startOffset":1771,"endOffset":2473,"count":0},{"startOffset":2479,"endOffset":2724,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":2667,"endOffset":2714,"count":0}],"isBlockCoverage":false},{"functionName":"dummyDestroy","ranges":[{"startOffset":2847,"endOffset":3230,"count":0}],"isBlockCoverage":false},{"functionName":"getStdout","ranges":[{"startOffset":3268,"endOffset":3599,"count":66},{"startOffset":3305,"endOffset":3319,"count":65},{"startOffset":3319,"endOffset":3598,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3547,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"getStderr","ranges":[{"startOffset":3601,"endOffset":3932,"count":150},{"startOffset":3638,"endOffset":3652,"count":149},{"startOffset":3652,"endOffset":3931,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3880,"endOffset":3907,"count":0}],"isBlockCoverage":false},{"functionName":"getStdin","ranges":[{"startOffset":3934,"endOffset":6253,"count":0}],"isBlockCoverage":false},{"functionName":"rawMethods.resetStdioForTesting","ranges":[{"startOffset":6316,"endOffset":6395,"count":0}],"isBlockCoverage":false}]},{"scriptId":"43","url":"internal/process/signal.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1124,"count":1}],"isBlockCoverage":false},{"functionName":"isSignal","ranges":[{"startOffset":205,"endOffset":301,"count":5}],"isBlockCoverage":true},{"functionName":"startListeningIfSignal","ranges":[{"startOffset":365,"endOffset":853,"count":5},{"startOffset":426,"endOffset":451,"count":2},{"startOffset":453,"endOffset":851,"count":1},{"startOffset":734,"endOffset":813,"count":0}],"isBlockCoverage":true},{"functionName":"stopListeningIfSignal","ranges":[{"startOffset":855,"endOffset":1050,"count":1},{"startOffset":957,"endOffset":993,"count":0},{"startOffset":995,"endOffset":1048,"count":0}],"isBlockCoverage":true}]},{"scriptId":"44","url":"internal/bootstrap/switches/does_own_process_state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3523,"count":1}],"isBlockCoverage":true},{"functionName":"wrapPosixCredentialSetters","ranges":[{"startOffset":817,"endOffset":2957,"count":1}],"isBlockCoverage":true},{"functionName":"initgroups","ranges":[{"startOffset":1278,"endOffset":1695,"count":0}],"isBlockCoverage":false},{"functionName":"setgroups","ranges":[{"startOffset":1699,"endOffset":2179,"count":0}],"isBlockCoverage":false},{"functionName":"wrapIdSetter","ranges":[{"startOffset":2183,"endOffset":2508,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2232,"endOffset":2503,"count":0}],"isBlockCoverage":false},{"functionName":"validateId","ranges":[{"startOffset":2512,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedChdir","ranges":[{"startOffset":3108,"endOffset":3279,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedUmask","ranges":[{"startOffset":3281,"endOffset":3417,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedCwd","ranges":[{"startOffset":3419,"endOffset":3522,"count":3},{"startOffset":3471,"endOffset":3500,"count":1}],"isBlockCoverage":true}]},{"scriptId":"45","url":"internal/main/run_main_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":632,"count":1}],"isBlockCoverage":true}]},{"scriptId":"46","url":"internal/bootstrap/pre_execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15185,"count":1}],"isBlockCoverage":true},{"functionName":"prepareMainThreadExecution","ranges":[{"startOffset":410,"endOffset":2164,"count":1}],"isBlockCoverage":true},{"functionName":"patchProcessObject","ranges":[{"startOffset":2166,"endOffset":3743,"count":1},{"startOffset":2762,"endOffset":2770,"count":0}],"isBlockCoverage":true},{"functionName":"addReadOnlyProcessAlias","ranges":[{"startOffset":3745,"endOffset":4002,"count":13},{"startOffset":3866,"endOffset":4000,"count":1}],"isBlockCoverage":true},{"functionName":"setupWarningHandler","ranges":[{"startOffset":4004,"endOffset":4233,"count":1}],"isBlockCoverage":true},{"functionName":"setupCoverageHooks","ranges":[{"startOffset":4345,"endOffset":5022,"count":1},{"startOffset":4815,"endOffset":4992,"count":0}],"isBlockCoverage":true},{"functionName":"setupStacktracePrinterOnSigint","ranges":[{"startOffset":5024,"endOffset":5249,"count":1},{"startOffset":5126,"endOffset":5248,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReport","ranges":[{"startOffset":5251,"endOffset":5475,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5433,"endOffset":5467,"count":0}],"isBlockCoverage":false},{"functionName":"setupDebugEnv","ranges":[{"startOffset":5477,"endOffset":5709,"count":1},{"startOffset":5628,"endOffset":5707,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReportSignalHandlers","ranges":[{"startOffset":5771,"endOffset":5906,"count":1}],"isBlockCoverage":true},{"functionName":"initializeHeapSnapshotSignalHandlers","ranges":[{"startOffset":5908,"endOffset":6215,"count":1},{"startOffset":6043,"endOffset":6214,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6175,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"setupTraceCategoryState","ranges":[{"startOffset":6217,"endOffset":6476,"count":1}],"isBlockCoverage":true},{"functionName":"setupInspectorHooks","ranges":[{"startOffset":6478,"endOffset":7059,"count":1}],"isBlockCoverage":true},{"functionName":"initializeDeprecations","ranges":[{"startOffset":7254,"endOffset":9775,"count":1},{"startOffset":7965,"endOffset":8267,"count":16},{"startOffset":8010,"endOffset":8242,"count":0},{"startOffset":8584,"endOffset":8757,"count":0},{"startOffset":8785,"endOffset":9179,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":9428,"endOffset":9464,"count":67}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9470,"endOffset":9512,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9638,"endOffset":9673,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9679,"endOffset":9720,"count":0}],"isBlockCoverage":false},{"functionName":"initializeAbortController","ranges":[{"startOffset":9777,"endOffset":10345,"count":1},{"startOffset":9915,"endOffset":10343,"count":0}],"isBlockCoverage":true},{"functionName":"setupChildProcessIpcChannel","ranges":[{"startOffset":10347,"endOffset":10912,"count":1},{"startOffset":10423,"endOffset":10910,"count":0}],"isBlockCoverage":true},{"functionName":"initializeClusterIPC","ranges":[{"startOffset":10914,"endOffset":11184,"count":1},{"startOffset":11001,"endOffset":11182,"count":0}],"isBlockCoverage":true},{"functionName":"initializePolicy","ranges":[{"startOffset":11186,"endOffset":13010,"count":1},{"startOffset":11312,"endOffset":13008,"count":0}],"isBlockCoverage":true},{"functionName":"initializeWASI","ranges":[{"startOffset":13012,"endOffset":13241,"count":1}],"isBlockCoverage":true},{"functionName":"initializeCJSLoader","ranges":[{"startOffset":13243,"endOffset":13529,"count":1}],"isBlockCoverage":true},{"functionName":"initializeESMLoader","ranges":[{"startOffset":13531,"endOffset":14199,"count":1},{"startOffset":13740,"endOffset":13747,"count":0}],"isBlockCoverage":true},{"functionName":"initializeFrozenIntrinsics","ranges":[{"startOffset":14201,"endOffset":14458,"count":1},{"startOffset":14286,"endOffset":14456,"count":0}],"isBlockCoverage":true},{"functionName":"loadPreloadModules","ranges":[{"startOffset":14460,"endOffset":14807,"count":1},{"startOffset":14654,"endOffset":14805,"count":0}],"isBlockCoverage":true}]},{"scriptId":"47","url":"internal/options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":898,"count":1}],"isBlockCoverage":false},{"functionName":"getOptionValue","ranges":[{"startOffset":175,"endOffset":314,"count":217},{"startOffset":262,"endOffset":289,"count":1},{"startOffset":289,"endOffset":313,"count":216}],"isBlockCoverage":true},{"functionName":"getAllowUnauthorized","ranges":[{"startOffset":316,"endOffset":781,"count":30},{"startOffset":453,"endOffset":479,"count":0},{"startOffset":481,"endOffset":751,"count":0}],"isBlockCoverage":true}]},{"scriptId":"48","url":"internal/inspector_async_hook.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1972,"count":1}],"isBlockCoverage":false},{"functionName":"lazyHookCreation","ranges":[{"startOffset":75,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"enable","ranges":[{"startOffset":1259,"endOffset":1840,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":1842,"endOffset":1928,"count":0}],"isBlockCoverage":false}]},{"scriptId":"49","url":"internal/source_map/source_map_cache.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8419,"count":1}],"isBlockCoverage":false},{"functionName":"ObjectGetValueSafe","ranges":[{"startOffset":305,"endOffset":483,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":665,"endOffset":690,"count":0}],"isBlockCoverage":false},{"functionName":"getSourceMapsEnabled","ranges":[{"startOffset":1236,"endOffset":1740,"count":189},{"startOffset":1309,"endOffset":1710,"count":1},{"startOffset":1402,"endOffset":1706,"count":0}],"isBlockCoverage":true},{"functionName":"maybeCacheSourceMap","ranges":[{"startOffset":1742,"endOffset":2852,"count":103},{"startOffset":1900,"endOffset":1920,"count":0},{"startOffset":1923,"endOffset":1930,"count":0},{"startOffset":1990,"endOffset":2128,"count":0},{"startOffset":2232,"endOffset":2850,"count":0}],"isBlockCoverage":true},{"functionName":"dataFromUrl","ranges":[{"startOffset":2854,"endOffset":3380,"count":0}],"isBlockCoverage":false},{"functionName":"lineLengths","ranges":[{"startOffset":3570,"endOffset":3878,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromFile","ranges":[{"startOffset":3880,"endOffset":4136,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromDataUrl","ranges":[{"startOffset":4230,"endOffset":4867,"count":0}],"isBlockCoverage":false},{"functionName":"sourcesToAbsolute","ranges":[{"startOffset":5052,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"rekeySourceMap","ranges":[{"startOffset":5448,"endOffset":5643,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapCacheToObject","ranges":[{"startOffset":6081,"endOffset":6450,"count":0}],"isBlockCoverage":false},{"functionName":"appendCJSCache","ranges":[{"startOffset":6689,"endOffset":7344,"count":0}],"isBlockCoverage":false},{"functionName":"findSourceMap","ranges":[{"startOffset":7562,"endOffset":8287,"count":0}],"isBlockCoverage":false}]},{"scriptId":"50","url":"fs.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":59762,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3694,"endOffset":3854,"count":0}],"isBlockCoverage":false},{"functionName":"showTruncateDeprecation","ranges":[{"startOffset":4089,"endOffset":4376,"count":0}],"isBlockCoverage":false},{"functionName":"maybeCallback","ranges":[{"startOffset":4378,"endOffset":4494,"count":0}],"isBlockCoverage":false},{"functionName":"makeCallback","ranges":[{"startOffset":4697,"endOffset":4840,"count":0}],"isBlockCoverage":false},{"functionName":"makeStatsCallback","ranges":[{"startOffset":5021,"endOffset":5236,"count":0}],"isBlockCoverage":false},{"functionName":"isFileType","ranges":[{"startOffset":5262,"endOffset":5522,"count":2082},{"startOffset":5461,"endOffset":5481,"count":180}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":5524,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"accessSync","ranges":[{"startOffset":5884,"endOffset":6122,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6124,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6435,"endOffset":6513,"count":0}],"isBlockCoverage":false},{"functionName":"existsSync","ranges":[{"startOffset":6930,"endOffset":7460,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterOpen","ranges":[{"startOffset":7462,"endOffset":7742,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterStat","ranges":[{"startOffset":7744,"endOffset":8245,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":8247,"endOffset":9263,"count":0}],"isBlockCoverage":false},{"functionName":"tryStatSync","ranges":[{"startOffset":9265,"endOffset":9495,"count":88},{"startOffset":9408,"endOffset":9420,"count":0},{"startOffset":9422,"endOffset":9477,"count":0}],"isBlockCoverage":true},{"functionName":"tryCreateBuffer","ranges":[{"startOffset":9497,"endOffset":9808,"count":88},{"startOffset":9615,"endOffset":9667,"count":0},{"startOffset":9754,"endOffset":9766,"count":0},{"startOffset":9768,"endOffset":9785,"count":0}],"isBlockCoverage":true},{"functionName":"tryReadSync","ranges":[{"startOffset":9810,"endOffset":10065,"count":88},{"startOffset":10008,"endOffset":10020,"count":0},{"startOffset":10022,"endOffset":10039,"count":0}],"isBlockCoverage":true},{"functionName":"readFileSync","ranges":[{"startOffset":10067,"endOffset":11450,"count":88},{"startOffset":10236,"endOffset":10242,"count":0},{"startOffset":10382,"endOffset":10385,"count":0},{"startOffset":10515,"endOffset":10538,"count":0},{"startOffset":10790,"endOffset":11144,"count":0},{"startOffset":11204,"endOffset":11300,"count":0},{"startOffset":11322,"endOffset":11362,"count":0},{"startOffset":11388,"endOffset":11431,"count":85}],"isBlockCoverage":true},{"functionName":"defaultCloseCallback","ranges":[{"startOffset":11452,"endOffset":11520,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":11522,"endOffset":11778,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":11780,"endOffset":11923,"count":88}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11925,"endOffset":12502,"count":0}],"isBlockCoverage":false},{"functionName":"openSync","ranges":[{"startOffset":12505,"endOffset":12901,"count":88}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":13008,"endOffset":14506,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":14775,"endOffset":15690,"count":88},{"startOffset":14893,"endOffset":15042,"count":0},{"startOffset":15093,"endOffset":15114,"count":0},{"startOffset":15202,"endOffset":15221,"count":0},{"startOffset":15254,"endOffset":15384,"count":0}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":15692,"endOffset":16122,"count":0}],"isBlockCoverage":false},{"functionName":"readvSync","ranges":[{"startOffset":16265,"endOffset":16575,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":16721,"endOffset":17989,"count":0}],"isBlockCoverage":false},{"functionName":"writeSync","ranges":[{"startOffset":18266,"endOffset":19132,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":19193,"endOffset":19621,"count":0}],"isBlockCoverage":false},{"functionName":"writevSync","ranges":[{"startOffset":19750,"endOffset":20063,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":20065,"endOffset":20446,"count":0}],"isBlockCoverage":false},{"functionName":"renameSync","ranges":[{"startOffset":20448,"endOffset":20795,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":20797,"endOffset":21415,"count":0}],"isBlockCoverage":false},{"functionName":"truncateSync","ranges":[{"startOffset":21417,"endOffset":21820,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":21822,"endOffset":22162,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncateSync","ranges":[{"startOffset":22164,"endOffset":22384,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadRimraf","ranges":[{"startOffset":22387,"endOffset":22506,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":22508,"endOffset":23148,"count":0}],"isBlockCoverage":false},{"functionName":"rmdirSync","ranges":[{"startOffset":23150,"endOffset":23588,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":23590,"endOffset":23928,"count":0}],"isBlockCoverage":false},{"functionName":"rmSync","ranges":[{"startOffset":23930,"endOffset":24100,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":24102,"endOffset":24276,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasyncSync","ranges":[{"startOffset":24278,"endOffset":24428,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":24430,"endOffset":24596,"count":0}],"isBlockCoverage":false},{"functionName":"fsyncSync","ranges":[{"startOffset":24598,"endOffset":24740,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":24742,"endOffset":25523,"count":0}],"isBlockCoverage":false},{"functionName":"mkdirSync","ranges":[{"startOffset":25525,"endOffset":26297,"count":0}],"isBlockCoverage":false},{"functionName":"readdir","ranges":[{"startOffset":26299,"endOffset":26880,"count":0}],"isBlockCoverage":false},{"functionName":"readdirSync","ranges":[{"startOffset":26882,"endOffset":27308,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":27310,"endOffset":27649,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":27651,"endOffset":28026,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":28028,"endOffset":28401,"count":0}],"isBlockCoverage":false},{"functionName":"hasNoEntryError","ranges":[{"startOffset":28403,"endOffset":28625,"count":0}],"isBlockCoverage":false},{"functionName":"fstatSync","ranges":[{"startOffset":28627,"endOffset":28891,"count":0}],"isBlockCoverage":false},{"functionName":"lstatSync","ranges":[{"startOffset":28893,"endOffset":29317,"count":0}],"isBlockCoverage":false},{"functionName":"statSync","ranges":[{"startOffset":29319,"endOffset":29740,"count":116},{"startOffset":29618,"endOffset":29641,"count":0},{"startOffset":29643,"endOffset":29670,"count":0}],"isBlockCoverage":true},{"functionName":"readlink","ranges":[{"startOffset":29742,"endOffset":30090,"count":0}],"isBlockCoverage":false},{"functionName":"readlinkSync","ranges":[{"startOffset":30092,"endOffset":30423,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":30425,"endOffset":32035,"count":0}],"isBlockCoverage":false},{"functionName":"symlinkSync","ranges":[{"startOffset":32037,"endOffset":32694,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":32696,"endOffset":33097,"count":0}],"isBlockCoverage":false},{"functionName":"linkSync","ranges":[{"startOffset":33099,"endOffset":33548,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":33550,"endOffset":33777,"count":0}],"isBlockCoverage":false},{"functionName":"unlinkSync","ranges":[{"startOffset":33779,"endOffset":33965,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":33967,"endOffset":34209,"count":0}],"isBlockCoverage":false},{"functionName":"fchmodSync","ranges":[{"startOffset":34211,"endOffset":34405,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":34407,"endOffset":34844,"count":0}],"isBlockCoverage":false},{"functionName":"lchmodSync","ranges":[{"startOffset":34846,"endOffset":35168,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":35171,"endOffset":35447,"count":0}],"isBlockCoverage":false},{"functionName":"chmodSync","ranges":[{"startOffset":35449,"endOffset":35684,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":35686,"endOffset":36027,"count":0}],"isBlockCoverage":false},{"functionName":"lchownSync","ranges":[{"startOffset":36029,"endOffset":36329,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":36331,"endOffset":36637,"count":0}],"isBlockCoverage":false},{"functionName":"fchownSync","ranges":[{"startOffset":36639,"endOffset":36898,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":36900,"endOffset":37240,"count":0}],"isBlockCoverage":false},{"functionName":"chownSync","ranges":[{"startOffset":37242,"endOffset":37540,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":37542,"endOffset":37883,"count":0}],"isBlockCoverage":false},{"functionName":"utimesSync","ranges":[{"startOffset":37885,"endOffset":38167,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":38169,"endOffset":38477,"count":0}],"isBlockCoverage":false},{"functionName":"futimesSync","ranges":[{"startOffset":38479,"endOffset":38739,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":38741,"endOffset":39087,"count":0}],"isBlockCoverage":false},{"functionName":"lutimesSync","ranges":[{"startOffset":39089,"endOffset":39393,"count":0}],"isBlockCoverage":false},{"functionName":"writeAll","ranges":[{"startOffset":39395,"endOffset":40339,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":40341,"endOffset":41280,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileSync","ranges":[{"startOffset":41282,"endOffset":41992,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":41994,"endOffset":42434,"count":0}],"isBlockCoverage":false},{"functionName":"appendFileSync","ranges":[{"startOffset":42436,"endOffset":42815,"count":0}],"isBlockCoverage":false},{"functionName":"watch","ranges":[{"startOffset":42817,"endOffset":44050,"count":0}],"isBlockCoverage":false},{"functionName":"watchFile","ranges":[{"startOffset":44086,"endOffset":45199,"count":0}],"isBlockCoverage":false},{"functionName":"unwatchFile","ranges":[{"startOffset":45201,"endOffset":45889,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46105,"endOffset":46171,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46196,"endOffset":46374,"count":112},{"startOffset":46263,"endOffset":46354,"count":224},{"startOffset":46325,"endOffset":46348,"count":112},{"startOffset":46354,"endOffset":46373,"count":0}],"isBlockCoverage":true},{"functionName":"encodeRealpathResult","ranges":[{"startOffset":46379,"endOffset":46666,"count":112},{"startOffset":46464,"endOffset":46494,"count":0},{"startOffset":46514,"endOffset":46665,"count":0}],"isBlockCoverage":true},{"functionName":"nextPart","ranges":[{"startOffset":46789,"endOffset":47032,"count":0}],"isBlockCoverage":false},{"functionName":"nextPart","ranges":[{"startOffset":47056,"endOffset":47109,"count":1087}],"isBlockCoverage":true},{"functionName":"realpathSync","ranges":[{"startOffset":47151,"endOffset":51017,"count":199},{"startOffset":47285,"endOffset":47303,"count":0},{"startOffset":47472,"endOffset":47507,"count":87},{"startOffset":47507,"endOffset":48079,"count":112},{"startOffset":48079,"endOffset":48254,"count":0},{"startOffset":48254,"endOffset":48391,"count":112},{"startOffset":48391,"endOffset":50934,"count":1087},{"startOffset":48503,"endOffset":48618,"count":112},{"startOffset":48618,"endOffset":48744,"count":975},{"startOffset":48867,"endOffset":49004,"count":907},{"startOffset":48958,"endOffset":48982,"count":0},{"startOffset":49004,"endOffset":49084,"count":180},{"startOffset":49115,"endOffset":49164,"count":0},{"startOffset":49164,"endOffset":50448,"count":180},{"startOffset":49617,"endOffset":50442,"count":0},{"startOffset":50448,"endOffset":50743,"count":0},{"startOffset":50745,"endOffset":50930,"count":0},{"startOffset":50934,"endOffset":51016,"count":112}],"isBlockCoverage":true},{"functionName":"realpathSync.native","ranges":[{"startOffset":51042,"endOffset":51281,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":51285,"endOffset":54720,"count":0}],"isBlockCoverage":false},{"functionName":"realpath.native","ranges":[{"startOffset":54741,"endOffset":55011,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":55014,"endOffset":55485,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtempSync","ranges":[{"startOffset":55488,"endOffset":55962,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":55965,"endOffset":56519,"count":0}],"isBlockCoverage":false},{"functionName":"copyFileSync","ranges":[{"startOffset":56522,"endOffset":56894,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadStreams","ranges":[{"startOffset":56896,"endOffset":57090,"count":8},{"startOffset":56944,"endOffset":57088,"count":1}],"isBlockCoverage":true},{"functionName":"createReadStream","ranges":[{"startOffset":57092,"endOffset":57197,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteStream","ranges":[{"startOffset":57199,"endOffset":57306,"count":0}],"isBlockCoverage":false},{"functionName":"get ReadStream","ranges":[{"startOffset":58529,"endOffset":58597,"count":2}],"isBlockCoverage":true},{"functionName":"set ReadStream","ranges":[{"startOffset":58602,"endOffset":58649,"count":0}],"isBlockCoverage":false},{"functionName":"get WriteStream","ranges":[{"startOffset":58654,"endOffset":58724,"count":2}],"isBlockCoverage":true},{"functionName":"set WriteStream","ranges":[{"startOffset":58729,"endOffset":58778,"count":0}],"isBlockCoverage":false},{"functionName":"get FileReadStream","ranges":[{"startOffset":58916,"endOffset":58992,"count":2}],"isBlockCoverage":true},{"functionName":"set FileReadStream","ranges":[{"startOffset":58997,"endOffset":59052,"count":0}],"isBlockCoverage":false},{"functionName":"get FileWriteStream","ranges":[{"startOffset":59057,"endOffset":59135,"count":2}],"isBlockCoverage":true},{"functionName":"set FileWriteStream","ranges":[{"startOffset":59140,"endOffset":59197,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":59628,"endOffset":59753,"count":2},{"startOffset":59673,"endOffset":59724,"count":1}],"isBlockCoverage":true}]},{"scriptId":"51","url":"internal/fs/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":21731,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadFs","ranges":[{"startOffset":2496,"endOffset":2575,"count":0}],"isBlockCoverage":false},{"functionName":"assertEncoding","ranges":[{"startOffset":2577,"endOffset":2724,"count":284},{"startOffset":2628,"endOffset":2659,"count":85},{"startOffset":2661,"endOffset":2722,"count":0}],"isBlockCoverage":true},{"functionName":"Dirent","ranges":[{"startOffset":2743,"endOffset":2818,"count":0}],"isBlockCoverage":false},{"functionName":"isDirectory","ranges":[{"startOffset":2822,"endOffset":2883,"count":0}],"isBlockCoverage":false},{"functionName":"isFile","ranges":[{"startOffset":2887,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"isBlockDevice","ranges":[{"startOffset":2948,"endOffset":3013,"count":0}],"isBlockCoverage":false},{"functionName":"isCharacterDevice","ranges":[{"startOffset":3017,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbolicLink","ranges":[{"startOffset":3089,"endOffset":3154,"count":0}],"isBlockCoverage":false},{"functionName":"isFIFO","ranges":[{"startOffset":3158,"endOffset":3215,"count":0}],"isBlockCoverage":false},{"functionName":"isSocket","ranges":[{"startOffset":3219,"endOffset":3280,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats","ranges":[{"startOffset":3325,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats.","ranges":[{"startOffset":3549,"endOffset":3598,"count":0}],"isBlockCoverage":false},{"functionName":"copyObject","ranges":[{"startOffset":3603,"endOffset":3731,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":3781,"endOffset":4388,"count":0}],"isBlockCoverage":false},{"functionName":"getDirents","ranges":[{"startOffset":4390,"endOffset":5485,"count":0}],"isBlockCoverage":false},{"functionName":"getDirent","ranges":[{"startOffset":5487,"endOffset":6209,"count":0}],"isBlockCoverage":false},{"functionName":"getOptions","ranges":[{"startOffset":6211,"endOffset":6853,"count":306},{"startOffset":6306,"endOffset":6344,"count":284},{"startOffset":6346,"endOffset":6378,"count":22},{"startOffset":6378,"endOffset":6415,"count":284},{"startOffset":6415,"endOffset":6533,"count":85},{"startOffset":6533,"endOffset":6655,"count":199},{"startOffset":6572,"endOffset":6655,"count":0},{"startOffset":6655,"endOffset":6769,"count":284},{"startOffset":6769,"endOffset":6833,"count":0},{"startOffset":6833,"endOffset":6852,"count":284}],"isBlockCoverage":true},{"functionName":"handleErrorFromBinding","ranges":[{"startOffset":6855,"endOffset":7384,"count":560},{"startOffset":6925,"endOffset":7060,"count":20},{"startOffset":7060,"endOffset":7092,"count":540},{"startOffset":7092,"endOffset":7382,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7525,"endOffset":8078,"count":429},{"startOffset":7755,"endOffset":7775,"count":0},{"startOffset":7829,"endOffset":7877,"count":0},{"startOffset":7896,"endOffset":8077,"count":0}],"isBlockCoverage":true},{"functionName":"preprocessSymlinkDestination","ranges":[{"startOffset":8082,"endOffset":8766,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase","ranges":[{"startOffset":8799,"endOffset":9106,"count":116}],"isBlockCoverage":true},{"functionName":"StatsBase.isDirectory","ranges":[{"startOffset":9142,"endOffset":9199,"count":103}],"isBlockCoverage":true},{"functionName":"StatsBase.isFile","ranges":[{"startOffset":9231,"endOffset":9288,"count":88}],"isBlockCoverage":true},{"functionName":"StatsBase.isBlockDevice","ranges":[{"startOffset":9327,"endOffset":9384,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isCharacterDevice","ranges":[{"startOffset":9427,"endOffset":9484,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSymbolicLink","ranges":[{"startOffset":9524,"endOffset":9581,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isFIFO","ranges":[{"startOffset":9613,"endOffset":9670,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSocket","ranges":[{"startOffset":9704,"endOffset":9762,"count":0}],"isBlockCoverage":false},{"functionName":"msFromTimeSpec","ranges":[{"startOffset":9887,"endOffset":9969,"count":384}],"isBlockCoverage":true},{"functionName":"nsFromTimeSpecBigInt","ranges":[{"startOffset":9971,"endOffset":10054,"count":0}],"isBlockCoverage":false},{"functionName":"dateFromMs","ranges":[{"startOffset":10403,"endOffset":10467,"count":464}],"isBlockCoverage":true},{"functionName":"BigIntStats","ranges":[{"startOffset":10469,"endOffset":11205,"count":0}],"isBlockCoverage":false},{"functionName":"BigIntStats._checkModeProperty","ranges":[{"startOffset":11363,"endOffset":11609,"count":0}],"isBlockCoverage":false},{"functionName":"Stats","ranges":[{"startOffset":11612,"endOffset":12129,"count":116}],"isBlockCoverage":true},{"functionName":"Stats._checkModeProperty","ranges":[{"startOffset":12470,"endOffset":12700,"count":191},{"startOffset":12507,"endOffset":12585,"count":0},{"startOffset":12587,"endOffset":12654,"count":0}],"isBlockCoverage":true},{"functionName":"getStatsFromBinding","ranges":[{"startOffset":12703,"endOffset":13781,"count":96},{"startOffset":12784,"endOffset":13309,"count":0}],"isBlockCoverage":true},{"functionName":"stringToFlags","ranges":[{"startOffset":13783,"endOffset":14991,"count":107},{"startOffset":13848,"endOffset":13871,"count":0},{"startOffset":13894,"endOffset":13920,"count":0},{"startOffset":13977,"endOffset":13988,"count":0},{"startOffset":14010,"endOffset":14047,"count":0},{"startOffset":14052,"endOffset":14078,"count":0},{"startOffset":14083,"endOffset":14095,"count":0},{"startOffset":14117,"endOffset":14153,"count":0},{"startOffset":14159,"endOffset":14206,"count":0},{"startOffset":14211,"endOffset":14222,"count":0},{"startOffset":14244,"endOffset":14301,"count":0},{"startOffset":14307,"endOffset":14353,"count":0},{"startOffset":14358,"endOffset":14369,"count":0},{"startOffset":14391,"endOffset":14446,"count":0},{"startOffset":14452,"endOffset":14500,"count":0},{"startOffset":14505,"endOffset":14516,"count":0},{"startOffset":14538,"endOffset":14596,"count":0},{"startOffset":14601,"endOffset":14612,"count":0},{"startOffset":14634,"endOffset":14692,"count":0},{"startOffset":14698,"endOffset":14745,"count":0},{"startOffset":14750,"endOffset":14761,"count":0},{"startOffset":14783,"endOffset":14839,"count":0},{"startOffset":14844,"endOffset":14855,"count":0},{"startOffset":14877,"endOffset":14933,"count":0},{"startOffset":14937,"endOffset":14990,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15037,"endOffset":15397,"count":0}],"isBlockCoverage":false},{"functionName":"toUnixTimestamp","ranges":[{"startOffset":15459,"endOffset":15902,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15956,"endOffset":16335,"count":126},{"startOffset":16012,"endOffset":16079,"count":0},{"startOffset":16100,"endOffset":16167,"count":0},{"startOffset":16208,"endOffset":16331,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":16393,"endOffset":16667,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16709,"endOffset":16979,"count":429},{"startOffset":16771,"endOffset":16793,"count":0},{"startOffset":16795,"endOffset":16881,"count":0},{"startOffset":16957,"endOffset":16977,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17024,"endOffset":17159,"count":230}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17207,"endOffset":17538,"count":0}],"isBlockCoverage":false},{"functionName":"warnOnNonPortableTemplate","ranges":[{"startOffset":17579,"endOffset":18037,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18273,"endOffset":18893,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18943,"endOffset":19525,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":19577,"endOffset":20059,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20100,"endOffset":20678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20741,"endOffset":21113,"count":0}],"isBlockCoverage":false}]},{"scriptId":"52","url":"internal/fs/dir.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6714,"count":1}],"isBlockCoverage":false},{"functionName":"Dir","ranges":[{"startOffset":1109,"endOffset":1881,"count":0}],"isBlockCoverage":false},{"functionName":"get path","ranges":[{"startOffset":1885,"endOffset":1928,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":1932,"endOffset":1999,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2003,"endOffset":3375,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":3379,"endOffset":4135,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4139,"endOffset":4865,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":4869,"endOffset":5246,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":5250,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"opendir","ranges":[{"startOffset":5674,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"opendirSync","ranges":[{"startOffset":6301,"endOffset":6658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"53","url":"internal/modules/cjs/helpers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5427,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":681,"endOffset":706,"count":1}],"isBlockCoverage":true},{"functionName":"loadNativeModule","ranges":[{"startOffset":860,"endOffset":1066,"count":141},{"startOffset":964,"endOffset":1064,"count":55}],"isBlockCoverage":true},{"functionName":"makeRequireFunction","ranges":[{"startOffset":1315,"endOffset":3313,"count":84},{"startOffset":1429,"endOffset":2705,"count":0}],"isBlockCoverage":true},{"functionName":"require","ranges":[{"startOffset":1567,"endOffset":2700,"count":0}],"isBlockCoverage":false},{"functionName":"require","ranges":[{"startOffset":2727,"endOffset":2789,"count":217}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":2798,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"paths","ranges":[{"startOffset":2978,"endOffset":3100,"count":0}],"isBlockCoverage":false},{"functionName":"stripBOM","ranges":[{"startOffset":3498,"endOffset":3624,"count":1},{"startOffset":3567,"endOffset":3604,"count":0}],"isBlockCoverage":true},{"functionName":"addBuiltinLibsToObject","ranges":[{"startOffset":3626,"endOffset":5091,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeReferrerURL","ranges":[{"startOffset":5093,"endOffset":5281,"count":103},{"startOffset":5200,"endOffset":5246,"count":84},{"startOffset":5246,"endOffset":5280,"count":19}],"isBlockCoverage":true}]},{"scriptId":"54","url":"url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30124,"count":1}],"isBlockCoverage":false},{"functionName":"Url","ranges":[{"startOffset":1879,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"urlParse","ranges":[{"startOffset":3833,"endOffset":4047,"count":0}],"isBlockCoverage":false},{"functionName":"isIpv6Hostname","ranges":[{"startOffset":4049,"endOffset":4272,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":4296,"endOffset":13617,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname","ranges":[{"startOffset":13620,"endOffset":14345,"count":0}],"isBlockCoverage":false},{"functionName":"autoEscapeStr","ranges":[{"startOffset":15401,"endOffset":16107,"count":0}],"isBlockCoverage":false},{"functionName":"urlFormat","ranges":[{"startOffset":16153,"endOffset":16863,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":17570,"endOffset":20020,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolve","ranges":[{"startOffset":20023,"endOffset":20122,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":20148,"endOffset":20249,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolveObject","ranges":[{"startOffset":20252,"endOffset":20395,"count":0}],"isBlockCoverage":false},{"functionName":"resolveObject","ranges":[{"startOffset":20427,"endOffset":29546,"count":0}],"isBlockCoverage":false},{"functionName":"parseHost","ranges":[{"startOffset":29575,"endOffset":29848,"count":0}],"isBlockCoverage":false}]},{"scriptId":"55","url":"internal/idna.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":264,"count":1}],"isBlockCoverage":false}]},{"scriptId":"56","url":"internal/process/report.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2945,"count":1}],"isBlockCoverage":false},{"functionName":"writeReport","ranges":[{"startOffset":298,"endOffset":805,"count":0}],"isBlockCoverage":false},{"functionName":"getReport","ranges":[{"startOffset":809,"endOffset":1045,"count":0}],"isBlockCoverage":false},{"functionName":"get directory","ranges":[{"startOffset":1049,"endOffset":1100,"count":0}],"isBlockCoverage":false},{"functionName":"set directory","ranges":[{"startOffset":1104,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"get filename","ranges":[{"startOffset":1196,"endOffset":1245,"count":0}],"isBlockCoverage":false},{"functionName":"set filename","ranges":[{"startOffset":1249,"endOffset":1337,"count":0}],"isBlockCoverage":false},{"functionName":"get compact","ranges":[{"startOffset":1341,"endOffset":1388,"count":0}],"isBlockCoverage":false},{"functionName":"set compact","ranges":[{"startOffset":1392,"endOffset":1469,"count":0}],"isBlockCoverage":false},{"functionName":"get signal","ranges":[{"startOffset":1473,"endOffset":1518,"count":0}],"isBlockCoverage":false},{"functionName":"set signal","ranges":[{"startOffset":1522,"endOffset":1659,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnFatalError","ranges":[{"startOffset":1663,"endOffset":1735,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnFatalError","ranges":[{"startOffset":1739,"endOffset":1923,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnSignal","ranges":[{"startOffset":1927,"endOffset":1991,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnSignal","ranges":[{"startOffset":1995,"endOffset":2222,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnUncaughtException","ranges":[{"startOffset":2226,"endOffset":2312,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnUncaughtException","ranges":[{"startOffset":2316,"endOffset":2514,"count":0}],"isBlockCoverage":false},{"functionName":"addSignalHandler","ranges":[{"startOffset":2519,"endOffset":2690,"count":1},{"startOffset":2585,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"removeSignalHandler","ranges":[{"startOffset":2692,"endOffset":2816,"count":0}],"isBlockCoverage":false},{"functionName":"signalHandler","ranges":[{"startOffset":2818,"endOffset":2892,"count":0}],"isBlockCoverage":false}]},{"scriptId":"57","url":"internal/modules/cjs/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":38134,"count":1}],"isBlockCoverage":false},{"functionName":"get hasLoadedAnyUserCJSModule","ranges":[{"startOffset":1880,"endOffset":1949,"count":1}],"isBlockCoverage":true},{"functionName":"stat","ranges":[{"startOffset":4257,"endOffset":4574,"count":392},{"startOffset":4355,"endOffset":4449,"count":381},{"startOffset":4431,"endOffset":4445,"count":174},{"startOffset":4449,"endOffset":4523,"count":218},{"startOffset":4523,"endOffset":4555,"count":207},{"startOffset":4555,"endOffset":4573,"count":218}],"isBlockCoverage":true},{"functionName":"updateChildren","ranges":[{"startOffset":4576,"endOffset":4751,"count":180},{"startOffset":4649,"endOffset":4667,"count":168},{"startOffset":4684,"endOffset":4722,"count":168},{"startOffset":4694,"endOffset":4721,"count":88},{"startOffset":4728,"endOffset":4749,"count":167}],"isBlockCoverage":true},{"functionName":"Module","ranges":[{"startOffset":4753,"endOffset":4990,"count":86}],"isBlockCoverage":true},{"functionName":"wrap","ranges":[{"startOffset":5441,"endOffset":5518,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":5663,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"defineProperty","ranges":[{"startOffset":5790,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5970,"endOffset":5998,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6003,"endOffset":6057,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6107,"endOffset":6143,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6148,"endOffset":6210,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6275,"endOffset":6305,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6376,"endOffset":6401,"count":1}],"isBlockCoverage":true},{"functionName":"readPackage","ranges":[{"startOffset":6749,"endOffset":7559,"count":428},{"startOffset":6929,"endOffset":6945,"count":399},{"startOffset":6945,"endOffset":7043,"count":29},{"startOffset":7043,"endOffset":7049,"count":0},{"startOffset":7050,"endOffset":7065,"count":29},{"startOffset":7093,"endOffset":7159,"count":10},{"startOffset":7159,"endOffset":7442,"count":19},{"startOffset":7442,"endOffset":7557,"count":0}],"isBlockCoverage":true},{"functionName":"readPackageScope","ranges":[{"startOffset":7561,"endOffset":8104,"count":232},{"startOffset":7696,"endOffset":8041,"count":404},{"startOffset":7903,"endOffset":7916,"count":0},{"startOffset":7980,"endOffset":8037,"count":232},{"startOffset":8041,"endOffset":8103,"count":0}],"isBlockCoverage":true},{"functionName":"tryPackage","ranges":[{"startOffset":8106,"endOffset":9407,"count":12},{"startOffset":8228,"endOffset":8309,"count":4},{"startOffset":8309,"endOffset":8403,"count":8},{"startOffset":8403,"endOffset":8447,"count":0},{"startOffset":8448,"endOffset":8515,"count":0},{"startOffset":8541,"endOffset":9388,"count":0},{"startOffset":9388,"endOffset":9406,"count":8}],"isBlockCoverage":true},{"functionName":"tryFile","ranges":[{"startOffset":9748,"endOffset":9958,"count":137},{"startOffset":9836,"endOffset":9843,"count":39},{"startOffset":9843,"endOffset":9867,"count":98},{"startOffset":9867,"endOffset":9877,"count":0},{"startOffset":9879,"endOffset":9922,"count":0},{"startOffset":9922,"endOffset":9957,"count":98}],"isBlockCoverage":true},{"functionName":"toRealPath","ranges":[{"startOffset":9960,"endOffset":10091,"count":124}],"isBlockCoverage":true},{"functionName":"tryExtensions","ranges":[{"startOffset":10166,"endOffset":10372,"count":101},{"startOffset":10248,"endOffset":10354,"count":128},{"startOffset":10320,"endOffset":10350,"count":89},{"startOffset":10354,"endOffset":10371,"count":12}],"isBlockCoverage":true},{"functionName":"findLongestRegisteredExtension","ranges":[{"startOffset":10461,"endOffset":10897,"count":86},{"startOffset":10720,"endOffset":10729,"count":0},{"startOffset":10851,"endOffset":10875,"count":85},{"startOffset":10879,"endOffset":10896,"count":1}],"isBlockCoverage":true},{"functionName":"trySelfParentPath","ranges":[{"startOffset":10899,"endOffset":11188,"count":154},{"startOffset":10951,"endOffset":10964,"count":6},{"startOffset":10964,"endOffset":11022,"count":148},{"startOffset":11022,"endOffset":11186,"count":0}],"isBlockCoverage":true},{"functionName":"trySelf","ranges":[{"startOffset":11190,"endOffset":12039,"count":154},{"startOffset":11249,"endOffset":11262,"count":6},{"startOffset":11262,"endOffset":11332,"count":148},{"startOffset":11332,"endOffset":11337,"count":0},{"startOffset":11350,"endOffset":11378,"count":148},{"startOffset":11380,"endOffset":11393,"count":134},{"startOffset":11393,"endOffset":11430,"count":14},{"startOffset":11430,"endOffset":11443,"count":0},{"startOffset":11443,"endOffset":11490,"count":14},{"startOffset":11490,"endOffset":11516,"count":0},{"startOffset":11516,"endOffset":11682,"count":14},{"startOffset":11578,"endOffset":11653,"count":0},{"startOffset":11682,"endOffset":12037,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExports","ranges":[{"startOffset":12200,"endOffset":12938,"count":115},{"startOffset":12402,"endOffset":12407,"count":103},{"startOffset":12426,"endOffset":12433,"count":103},{"startOffset":12433,"endOffset":12549,"count":12},{"startOffset":12550,"endOffset":12578,"count":12},{"startOffset":12580,"endOffset":12936,"count":1},{"startOffset":12783,"endOffset":12932,"count":0}],"isBlockCoverage":true},{"functionName":"Module._findPath","ranges":[{"startOffset":13004,"endOffset":15631,"count":155},{"startOffset":13114,"endOffset":13137,"count":8},{"startOffset":13137,"endOffset":13200,"count":147},{"startOffset":13177,"endOffset":13200,"count":0},{"startOffset":13276,"endOffset":13286,"count":143},{"startOffset":13287,"endOffset":13307,"count":12},{"startOffset":13372,"endOffset":13385,"count":32},{"startOffset":13385,"endOffset":13508,"count":123},{"startOffset":13532,"endOffset":13669,"count":123},{"startOffset":13669,"endOffset":15612,"count":141},{"startOffset":13767,"endOffset":13787,"count":133},{"startOffset":13789,"endOffset":13798,"count":18},{"startOffset":13798,"endOffset":13826,"count":123},{"startOffset":13826,"endOffset":13956,"count":115},{"startOffset":13927,"endOffset":13950,"count":1},{"startOffset":13956,"endOffset":15263,"count":122},{"startOffset":14107,"endOffset":15040,"count":25},{"startOffset":14174,"endOffset":14234,"count":0},{"startOffset":14308,"endOffset":15032,"count":0},{"startOffset":15063,"endOffset":15257,"count":97},{"startOffset":15263,"endOffset":15283,"count":122},{"startOffset":15283,"endOffset":15294,"count":12},{"startOffset":15296,"endOffset":15512,"count":12},{"startOffset":15406,"endOffset":15444,"count":0},{"startOffset":15512,"endOffset":15608,"count":122},{"startOffset":15612,"endOffset":15630,"count":0}],"isBlockCoverage":true},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":15875,"endOffset":17266,"count":0}],"isBlockCoverage":false},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":17358,"endOffset":18399,"count":92},{"startOffset":17636,"endOffset":17661,"count":0},{"startOffset":17954,"endOffset":18292,"count":6508},{"startOffset":18034,"endOffset":18162,"count":816},{"startOffset":18071,"endOffset":18121,"count":724},{"startOffset":18162,"endOffset":18286,"count":5692},{"startOffset":18182,"endOffset":18286,"count":1980},{"startOffset":18217,"endOffset":18243,"count":1256},{"startOffset":18243,"endOffset":18278,"count":724}],"isBlockCoverage":true},{"functionName":"Module._resolveLookupPaths","ranges":[{"startOffset":18433,"endOffset":19571,"count":154},{"startOffset":18511,"endOffset":18577,"count":0},{"startOffset":18646,"endOffset":18797,"count":135},{"startOffset":18710,"endOffset":18744,"count":87},{"startOffset":18745,"endOffset":18796,"count":0},{"startOffset":18799,"endOffset":19043,"count":19},{"startOffset":18854,"endOffset":18869,"count":13},{"startOffset":18870,"endOffset":18892,"count":13},{"startOffset":18894,"endOffset":18943,"count":13},{"startOffset":19032,"endOffset":19038,"count":0},{"startOffset":19043,"endOffset":19111,"count":135},{"startOffset":19112,"endOffset":19131,"count":135},{"startOffset":19133,"endOffset":19382,"count":0},{"startOffset":19382,"endOffset":19570,"count":135}],"isBlockCoverage":true},{"functionName":"emitCircularRequireWarning","ranges":[{"startOffset":19574,"endOffset":19757,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":19950,"endOffset":20322,"count":0}],"isBlockCoverage":false},{"functionName":"getOwnPropertyDescriptor","ranges":[{"startOffset":20327,"endOffset":20568,"count":0}],"isBlockCoverage":false},{"functionName":"getExportsForCircularRequire","ranges":[{"startOffset":20769,"endOffset":21419,"count":1},{"startOffset":20944,"endOffset":21237,"count":0},{"startOffset":21239,"endOffset":21391,"count":0}],"isBlockCoverage":true},{"functionName":"Module._load","ranges":[{"startOffset":21831,"endOffset":24853,"count":223},{"startOffset":21914,"endOffset":22691,"count":217},{"startOffset":22334,"endOffset":22687,"count":20},{"startOffset":22524,"endOffset":22574,"count":0},{"startOffset":22619,"endOffset":22687,"count":0},{"startOffset":22691,"endOffset":22845,"count":203},{"startOffset":22845,"endOffset":23205,"count":74},{"startOffset":22925,"endOffset":23153,"count":7},{"startOffset":23021,"endOffset":23048,"count":6},{"startOffset":23058,"endOffset":23108,"count":1},{"startOffset":23108,"endOffset":23153,"count":6},{"startOffset":23153,"endOffset":23201,"count":67},{"startOffset":23205,"endOffset":23268,"count":135},{"startOffset":23268,"endOffset":23295,"count":49},{"startOffset":23297,"endOffset":23316,"count":49},{"startOffset":23316,"endOffset":23415,"count":86},{"startOffset":23415,"endOffset":23446,"count":80},{"startOffset":23463,"endOffset":23522,"count":0},{"startOffset":23522,"endOffset":23588,"count":86},{"startOffset":23588,"endOffset":23657,"count":80},{"startOffset":23657,"endOffset":23902,"count":86},{"startOffset":23902,"endOffset":24092,"count":0},{"startOffset":24092,"endOffset":24825,"count":86},{"startOffset":24183,"endOffset":24565,"count":0},{"startOffset":24747,"endOffset":24821,"count":0},{"startOffset":24825,"endOffset":24852,"count":86}],"isBlockCoverage":true},{"functionName":"Module._resolveFilename","ranges":[{"startOffset":24882,"endOffset":27745,"count":203},{"startOffset":24977,"endOffset":25002,"count":49},{"startOffset":25002,"endOffset":25052,"count":154},{"startOffset":25052,"endOffset":25071,"count":0},{"startOffset":25073,"endOffset":26056,"count":0},{"startOffset":26056,"endOffset":26139,"count":154},{"startOffset":26139,"endOffset":26157,"count":148},{"startOffset":26159,"endOffset":26739,"count":148},{"startOffset":26189,"endOffset":26735,"count":0},{"startOffset":26739,"endOffset":26900,"count":154},{"startOffset":26900,"endOffset":27096,"count":0},{"startOffset":27096,"endOffset":27259,"count":154},{"startOffset":27259,"endOffset":27744,"count":0}],"isBlockCoverage":true},{"functionName":"finalizeEsmResolution","ranges":[{"startOffset":27748,"endOffset":28462,"count":1},{"startOffset":27914,"endOffset":28033,"count":0},{"startOffset":28125,"endOffset":28135,"count":0},{"startOffset":28137,"endOffset":28294,"count":0},{"startOffset":28327,"endOffset":28461,"count":0}],"isBlockCoverage":true},{"functionName":"createEsmNotFoundErr","ranges":[{"startOffset":28464,"endOffset":28754,"count":0}],"isBlockCoverage":false},{"functionName":"Module.load","ranges":[{"startOffset":28843,"endOffset":29647,"count":86},{"startOffset":29162,"endOffset":29192,"count":0},{"startOffset":29194,"endOffset":29240,"count":0},{"startOffset":29513,"endOffset":29561,"count":0}],"isBlockCoverage":true},{"functionName":"Module.require","ranges":[{"startOffset":29765,"endOffset":30064,"count":217},{"startOffset":29825,"endOffset":29943,"count":0}],"isBlockCoverage":true},{"functionName":"wrapSafe","ranges":[{"startOffset":30244,"endOffset":31360,"count":84},{"startOffset":30317,"endOffset":30657,"count":0},{"startOffset":30946,"endOffset":31055,"count":0}],"isBlockCoverage":true},{"functionName":"importModuleDynamically","ranges":[{"startOffset":30498,"endOffset":30644,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":31183,"endOffset":31323,"count":0}],"isBlockCoverage":false},{"functionName":"Module._compile","ranges":[{"startOffset":31560,"endOffset":33402,"count":84},{"startOffset":31648,"endOffset":31815,"count":0},{"startOffset":31996,"endOffset":32020,"count":0},{"startOffset":32022,"endOffset":32758,"count":0},{"startOffset":32981,"endOffset":33003,"count":6},{"startOffset":33028,"endOffset":33167,"count":0},{"startOffset":33366,"endOffset":33383,"count":6}],"isBlockCoverage":true},{"functionName":"Module._extensions..js","ranges":[{"startOffset":33461,"endOffset":34235,"count":84},{"startOffset":33522,"endOffset":33918,"count":83},{"startOffset":33680,"endOffset":33914,"count":0},{"startOffset":34052,"endOffset":34068,"count":6},{"startOffset":34070,"endOffset":34135,"count":6},{"startOffset":34135,"endOffset":34195,"count":78}],"isBlockCoverage":true},{"functionName":"Module._extensions..json","ranges":[{"startOffset":34299,"endOffset":34663,"count":1},{"startOffset":34406,"endOffset":34515,"count":0},{"startOffset":34580,"endOffset":34661,"count":0}],"isBlockCoverage":true},{"functionName":"Module._extensions..node","ranges":[{"startOffset":34727,"endOffset":35045,"count":1},{"startOffset":34780,"endOffset":34936,"count":0}],"isBlockCoverage":true},{"functionName":"createRequireFromPath","ranges":[{"startOffset":35048,"endOffset":35473,"count":0}],"isBlockCoverage":false},{"functionName":"createRequire","ranges":[{"startOffset":35758,"endOffset":36311,"count":0}],"isBlockCoverage":false},{"functionName":"Module._initPaths","ranges":[{"startOffset":36372,"endOffset":37280,"count":1},{"startOffset":36413,"endOffset":36438,"count":0},{"startOffset":36490,"endOffset":36513,"count":0},{"startOffset":36721,"endOffset":36763,"count":0},{"startOffset":37030,"endOffset":37159,"count":0}],"isBlockCoverage":true},{"functionName":"pathsFilterCB","ranges":[{"startOffset":37082,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"Module._preloadModules","ranges":[{"startOffset":37308,"endOffset":37890,"count":0}],"isBlockCoverage":false},{"functionName":"syncBuiltinESMExports","ranges":[{"startOffset":37924,"endOffset":38080,"count":0}],"isBlockCoverage":false}]},{"scriptId":"58","url":"vm.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12941,"count":1}],"isBlockCoverage":false},{"functionName":"Script","ranges":[{"startOffset":1992,"endOffset":4152,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":4156,"endOffset":4436,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":4440,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":4850,"endOffset":5021,"count":0}],"isBlockCoverage":false},{"functionName":"validateContext","ranges":[{"startOffset":5025,"endOffset":5244,"count":0}],"isBlockCoverage":false},{"functionName":"getRunInContextArgs","ranges":[{"startOffset":5246,"endOffset":5837,"count":0}],"isBlockCoverage":false},{"functionName":"getContextOptions","ranges":[{"startOffset":5839,"endOffset":6907,"count":0}],"isBlockCoverage":false},{"functionName":"isContext","ranges":[{"startOffset":6909,"endOffset":7091,"count":0}],"isBlockCoverage":false},{"functionName":"createContext","ranges":[{"startOffset":7126,"endOffset":8261,"count":0}],"isBlockCoverage":false},{"functionName":"createScript","ranges":[{"startOffset":8263,"endOffset":8339,"count":0}],"isBlockCoverage":false},{"functionName":"sigintHandlersWrap","ranges":[{"startOffset":8493,"endOffset":8939,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":8941,"endOffset":9338,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":9340,"endOffset":9692,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":9694,"endOffset":9880,"count":0}],"isBlockCoverage":false},{"functionName":"compileFunction","ranges":[{"startOffset":9882,"endOffset":11615,"count":0}],"isBlockCoverage":false},{"functionName":"measureMemory","ranges":[{"startOffset":11892,"endOffset":12454,"count":0}],"isBlockCoverage":false}]},{"scriptId":"59","url":"internal/modules/package_json_reader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":279,"endOffset":946,"count":50},{"startOffset":332,"endOffset":369,"count":13},{"startOffset":369,"endOffset":593,"count":37},{"startOffset":593,"endOffset":896,"count":20},{"startOffset":627,"endOffset":761,"count":1},{"startOffset":686,"endOffset":739,"count":0},{"startOffset":789,"endOffset":892,"count":0},{"startOffset":896,"endOffset":945,"count":37}],"isBlockCoverage":true}]},{"scriptId":"60","url":"internal/process/esm_loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2326,"count":1}],"isBlockCoverage":false},{"functionName":"exports.initializeImportMetaObject","ranges":[{"startOffset":405,"endOffset":701,"count":0}],"isBlockCoverage":false},{"functionName":"exports.importModuleDynamicallyCallback","ranges":[{"startOffset":746,"endOffset":1137,"count":44},{"startOffset":1081,"endOffset":1136,"count":0}],"isBlockCoverage":true},{"functionName":"initializeLoader","ranges":[{"startOffset":1202,"endOffset":1969,"count":1},{"startOffset":1388,"endOffset":1968,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1722,"endOffset":1963,"count":0}],"isBlockCoverage":true},{"functionName":"loadESM","ranges":[{"startOffset":1989,"endOffset":2324,"count":1},{"startOffset":2097,"endOffset":2322,"count":0}],"isBlockCoverage":true}]},{"scriptId":"61","url":"internal/modules/esm/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8625,"count":1}],"isBlockCoverage":false},{"functionName":"Loader","ranges":[{"startOffset":1416,"endOffset":3189,"count":1}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":3193,"endOffset":3816,"count":83},{"startOffset":3298,"endOffset":3337,"count":82},{"startOffset":3514,"endOffset":3617,"count":0},{"startOffset":3689,"endOffset":3796,"count":0}],"isBlockCoverage":true},{"functionName":"getFormat","ranges":[{"startOffset":3820,"endOffset":5128,"count":83},{"startOffset":3977,"endOffset":4084,"count":0},{"startOffset":4153,"endOffset":4410,"count":0},{"startOffset":4447,"endOffset":4562,"count":0},{"startOffset":4594,"endOffset":4622,"count":8},{"startOffset":4622,"endOffset":4666,"count":75},{"startOffset":4666,"endOffset":4835,"count":0},{"startOffset":4835,"endOffset":4927,"count":75},{"startOffset":4928,"endOffset":4977,"count":0},{"startOffset":4984,"endOffset":5104,"count":0},{"startOffset":5104,"endOffset":5127,"count":75}],"isBlockCoverage":true},{"functionName":"eval","ranges":[{"startOffset":5132,"endOffset":5807,"count":0}],"isBlockCoverage":false},{"functionName":"import","ranges":[{"startOffset":5811,"endOffset":5982,"count":45}],"isBlockCoverage":true},{"functionName":"hook","ranges":[{"startOffset":5986,"endOffset":6947,"count":0}],"isBlockCoverage":false},{"functionName":"runGlobalPreloadCode","ranges":[{"startOffset":6951,"endOffset":7755,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleJob","ranges":[{"startOffset":7759,"endOffset":8549,"count":83},{"startOffset":8046,"endOffset":8083,"count":0},{"startOffset":8117,"endOffset":8128,"count":52},{"startOffset":8128,"endOffset":8170,"count":31},{"startOffset":8170,"endOffset":8214,"count":0},{"startOffset":8214,"endOffset":8316,"count":31},{"startOffset":8316,"endOffset":8346,"count":1},{"startOffset":8347,"endOffset":8381,"count":1}],"isBlockCoverage":true}]},{"scriptId":"62","url":"internal/modules/esm/module_map.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":878,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":175,"endOffset":200,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":419,"endOffset":492,"count":83}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":495,"endOffset":771,"count":31},{"startOffset":585,"endOffset":621,"count":0},{"startOffset":623,"endOffset":693,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":774,"endOffset":847,"count":0}],"isBlockCoverage":false}]},{"scriptId":"63","url":"internal/modules/esm/module_job.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5778,"count":1}],"isBlockCoverage":false},{"functionName":"ModuleJob","ranges":[{"startOffset":832,"endOffset":2478,"count":31}],"isBlockCoverage":true},{"functionName":"link","ranges":[{"startOffset":1301,"endOffset":2105,"count":31}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1757,"endOffset":1984,"count":38}],"isBlockCoverage":true},{"functionName":"instantiate","ranges":[{"startOffset":2482,"endOffset":2627,"count":45},{"startOffset":2539,"endOffset":2593,"count":7}],"isBlockCoverage":true},{"functionName":"_instantiate","ranges":[{"startOffset":2631,"endOffset":5498,"count":7},{"startOffset":3105,"endOffset":3282,"count":0},{"startOffset":3339,"endOffset":5251,"count":0},{"startOffset":5298,"endOffset":5494,"count":39}],"isBlockCoverage":true},{"functionName":"addJobsToDependencyGraph","ranges":[{"startOffset":2730,"endOffset":3004,"count":46},{"startOffset":2791,"endOffset":2816,"count":7},{"startOffset":2816,"endOffset":3003,"count":39}],"isBlockCoverage":true},{"functionName":"run","ranges":[{"startOffset":5502,"endOffset":5698,"count":45}],"isBlockCoverage":true}]},{"scriptId":"64","url":"internal/modules/esm/resolve.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":28247,"count":1}],"isBlockCoverage":false},{"functionName":"getConditionsSet","ranges":[{"startOffset":1873,"endOffset":2225,"count":75},{"startOffset":1982,"endOffset":2190,"count":0}],"isBlockCoverage":true},{"functionName":"tryStatSync","ranges":[{"startOffset":2336,"endOffset":2441,"count":116},{"startOffset":2404,"endOffset":2439,"count":20}],"isBlockCoverage":true},{"functionName":"getPackageConfig","ranges":[{"startOffset":2443,"endOffset":3781,"count":261},{"startOffset":2571,"endOffset":2597,"count":240},{"startOffset":2597,"endOffset":2680,"count":21},{"startOffset":2680,"endOffset":2955,"count":13},{"startOffset":2955,"endOffset":3025,"count":8},{"startOffset":3025,"endOffset":3204,"count":0},{"startOffset":3204,"endOffset":3326,"count":8},{"startOffset":3326,"endOffset":3345,"count":0},{"startOffset":3347,"endOffset":3400,"count":8},{"startOffset":3400,"endOffset":3417,"count":0},{"startOffset":3417,"endOffset":3450,"count":8},{"startOffset":3450,"endOffset":3467,"count":0},{"startOffset":3467,"endOffset":3545,"count":8},{"startOffset":3545,"endOffset":3567,"count":6},{"startOffset":3569,"endOffset":3583,"count":6},{"startOffset":3583,"endOffset":3780,"count":8}],"isBlockCoverage":true},{"functionName":"getPackageScopeConfig","ranges":[{"startOffset":3783,"endOffset":4883,"count":84},{"startOffset":3901,"endOffset":4554,"count":250},{"startOffset":4041,"endOffset":4047,"count":0},{"startOffset":4206,"endOffset":4227,"count":84},{"startOffset":4227,"endOffset":4544,"count":166},{"startOffset":4544,"endOffset":4550,"count":0},{"startOffset":4554,"endOffset":4882,"count":0}],"isBlockCoverage":true},{"functionName":"fileExists","ranges":[{"startOffset":5139,"endOffset":5218,"count":13}],"isBlockCoverage":true},{"functionName":"legacyMainResolve","ranges":[{"startOffset":5220,"endOffset":6891,"count":9},{"startOffset":5532,"endOffset":5559,"count":8},{"startOffset":5559,"endOffset":5678,"count":1},{"startOffset":5678,"endOffset":5705,"count":0},{"startOffset":5705,"endOffset":5826,"count":1},{"startOffset":5826,"endOffset":5853,"count":0},{"startOffset":5853,"endOffset":5974,"count":1},{"startOffset":5974,"endOffset":6001,"count":0},{"startOffset":6001,"endOffset":6153,"count":1},{"startOffset":6153,"endOffset":6461,"count":0},{"startOffset":6485,"endOffset":6890,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExtensionsWithTryExactName","ranges":[{"startOffset":6893,"endOffset":7024,"count":0}],"isBlockCoverage":false},{"functionName":"resolveExtensions","ranges":[{"startOffset":7080,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"resolveIndex","ranges":[{"startOffset":7339,"endOffset":7426,"count":0}],"isBlockCoverage":false},{"functionName":"finalizeResolution","ranges":[{"startOffset":7464,"endOffset":8671,"count":75},{"startOffset":7577,"endOffset":7720,"count":0},{"startOffset":7834,"endOffset":8243,"count":0},{"startOffset":8308,"endOffset":8344,"count":0},{"startOffset":8381,"endOffset":8508,"count":0},{"startOffset":8535,"endOffset":8649,"count":0}],"isBlockCoverage":true},{"functionName":"throwImportNotDefined","ranges":[{"startOffset":8673,"endOffset":8888,"count":0}],"isBlockCoverage":false},{"functionName":"throwExportsNotFound","ranges":[{"startOffset":8890,"endOffset":9089,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidSubpath","ranges":[{"startOffset":9091,"endOffset":9441,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidPackageTarget","ranges":[{"startOffset":9443,"endOffset":9825,"count":0}],"isBlockCoverage":false},{"functionName":"resolvePackageTargetString","ranges":[{"startOffset":9926,"endOffset":11589,"count":3},{"startOffset":10065,"endOffset":10076,"count":0},{"startOffset":10077,"endOffset":10113,"count":0},{"startOffset":10119,"endOffset":10192,"count":0},{"startOffset":10242,"endOffset":10782,"count":0},{"startOffset":10869,"endOffset":10942,"count":0},{"startOffset":11165,"endOffset":11238,"count":0},{"startOffset":11278,"endOffset":11588,"count":0}],"isBlockCoverage":true},{"functionName":"isArrayIndex","ranges":[{"startOffset":11644,"endOffset":11784,"count":12},{"startOffset":11736,"endOffset":11781,"count":0}],"isBlockCoverage":true},{"functionName":"resolvePackageTarget","ranges":[{"startOffset":11786,"endOffset":13918,"count":8},{"startOffset":11968,"endOffset":12111,"count":3},{"startOffset":12111,"endOffset":13803,"count":5},{"startOffset":12143,"endOffset":12915,"count":0},{"startOffset":13068,"endOffset":13296,"count":12},{"startOffset":13126,"endOffset":13290,"count":0},{"startOffset":13339,"endOffset":13728,"count":9},{"startOffset":13420,"endOffset":13722,"count":5},{"startOffset":13680,"endOffset":13689,"count":0},{"startOffset":13728,"endOffset":13803,"count":0},{"startOffset":13803,"endOffset":13917,"count":0}],"isBlockCoverage":true},{"functionName":"isConditionalExportsMainSugar","ranges":[{"startOffset":13920,"endOffset":14855,"count":3},{"startOffset":14052,"endOffset":14064,"count":0},{"startOffset":14120,"endOffset":14133,"count":0},{"startOffset":14273,"endOffset":14824,"count":6},{"startOffset":14383,"endOffset":14820,"count":3},{"startOffset":14496,"endOffset":14820,"count":0}],"isBlockCoverage":true},{"functionName":"packageExportsResolve","ranges":[{"startOffset":15040,"endOffset":16923,"count":3},{"startOffset":15252,"endOffset":15279,"count":0},{"startOffset":15579,"endOffset":15638,"count":0},{"startOffset":15680,"endOffset":16922,"count":0}],"isBlockCoverage":true},{"functionName":"packageImportsResolve","ranges":[{"startOffset":16925,"endOffset":18921,"count":0}],"isBlockCoverage":false},{"functionName":"getPackageType","ranges":[{"startOffset":18923,"endOffset":19036,"count":73}],"isBlockCoverage":true},{"functionName":"packageResolve","ranges":[{"startOffset":19149,"endOffset":21981,"count":11},{"startOffset":19350,"endOffset":19578,"count":0},{"startOffset":19640,"endOffset":19692,"count":0},{"startOffset":19835,"endOffset":19952,"count":83},{"startOffset":19896,"endOffset":19948,"count":0},{"startOffset":19979,"endOffset":20098,"count":0},{"startOffset":20159,"endOffset":20212,"count":0},{"startOffset":20426,"endOffset":20472,"count":0},{"startOffset":20473,"endOffset":20506,"count":0},{"startOffset":20508,"endOffset":20641,"count":0},{"startOffset":20816,"endOffset":21772,"count":28},{"startOffset":20998,"endOffset":21275,"count":17},{"startOffset":21075,"endOffset":21112,"count":0},{"startOffset":21275,"endOffset":21421,"count":11},{"startOffset":21421,"endOffset":21454,"count":2},{"startOffset":21462,"endOffset":21581,"count":2},{"startOffset":21581,"endOffset":21682,"count":9},{"startOffset":21682,"endOffset":21772,"count":0},{"startOffset":21772,"endOffset":21980,"count":0}],"isBlockCoverage":true},{"functionName":"isBareSpecifier","ranges":[{"startOffset":21983,"endOffset":22093,"count":0}],"isBlockCoverage":false},{"functionName":"isRelativeSpecifier","ranges":[{"startOffset":22095,"endOffset":22366,"count":75},{"startOffset":22165,"endOffset":22348,"count":63},{"startOffset":22223,"endOffset":22235,"count":54},{"startOffset":22235,"endOffset":22344,"count":9},{"startOffset":22348,"endOffset":22365,"count":12}],"isBlockCoverage":true},{"functionName":"shouldBeTreatedAsRelativeOrAbsolutePath","ranges":[{"startOffset":22368,"endOffset":22551,"count":75},{"startOffset":22454,"endOffset":22467,"count":0},{"startOffset":22496,"endOffset":22508,"count":0}],"isBlockCoverage":true},{"functionName":"moduleResolve","ranges":[{"startOffset":22664,"endOffset":23235,"count":75},{"startOffset":22892,"endOffset":22938,"count":63},{"startOffset":22938,"endOffset":23188,"count":12},{"startOffset":22970,"endOffset":23048,"count":0},{"startOffset":23109,"endOffset":23184,"count":11}],"isBlockCoverage":true},{"functionName":"resolveAsCommonJS","ranges":[{"startOffset":23381,"endOffset":24789,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolve","ranges":[{"startOffset":24791,"endOffset":28097,"count":83},{"startOffset":24923,"endOffset":24942,"count":82},{"startOffset":24944,"endOffset":25547,"count":0},{"startOffset":25640,"endOffset":25694,"count":0},{"startOffset":25699,"endOffset":25707,"count":82},{"startOffset":25721,"endOffset":25751,"count":1},{"startOffset":25757,"endOffset":25783,"count":0},{"startOffset":25797,"endOffset":25827,"count":1},{"startOffset":25828,"endOffset":25858,"count":0},{"startOffset":25864,"endOffset":25913,"count":0},{"startOffset":25966,"endOffset":26022,"count":8},{"startOffset":26022,"endOffset":26039,"count":75},{"startOffset":26039,"endOffset":26087,"count":74},{"startOffset":26089,"endOffset":26177,"count":0},{"startOffset":26177,"endOffset":26235,"count":75},{"startOffset":26235,"endOffset":26762,"count":1},{"startOffset":26719,"endOffset":26758,"count":0},{"startOffset":26762,"endOffset":26891,"count":75},{"startOffset":26891,"endOffset":27695,"count":0},{"startOffset":27695,"endOffset":27710,"count":75},{"startOffset":27710,"endOffset":27733,"count":1},{"startOffset":27734,"endOffset":27753,"count":74},{"startOffset":27755,"endOffset":28066,"count":75},{"startOffset":27995,"endOffset":28000,"count":0},{"startOffset":28066,"endOffset":28096,"count":75}],"isBlockCoverage":true}]},{"scriptId":"65","url":"internal/modules/esm/get_format.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2496,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetFormat","ranges":[{"startOffset":1131,"endOffset":2450,"count":83},{"startOffset":1244,"endOffset":1283,"count":8},{"startOffset":1283,"endOffset":1350,"count":75},{"startOffset":1350,"endOffset":1760,"count":0},{"startOffset":1760,"endOffset":2421,"count":75},{"startOffset":1882,"endOffset":1970,"count":73},{"startOffset":1940,"endOffset":1950,"count":65},{"startOffset":1951,"endOffset":1963,"count":8},{"startOffset":1970,"endOffset":2023,"count":2},{"startOffset":2041,"endOffset":2378,"count":0},{"startOffset":2407,"endOffset":2414,"count":0},{"startOffset":2421,"endOffset":2449,"count":0}],"isBlockCoverage":true}]},{"scriptId":"66","url":"internal/modules/esm/get_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1307,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetSource","ranges":[{"startOffset":609,"endOffset":1261,"count":19},{"startOffset":810,"endOffset":1155,"count":0},{"startOffset":1180,"endOffset":1238,"count":0}],"isBlockCoverage":true}]},{"scriptId":"67","url":"internal/fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20020,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2272,"endOffset":2432,"count":0}],"isBlockCoverage":false},{"functionName":"FileHandle","ranges":[{"startOffset":2480,"endOffset":2657,"count":19},{"startOffset":2594,"endOffset":2598,"count":0}],"isBlockCoverage":true},{"functionName":"getAsyncId","ranges":[{"startOffset":2661,"endOffset":2718,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":2722,"endOffset":2758,"count":57}],"isBlockCoverage":true},{"functionName":"appendFile","ranges":[{"startOffset":2762,"endOffset":2844,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":2848,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":2908,"endOffset":2972,"count":0}],"isBlockCoverage":false},{"functionName":"datasync","ranges":[{"startOffset":2976,"endOffset":3028,"count":0}],"isBlockCoverage":false},{"functionName":"sync","ranges":[{"startOffset":3032,"endOffset":3076,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":3080,"endOffset":3189,"count":0}],"isBlockCoverage":false},{"functionName":"readv","ranges":[{"startOffset":3193,"endOffset":3274,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":3278,"endOffset":3345,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":3349,"endOffset":3409,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":3413,"endOffset":3477,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":3481,"endOffset":3555,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":3559,"endOffset":3670,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":3674,"endOffset":3757,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":3761,"endOffset":3842,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3846,"endOffset":4538,"count":19}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":3854,"endOffset":4538,"count":19},{"startOffset":3888,"endOffset":3926,"count":0},{"startOffset":3957,"endOffset":3998,"count":0},{"startOffset":4192,"endOffset":4501,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4128,"endOffset":4184,"count":19}],"isBlockCoverage":true},{"functionName":".Promise.finally.","ranges":[{"startOffset":4240,"endOffset":4346,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4356,"endOffset":4493,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4542,"endOffset":5011,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5015,"endOffset":5068,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5072,"endOffset":5159,"count":0}],"isBlockCoverage":false},{"functionName":"fsCall","ranges":[{"startOffset":5163,"endOffset":5781,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileHandle","ranges":[{"startOffset":5783,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"readFileHandle","ranges":[{"startOffset":6461,"endOffset":7737,"count":19},{"startOffset":6572,"endOffset":6589,"count":0},{"startOffset":6591,"endOffset":6667,"count":0},{"startOffset":6760,"endOffset":6777,"count":0},{"startOffset":6779,"endOffset":6855,"count":0},{"startOffset":6964,"endOffset":6989,"count":0},{"startOffset":7022,"endOffset":7060,"count":0},{"startOffset":7114,"endOffset":7141,"count":0},{"startOffset":7216,"endOffset":7567,"count":38},{"startOffset":7233,"endOffset":7250,"count":0},{"startOffset":7252,"endOffset":7332,"count":0},{"startOffset":7523,"endOffset":7563,"count":19},{"startOffset":7638,"endOffset":7661,"count":0},{"startOffset":7690,"endOffset":7725,"count":0}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":7890,"endOffset":8111,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":8113,"endOffset":8471,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":8591,"endOffset":8916,"count":19}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":8918,"endOffset":9972,"count":38},{"startOffset":9057,"endOffset":9339,"count":0},{"startOffset":9363,"endOffset":9384,"count":0},{"startOffset":9476,"endOffset":9513,"count":0},{"startOffset":9542,"endOffset":9672,"count":0},{"startOffset":9776,"endOffset":9790,"count":0},{"startOffset":9932,"endOffset":9936,"count":19}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":9974,"endOffset":10294,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":10296,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":11219,"endOffset":11551,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":11553,"endOffset":11859,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":11861,"endOffset":12004,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":12006,"endOffset":12165,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":12167,"endOffset":12364,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":12366,"endOffset":12629,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":12631,"endOffset":12720,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":12722,"endOffset":12803,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":12805,"endOffset":13337,"count":7},{"startOffset":12909,"endOffset":12947,"count":0},{"startOffset":13012,"endOffset":13017,"count":0},{"startOffset":13094,"endOffset":13168,"count":0}],"isBlockCoverage":true},{"functionName":"readdir","ranges":[{"startOffset":13339,"endOffset":13791,"count":0}],"isBlockCoverage":false},{"functionName":"readlink","ranges":[{"startOffset":13793,"endOffset":14036,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":14038,"endOffset":14451,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":14453,"endOffset":14631,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":14633,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":14905,"endOffset":15172,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":15174,"endOffset":15497,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":15499,"endOffset":15637,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":15639,"endOffset":15772,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":15774,"endOffset":15960,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":15962,"endOffset":16200,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":16202,"endOffset":16478,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":16480,"endOffset":16677,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":16679,"endOffset":16952,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":16954,"endOffset":17226,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":17228,"endOffset":17427,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":17429,"endOffset":17706,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":17708,"endOffset":17885,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":17887,"endOffset":18217,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":18219,"endOffset":18938,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":18940,"endOffset":19181,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":19183,"endOffset":19613,"count":19},{"startOffset":19300,"endOffset":19306,"count":0},{"startOffset":19347,"endOffset":19384,"count":0},{"startOffset":19417,"endOffset":19493,"count":0}],"isBlockCoverage":true}]},{"scriptId":"68","url":"internal/fs/rimraf.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7039,"count":1}],"isBlockCoverage":false},{"functionName":"rimraf","ranges":[{"startOffset":1137,"endOffset":1597,"count":0}],"isBlockCoverage":false},{"functionName":"_rimraf","ranges":[{"startOffset":1600,"endOffset":2458,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERM","ranges":[{"startOffset":2461,"endOffset":2896,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdir","ranges":[{"startOffset":2899,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"_rmchildren","ranges":[{"startOffset":3200,"endOffset":3872,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafPromises","ranges":[{"startOffset":3875,"endOffset":4073,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafSync","ranges":[{"startOffset":4076,"endOffset":4781,"count":0}],"isBlockCoverage":false},{"functionName":"_unlinkSync","ranges":[{"startOffset":4784,"endOffset":5267,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdirSync","ranges":[{"startOffset":5270,"endOffset":6540,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERMSync","ranges":[{"startOffset":6543,"endOffset":6979,"count":0}],"isBlockCoverage":false}]},{"scriptId":"69","url":"internal/modules/esm/transform_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":215,"count":1}],"isBlockCoverage":false},{"functionName":"defaultTransformSource","ranges":[{"startOffset":15,"endOffset":157,"count":19}],"isBlockCoverage":true}]},{"scriptId":"70","url":"internal/modules/esm/translators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12048,"count":1}],"isBlockCoverage":false},{"functionName":"lazyTypes","ranges":[{"startOffset":416,"endOffset":528,"count":38},{"startOffset":462,"endOffset":476,"count":37},{"startOffset":476,"endOffset":527,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1202,"endOffset":1227,"count":1}],"isBlockCoverage":true},{"functionName":"initCJSParse","ranges":[{"startOffset":1860,"endOffset":2152,"count":2},{"startOffset":1934,"endOffset":2009,"count":0}],"isBlockCoverage":true},{"functionName":"assertBufferSource","ranges":[{"startOffset":2286,"endOffset":2706,"count":38},{"startOffset":2363,"endOffset":2390,"count":19},{"startOffset":2392,"endOffset":2409,"count":0},{"startOffset":2503,"endOffset":2528,"count":0},{"startOffset":2547,"endOffset":2626,"count":0},{"startOffset":2627,"endOffset":2631,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":2708,"endOffset":2926,"count":19},{"startOffset":2767,"endOffset":2779,"count":0},{"startOffset":2863,"endOffset":2882,"count":1},{"startOffset":2883,"endOffset":2892,"count":18}],"isBlockCoverage":true},{"functionName":"errPath","ranges":[{"startOffset":2928,"endOffset":3073,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":3075,"endOffset":3189,"count":44}],"isBlockCoverage":true},{"functionName":"createImportMetaResolve","ranges":[{"startOffset":3191,"endOffset":3539,"count":0}],"isBlockCoverage":false},{"functionName":"initializeImportMeta","ranges":[{"startOffset":3541,"endOffset":3711,"count":0}],"isBlockCoverage":false},{"functionName":"moduleStrategy","ranges":[{"startOffset":3793,"endOffset":4374,"count":19}],"isBlockCoverage":true},{"functionName":"enrichCJSError","ranges":[{"startOffset":4378,"endOffset":5277,"count":0}],"isBlockCoverage":false},{"functionName":"commonjsStrategy","ranges":[{"startOffset":5435,"endOffset":6741,"count":6},{"startOffset":5609,"endOffset":5672,"count":0},{"startOffset":5691,"endOffset":5712,"count":2},{"startOffset":5837,"endOffset":5859,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5950,"endOffset":6737,"count":6},{"startOffset":6069,"endOffset":6183,"count":0},{"startOffset":6275,"endOffset":6344,"count":0},{"startOffset":6394,"endOffset":6693,"count":14},{"startOffset":6505,"endOffset":6514,"count":0},{"startOffset":6638,"endOffset":6646,"count":0}],"isBlockCoverage":true},{"functionName":"cjsPreparseModuleExports","ranges":[{"startOffset":6745,"endOffset":8189,"count":6},{"startOffset":6848,"endOffset":6973,"count":0},{"startOffset":7272,"endOffset":7280,"count":0},{"startOffset":7362,"endOffset":7367,"count":0},{"startOffset":7375,"endOffset":7424,"count":0},{"startOffset":7585,"endOffset":7682,"count":0},{"startOffset":7719,"endOffset":8152,"count":0}],"isBlockCoverage":true},{"functionName":"builtinStrategy","ranges":[{"startOffset":8313,"endOffset":8701,"count":6},{"startOffset":8574,"endOffset":8626,"count":0}],"isBlockCoverage":true},{"functionName":"jsonStrategy","ranges":[{"startOffset":8765,"endOffset":10884,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10950,"endOffset":12045,"count":0}],"isBlockCoverage":false}]},{"scriptId":"71","url":"internal/modules/esm/create_dynamic_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1756,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":190,"endOffset":215,"count":0}],"isBlockCoverage":false},{"functionName":"createImport","ranges":[{"startOffset":219,"endOffset":409,"count":0}],"isBlockCoverage":false},{"functionName":"createExport","ranges":[{"startOffset":411,"endOffset":612,"count":0}],"isBlockCoverage":false},{"functionName":"createDynamicModule","ranges":[{"startOffset":642,"endOffset":1715,"count":0}],"isBlockCoverage":false}]},{"scriptId":"72","url":"internal/vm/module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12877,"count":1}],"isBlockCoverage":false},{"functionName":"Module","ranges":[{"startOffset":1618,"endOffset":3804,"count":0}],"isBlockCoverage":false},{"functionName":"get identifier","ranges":[{"startOffset":3808,"endOffset":3945,"count":0}],"isBlockCoverage":false},{"functionName":"get context","ranges":[{"startOffset":3949,"endOffset":4082,"count":0}],"isBlockCoverage":false},{"functionName":"get namespace","ranges":[{"startOffset":4086,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":4367,"endOffset":4520,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":4524,"endOffset":4774,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":4778,"endOffset":5257,"count":0}],"isBlockCoverage":false},{"functionName":"evaluate","ranges":[{"startOffset":5261,"endOffset":6213,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6217,"endOffset":6945,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":7092,"endOffset":7128,"count":0}],"isBlockCoverage":false},{"functionName":"SourceTextModule","ranges":[{"startOffset":7133,"endOffset":9559,"count":0}],"isBlockCoverage":false},{"functionName":"get dependencySpecifiers","ranges":[{"startOffset":9563,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":9866,"endOffset":10135,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":10139,"endOffset":10335,"count":0}],"isBlockCoverage":false},{"functionName":"createCachedData","ranges":[{"startOffset":10339,"endOffset":10601,"count":0}],"isBlockCoverage":false},{"functionName":"SyntheticModule","ranges":[{"startOffset":10646,"endOffset":11943,"count":0}],"isBlockCoverage":false},{"functionName":"setExport","ranges":[{"startOffset":11947,"endOffset":12249,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamicallyWrap","ranges":[{"startOffset":12253,"endOffset":12715,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleFromWrap","ranges":[{"startOffset":12837,"endOffset":12872,"count":44}],"isBlockCoverage":true}]},{"scriptId":"73","url":"internal/modules/run_main.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2582,"count":1}],"isBlockCoverage":false},{"functionName":"resolveMainPath","ranges":[{"startOffset":220,"endOffset":658,"count":1},{"startOffset":487,"endOffset":494,"count":0}],"isBlockCoverage":true},{"functionName":"shouldUseESMLoader","ranges":[{"startOffset":660,"endOffset":1215,"count":1},{"startOffset":784,"endOffset":796,"count":0},{"startOffset":944,"endOffset":956,"count":0},{"startOffset":1051,"endOffset":1063,"count":0},{"startOffset":1114,"endOffset":1127,"count":0}],"isBlockCoverage":true},{"functionName":"runMainESM","ranges":[{"startOffset":1217,"endOffset":1552,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1400,"endOffset":1547,"count":1},{"startOffset":1497,"endOffset":1507,"count":0}],"isBlockCoverage":true},{"functionName":"handleMainPromise","ranges":[{"startOffset":1554,"endOffset":1991,"count":1}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":1803,"endOffset":1896,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1953,"endOffset":1987,"count":1}],"isBlockCoverage":true},{"functionName":"executeUserEntryPoint","ranges":[{"startOffset":2177,"endOffset":2512,"count":1},{"startOffset":2387,"endOffset":2394,"count":0},{"startOffset":2400,"endOffset":2510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"74","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3159,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":212,"endOffset":913,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":949,"endOffset":1653,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1686,"endOffset":3156,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2730,"endOffset":2762,"count":3},{"startOffset":2754,"endOffset":2757,"count":2},{"startOffset":2758,"endOffset":2762,"count":1}],"isBlockCoverage":true}]},{"scriptId":"75","url":"internal/deps/cjs-module-lexer/dist/lexer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":33943,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":231,"endOffset":903,"count":6},{"startOffset":261,"endOffset":296,"count":0},{"startOffset":337,"endOffset":352,"count":0},{"startOffset":388,"endOffset":423,"count":1},{"startOffset":447,"endOffset":449,"count":0},{"startOffset":521,"endOffset":668,"count":0},{"startOffset":716,"endOffset":748,"count":0},{"startOffset":761,"endOffset":791,"count":0},{"startOffset":804,"endOffset":863,"count":14}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":903,"endOffset":1004,"count":0}],"isBlockCoverage":false},{"functionName":"C","ranges":[{"startOffset":1004,"endOffset":1078,"count":6},{"startOffset":1055,"endOffset":1077,"count":28254}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":1084,"endOffset":33943,"count":2},{"startOffset":1108,"endOffset":33942,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1114,"endOffset":33938,"count":1},{"startOffset":33782,"endOffset":33851,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":33832,"endOffset":33850,"count":0}],"isBlockCoverage":false}]},{"scriptId":"76","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1},{"startOffset":473,"endOffset":550,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":508,"endOffset":546,"count":0}],"isBlockCoverage":false}]},{"scriptId":"77","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/helpers/createTestServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1096,"count":1}],"isBlockCoverage":true},{"functionName":"getNewPort","ranges":[{"startOffset":343,"endOffset":410,"count":7}],"isBlockCoverage":true},{"functionName":"createTestServers","ranges":[{"startOffset":413,"endOffset":1060,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":559,"endOffset":932,"count":7}],"isBlockCoverage":true},{"functionName":"servers.close","ranges":[{"startOffset":958,"endOffset":1038,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1007,"endOffset":1031,"count":7}],"isBlockCoverage":true}]},{"scriptId":"78","url":"internal/fs/streams.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"ReadStream","ranges":[{"startOffset":702,"endOffset":2789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2928,"endOffset":2963,"count":0}],"isBlockCoverage":false},{"functionName":"_openReadFs","ranges":[{"startOffset":3063,"endOffset":3544,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._read","ranges":[{"startOffset":3575,"endOffset":4888,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._destroy","ranges":[{"startOffset":4923,"endOffset":5210,"count":0}],"isBlockCoverage":false},{"functionName":"closeFsStream","ranges":[{"startOffset":5213,"endOffset":5369,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.close","ranges":[{"startOffset":5400,"endOffset":5486,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5547,"endOffset":5581,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":5609,"endOffset":7859,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._final","ranges":[{"startOffset":8002,"endOffset":8159,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":8192,"endOffset":8228,"count":0}],"isBlockCoverage":false},{"functionName":"_openWriteFs","ranges":[{"startOffset":8331,"endOffset":8764,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._write","ranges":[{"startOffset":8798,"endOffset":9466,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._writev","ranges":[{"startOffset":9502,"endOffset":10392,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.close","ranges":[{"startOffset":10490,"endOffset":10872,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":11035,"endOffset":11069,"count":0}],"isBlockCoverage":false}]},{"scriptId":"79","url":"stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2187,"count":1}],"isBlockCoverage":false},{"functionName":"_uint8ArrayToBuffer","ranges":[{"startOffset":1978,"endOffset":2185,"count":0}],"isBlockCoverage":false}]},{"scriptId":"80","url":"internal/streams/pipeline.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7631,"count":1}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":543,"endOffset":1935,"count":0}],"isBlockCoverage":false},{"functionName":"popCallback","ranges":[{"startOffset":1937,"endOffset":2308,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":2392,"endOffset":2473,"count":0}],"isBlockCoverage":false},{"functionName":"isStream","ranges":[{"startOffset":2475,"endOffset":2546,"count":0}],"isBlockCoverage":false},{"functionName":"isIterable","ranges":[{"startOffset":2548,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"makeAsyncIterable","ranges":[{"startOffset":2873,"endOffset":3149,"count":0}],"isBlockCoverage":false},{"functionName":"fromReadable","ranges":[{"startOffset":3151,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"pump","ranges":[{"startOffset":3317,"endOffset":3794,"count":0}],"isBlockCoverage":false},{"functionName":"pipeline","ranges":[{"startOffset":3796,"endOffset":7602,"count":0}],"isBlockCoverage":false}]},{"scriptId":"81","url":"internal/streams/destroy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3954,"count":1}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":123,"endOffset":1394,"count":155},{"startOffset":227,"endOffset":241,"count":120},{"startOffset":243,"endOffset":264,"count":125},{"startOffset":266,"endOffset":343,"count":30},{"startOffset":302,"endOffset":321,"count":0},{"startOffset":343,"endOffset":356,"count":125},{"startOffset":356,"endOffset":576,"count":0},{"startOffset":576,"endOffset":735,"count":125},{"startOffset":735,"endOffset":764,"count":90},{"startOffset":764,"endOffset":832,"count":125}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":834,"endOffset":1374,"count":125},{"startOffset":858,"endOffset":1096,"count":0},{"startOffset":1109,"endOffset":1139,"count":90},{"startOffset":1217,"endOffset":1239,"count":0},{"startOffset":1254,"endOffset":1314,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorCloseNT","ranges":[{"startOffset":1396,"endOffset":1483,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":1485,"endOffset":1703,"count":125},{"startOffset":1633,"endOffset":1647,"count":90},{"startOffset":1672,"endOffset":1701,"count":35}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":1705,"endOffset":1992,"count":0}],"isBlockCoverage":false},{"functionName":"undestroy","ranges":[{"startOffset":1994,"endOffset":2557,"count":92}],"isBlockCoverage":true},{"functionName":"errorOrDestroy","ranges":[{"startOffset":2559,"endOffset":3458,"count":0}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":3460,"endOffset":3565,"count":0}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":3600,"endOffset":3876,"count":0}],"isBlockCoverage":false}]},{"scriptId":"82","url":"internal/streams/end-of-stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5791,"count":1}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":280,"endOffset":375,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":377,"endOffset":535,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":537,"endOffset":695,"count":0}],"isBlockCoverage":false},{"functionName":"isWritableFinished","ranges":[{"startOffset":697,"endOffset":934,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":936,"endOffset":953,"count":0}],"isBlockCoverage":false},{"functionName":"isReadableEnded","ranges":[{"startOffset":955,"endOffset":1188,"count":0}],"isBlockCoverage":false},{"functionName":"eos","ranges":[{"startOffset":1190,"endOffset":5767,"count":0}],"isBlockCoverage":false}]},{"scriptId":"83","url":"internal/streams/legacy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2081,"count":1}],"isBlockCoverage":false},{"functionName":"Stream","ranges":[{"startOffset":96,"endOffset":144,"count":219}],"isBlockCoverage":true},{"functionName":"Stream.pipe","ranges":[{"startOffset":258,"endOffset":2053,"count":0}],"isBlockCoverage":false}]},{"scriptId":"84","url":"internal/streams/readable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":40444,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1596,"endOffset":1621,"count":1}],"isBlockCoverage":true},{"functionName":"nop","ranges":[{"startOffset":2218,"endOffset":2235,"count":0}],"isBlockCoverage":false},{"functionName":"prependListener","ranges":[{"startOffset":2278,"endOffset":3085,"count":60},{"startOffset":2537,"endOffset":2900,"count":0},{"startOffset":2906,"endOffset":3083,"count":0}],"isBlockCoverage":true},{"functionName":"ReadableState","ranges":[{"startOffset":3087,"endOffset":6664,"count":127},{"startOffset":3486,"endOffset":3529,"count":0},{"startOffset":3729,"endOffset":3814,"count":92},{"startOffset":4062,"endOffset":4098,"count":0},{"startOffset":6476,"endOffset":6662,"count":0}],"isBlockCoverage":true},{"functionName":"Readable","ranges":[{"startOffset":6667,"endOffset":7237,"count":127},{"startOffset":6735,"endOffset":6764,"count":0},{"startOffset":7087,"endOffset":7113,"count":0},{"startOffset":7168,"endOffset":7200,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._destroy","ranges":[{"startOffset":7374,"endOffset":7406,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":7457,"endOffset":7495,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.push","ranges":[{"startOffset":7724,"endOffset":7810,"count":105}],"isBlockCoverage":true},{"functionName":"Readable.unshift","ranges":[{"startOffset":7906,"endOffset":7991,"count":0}],"isBlockCoverage":false},{"functionName":"readableAddChunk","ranges":[{"startOffset":7994,"endOffset":10247,"count":105},{"startOffset":8171,"endOffset":8986,"count":102},{"startOffset":8208,"endOffset":8672,"count":0},{"startOffset":8707,"endOffset":8735,"count":72},{"startOffset":8735,"endOffset":8982,"count":30},{"startOffset":8774,"endOffset":8851,"count":0},{"startOffset":8876,"endOffset":8982,"count":0},{"startOffset":8999,"endOffset":9037,"count":0},{"startOffset":9063,"endOffset":9126,"count":30},{"startOffset":9126,"endOffset":9963,"count":75},{"startOffset":9153,"endOffset":9183,"count":72},{"startOffset":9207,"endOffset":9373,"count":0},{"startOffset":9396,"endOffset":9466,"count":0},{"startOffset":9493,"endOffset":9520,"count":0},{"startOffset":9581,"endOffset":9593,"count":0},{"startOffset":9595,"endOffset":9802,"count":0},{"startOffset":9874,"endOffset":9963,"count":0},{"startOffset":10179,"endOffset":10244,"count":75},{"startOffset":10222,"endOffset":10243,"count":0}],"isBlockCoverage":true},{"functionName":"addChunk","ranges":[{"startOffset":10249,"endOffset":10949,"count":75},{"startOffset":10530,"endOffset":10576,"count":0},{"startOffset":10663,"endOffset":10915,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.isPaused","ranges":[{"startOffset":10981,"endOffset":11093,"count":30}],"isBlockCoverage":true},{"functionName":"Readable.setEncoding","ranges":[{"startOffset":11157,"endOffset":11801,"count":0}],"isBlockCoverage":false},{"functionName":"computeNewHighWaterMark","ranges":[{"startOffset":11862,"endOffset":12227,"count":0}],"isBlockCoverage":false},{"functionName":"howMuchToRead","ranges":[{"startOffset":12340,"endOffset":12734,"count":385},{"startOffset":12388,"endOffset":12426,"count":125},{"startOffset":12432,"endOffset":12441,"count":290},{"startOffset":12441,"endOffset":12470,"count":95},{"startOffset":12470,"endOffset":12479,"count":35},{"startOffset":12479,"endOffset":12652,"count":60},{"startOffset":12588,"endOffset":12623,"count":0},{"startOffset":12652,"endOffset":12727,"count":0},{"startOffset":12728,"endOffset":12731,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.read","ranges":[{"startOffset":12831,"endOffset":17061,"count":385},{"startOffset":13021,"endOffset":13039,"count":125},{"startOffset":13039,"endOffset":13106,"count":260},{"startOffset":13070,"endOffset":13106,"count":0},{"startOffset":13271,"endOffset":13320,"count":0},{"startOffset":13341,"endOffset":13371,"count":125},{"startOffset":13557,"endOffset":13584,"count":260},{"startOffset":13585,"endOffset":13718,"count":105},{"startOffset":13668,"endOffset":13694,"count":0},{"startOffset":13720,"endOffset":13905,"count":0},{"startOffset":14014,"endOffset":14028,"count":350},{"startOffset":14030,"endOffset":14105,"count":60},{"startOffset":14105,"endOffset":15381,"count":325},{"startOffset":15381,"endOffset":15422,"count":0},{"startOffset":15424,"endOffset":15692,"count":325},{"startOffset":15693,"endOffset":15711,"count":200},{"startOffset":15713,"endOffset":15777,"count":125},{"startOffset":15777,"endOffset":16310,"count":200},{"startOffset":16274,"endOffset":16306,"count":0},{"startOffset":16310,"endOffset":16340,"count":325},{"startOffset":16340,"endOffset":16365,"count":35},{"startOffset":16365,"endOffset":16388,"count":290},{"startOffset":16388,"endOffset":16488,"count":325},{"startOffset":16488,"endOffset":16651,"count":0},{"startOffset":16651,"endOffset":16995,"count":325},{"startOffset":16951,"endOffset":16965,"count":95},{"startOffset":16973,"endOffset":16991,"count":0},{"startOffset":16995,"endOffset":17021,"count":325},{"startOffset":17021,"endOffset":17044,"count":0},{"startOffset":17044,"endOffset":17060,"count":325}],"isBlockCoverage":true},{"functionName":"onEofChunk","ranges":[{"startOffset":17064,"endOffset":17884,"count":30},{"startOffset":17143,"endOffset":17150,"count":0},{"startOffset":17172,"endOffset":17346,"count":0},{"startOffset":17388,"endOffset":17590,"count":0}],"isBlockCoverage":true},{"functionName":"emitReadable","ranges":[{"startOffset":18085,"endOffset":18412,"count":0}],"isBlockCoverage":false},{"functionName":"emitReadable_","ranges":[{"startOffset":18414,"endOffset":19050,"count":30},{"startOffset":18969,"endOffset":18988,"count":0},{"startOffset":18989,"endOffset":19031,"count":0}],"isBlockCoverage":true},{"functionName":"maybeReadMore","ranges":[{"startOffset":19400,"endOffset":19556,"count":75}],"isBlockCoverage":true},{"functionName":"maybeReadMore_","ranges":[{"startOffset":19558,"endOffset":21350,"count":75},{"startOffset":21088,"endOffset":21138,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._read","ranges":[{"startOffset":21621,"endOffset":21687,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.pipe","ranges":[{"startOffset":21716,"endOffset":26193,"count":60},{"startOffset":21833,"endOffset":22029,"count":0},{"startOffset":22149,"endOffset":22174,"count":0},{"startOffset":22290,"endOffset":22298,"count":0},{"startOffset":22328,"endOffset":22352,"count":0},{"startOffset":26049,"endOffset":26100,"count":0},{"startOffset":26126,"endOffset":26175,"count":0}],"isBlockCoverage":true},{"functionName":"onunpipe","ranges":[{"startOffset":22422,"endOffset":22648,"count":0}],"isBlockCoverage":false},{"functionName":"onend","ranges":[{"startOffset":22652,"endOffset":22710,"count":30}],"isBlockCoverage":true},{"functionName":"cleanup","ranges":[{"startOffset":22755,"endOffset":23647,"count":0}],"isBlockCoverage":false},{"functionName":"pause","ranges":[{"startOffset":23651,"endOffset":24648,"count":0}],"isBlockCoverage":false},{"functionName":"ondata","ranges":[{"startOffset":24678,"endOffset":24838,"count":72},{"startOffset":24812,"endOffset":24834,"count":0}],"isBlockCoverage":true},{"functionName":"onerror","ranges":[{"startOffset":24960,"endOffset":25375,"count":0}],"isBlockCoverage":false},{"functionName":"onclose","ranges":[{"startOffset":25555,"endOffset":25638,"count":0}],"isBlockCoverage":false},{"functionName":"onfinish","ranges":[{"startOffset":25672,"endOffset":25777,"count":0}],"isBlockCoverage":false},{"functionName":"unpipe","ranges":[{"startOffset":25814,"endOffset":25880,"count":0}],"isBlockCoverage":false},{"functionName":"pipeOnDrain","ranges":[{"startOffset":26196,"endOffset":26870,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.unpipe","ranges":[{"startOffset":26901,"endOffset":27570,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.on","ranges":[{"startOffset":27696,"endOffset":28603,"count":1042},{"startOffset":27828,"endOffset":28160,"count":95},{"startOffset":28160,"endOffset":28586,"count":947},{"startOffset":28189,"endOffset":28586,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeListener","ranges":[{"startOffset":28698,"endOffset":29212,"count":334},{"startOffset":28809,"endOffset":29195,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeAllListeners","ranges":[{"startOffset":29315,"endOffset":29853,"count":0}],"isBlockCoverage":false},{"functionName":"updateReadableListening","ranges":[{"startOffset":29856,"endOffset":30366,"count":0}],"isBlockCoverage":false},{"functionName":"nReadingNextTick","ranges":[{"startOffset":30368,"endOffset":30456,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.resume","ranges":[{"startOffset":30610,"endOffset":30935,"count":95}],"isBlockCoverage":true},{"functionName":"resume","ranges":[{"startOffset":30938,"endOffset":31088,"count":95}],"isBlockCoverage":true},{"functionName":"resume_","ranges":[{"startOffset":31090,"endOffset":31341,"count":95},{"startOffset":31180,"endOffset":31205,"count":35},{"startOffset":31324,"endOffset":31339,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.pause","ranges":[{"startOffset":31370,"endOffset":31637,"count":0}],"isBlockCoverage":false},{"functionName":"flow","ranges":[{"startOffset":31640,"endOffset":31787,"count":125},{"startOffset":31784,"endOffset":31785,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.wrap","ranges":[{"startOffset":31971,"endOffset":33786,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":33831,"endOffset":34212,"count":0}],"isBlockCoverage":false},{"functionName":"createAsyncIterator","ranges":[{"startOffset":34215,"endOffset":35508,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":35706,"endOffset":36095,"count":60}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":36101,"endOffset":36231,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36297,"endOffset":36363,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36422,"endOffset":36504,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36564,"endOffset":36624,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36635,"endOffset":36744,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36798,"endOffset":36852,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36910,"endOffset":36998,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37054,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37188,"endOffset":37322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":37328,"endOffset":37617,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37670,"endOffset":37758,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37877,"endOffset":37922,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37980,"endOffset":38031,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":38037,"endOffset":38086,"count":0}],"isBlockCoverage":false},{"functionName":"fromList","ranges":[{"startOffset":38390,"endOffset":38952,"count":35},{"startOffset":38485,"endOffset":38951,"count":0}],"isBlockCoverage":true},{"functionName":"endReadable","ranges":[{"startOffset":38954,"endOffset":39175,"count":60}],"isBlockCoverage":true},{"functionName":"endReadableNT","ranges":[{"startOffset":39177,"endOffset":40109,"count":60},{"startOffset":39400,"endOffset":39421,"count":30},{"startOffset":39423,"endOffset":40107,"count":30},{"startOffset":39503,"endOffset":39536,"count":0},{"startOffset":39538,"endOffset":39599,"count":0},{"startOffset":39628,"endOffset":40103,"count":0}],"isBlockCoverage":true},{"functionName":"endWritableNT","ranges":[{"startOffset":40111,"endOffset":40278,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.from","ranges":[{"startOffset":40296,"endOffset":40442,"count":0}],"isBlockCoverage":false}]},{"scriptId":"85","url":"internal/streams/buffer_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3798,"count":1}],"isBlockCoverage":false},{"functionName":"BufferList","ranges":[{"startOffset":204,"endOffset":288,"count":127}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":292,"endOffset":479,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":483,"endOffset":641,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":645,"endOffset":872,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":876,"endOffset":944,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":948,"endOffset":1119,"count":0}],"isBlockCoverage":false},{"functionName":"concat","ranges":[{"startOffset":1123,"endOffset":1386,"count":0}],"isBlockCoverage":false},{"functionName":"consume","ranges":[{"startOffset":1470,"endOffset":1924,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":1928,"endOffset":1968,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":1972,"endOffset":2068,"count":0}],"isBlockCoverage":false},{"functionName":"_getString","ranges":[{"startOffset":2143,"endOffset":2738,"count":0}],"isBlockCoverage":false},{"functionName":"_getBuffer","ranges":[{"startOffset":2808,"endOffset":3518,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":3599,"endOffset":3794,"count":0}],"isBlockCoverage":false}]},{"scriptId":"86","url":"internal/streams/state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":881,"count":1}],"isBlockCoverage":false},{"functionName":"highWaterMarkFrom","ranges":[{"startOffset":142,"endOffset":309,"count":219},{"startOffset":240,"endOffset":263,"count":35},{"startOffset":264,"endOffset":306,"count":184},{"startOffset":300,"endOffset":306,"count":0}],"isBlockCoverage":true},{"functionName":"getDefaultHighWaterMark","ranges":[{"startOffset":311,"endOffset":397,"count":184},{"startOffset":378,"endOffset":382,"count":0}],"isBlockCoverage":true},{"functionName":"getHighWaterMark","ranges":[{"startOffset":399,"endOffset":811,"count":219},{"startOffset":546,"endOffset":737,"count":35},{"startOffset":590,"endOffset":706,"count":0},{"startOffset":737,"endOffset":810,"count":184}],"isBlockCoverage":true}]},{"scriptId":"87","url":"internal/streams/writable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":22800,"count":1}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":2223,"endOffset":2240,"count":75}],"isBlockCoverage":true},{"functionName":"WritableState","ranges":[{"startOffset":2242,"endOffset":6406,"count":92},{"startOffset":2637,"endOffset":2680,"count":0},{"startOffset":3231,"endOffset":3267,"count":0}],"isBlockCoverage":true},{"functionName":"resetBuffer","ranges":[{"startOffset":6408,"endOffset":6540,"count":96}],"isBlockCoverage":true},{"functionName":"getBuffer","ranges":[{"startOffset":6578,"endOffset":6652,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6729,"endOffset":6794,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":7121,"endOffset":7335,"count":0}],"isBlockCoverage":false},{"functionName":"realHasInstance","ranges":[{"startOffset":7371,"endOffset":7428,"count":0}],"isBlockCoverage":false},{"functionName":"Writable","ranges":[{"startOffset":7433,"endOffset":8605,"count":92},{"startOffset":8074,"endOffset":8114,"count":0},{"startOffset":8120,"endOffset":8149,"count":0},{"startOffset":8288,"endOffset":8316,"count":0},{"startOffset":8370,"endOffset":8400,"count":0},{"startOffset":8455,"endOffset":8487,"count":0},{"startOffset":8540,"endOffset":8568,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.pipe","ranges":[{"startOffset":8701,"endOffset":8769,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.write","ranges":[{"startOffset":8799,"endOffset":10008,"count":111},{"startOffset":8907,"endOffset":8969,"count":34},{"startOffset":8969,"endOffset":9089,"count":77},{"startOffset":9113,"endOffset":9158,"count":0},{"startOffset":9267,"endOffset":9351,"count":0},{"startOffset":9357,"endOffset":9660,"count":0},{"startOffset":9697,"endOffset":9746,"count":0},{"startOffset":9773,"endOffset":9823,"count":0},{"startOffset":9836,"endOffset":9927,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.cork","ranges":[{"startOffset":10037,"endOffset":10083,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.uncork","ranges":[{"startOffset":10114,"endOffset":10269,"count":0}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":10312,"endOffset":10623,"count":0}],"isBlockCoverage":false},{"functionName":"writeOrBuffer","ranges":[{"startOffset":10813,"endOffset":11804,"count":111},{"startOffset":10911,"endOffset":10914,"count":0},{"startOffset":11133,"endOffset":11156,"count":0},{"startOffset":11178,"endOffset":11193,"count":105},{"startOffset":11194,"endOffset":11210,"count":105},{"startOffset":11212,"endOffset":11444,"count":6},{"startOffset":11295,"endOffset":11319,"count":4},{"startOffset":11321,"endOffset":11360,"count":4},{"startOffset":11404,"endOffset":11440,"count":0},{"startOffset":11444,"endOffset":11635,"count":105}],"isBlockCoverage":true},{"functionName":"doWrite","ranges":[{"startOffset":11806,"endOffset":12184,"count":4},{"startOffset":11992,"endOffset":12041,"count":0},{"startOffset":12065,"endOffset":12160,"count":2}],"isBlockCoverage":true},{"functionName":"onwriteError","ranges":[{"startOffset":12186,"endOffset":12606,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":12608,"endOffset":14202,"count":109},{"startOffset":12766,"endOffset":12840,"count":0},{"startOffset":12958,"endOffset":13469,"count":0},{"startOffset":13530,"endOffset":13571,"count":4},{"startOffset":13587,"endOffset":14143,"count":37},{"startOffset":13886,"endOffset":13933,"count":31},{"startOffset":13935,"endOffset":13986,"count":29},{"startOffset":13986,"endOffset":14137,"count":8},{"startOffset":14143,"endOffset":14196,"count":72}],"isBlockCoverage":true},{"functionName":"afterWriteTick","ranges":[{"startOffset":14204,"endOffset":14343,"count":8}],"isBlockCoverage":true},{"functionName":"afterWrite","ranges":[{"startOffset":14345,"endOffset":14755,"count":80},{"startOffset":14470,"endOffset":14492,"count":76},{"startOffset":14511,"endOffset":14571,"count":0},{"startOffset":14595,"endOffset":14633,"count":109},{"startOffset":14658,"endOffset":14722,"count":0}],"isBlockCoverage":true},{"functionName":"errorBuffer","ranges":[{"startOffset":14827,"endOffset":15148,"count":0}],"isBlockCoverage":false},{"functionName":"clearBuffer","ranges":[{"startOffset":15214,"endOffset":16647,"count":4},{"startOffset":15317,"endOffset":15334,"count":0},{"startOffset":15475,"endOffset":15492,"count":0},{"startOffset":15578,"endOffset":15595,"count":2},{"startOffset":15597,"endOffset":16139,"count":2},{"startOffset":15684,"endOffset":15795,"count":0},{"startOffset":15977,"endOffset":15996,"count":0},{"startOffset":16139,"endOffset":16611,"count":2},{"startOffset":16270,"endOffset":16273,"count":0},{"startOffset":16392,"endOffset":16409,"count":0},{"startOffset":16477,"endOffset":16607,"count":0}],"isBlockCoverage":true},{"functionName":"callback","ranges":[{"startOffset":15686,"endOffset":15795,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._write","ranges":[{"startOffset":16677,"endOffset":16846,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.end","ranges":[{"startOffset":16910,"endOffset":18094,"count":30},{"startOffset":17015,"endOffset":17075,"count":0},{"startOffset":17117,"endOffset":17162,"count":0},{"startOffset":17213,"endOffset":17241,"count":0},{"startOffset":17290,"endOffset":17336,"count":0},{"startOffset":17780,"endOffset":17936,"count":0},{"startOffset":17970,"endOffset":18076,"count":0}],"isBlockCoverage":true},{"functionName":"needFinish","ranges":[{"startOffset":18097,"endOffset":18310,"count":140},{"startOffset":18149,"endOffset":18180,"count":60},{"startOffset":18181,"endOffset":18208,"count":60},{"startOffset":18209,"endOffset":18249,"count":60},{"startOffset":18250,"endOffset":18278,"count":60},{"startOffset":18279,"endOffset":18306,"count":60}],"isBlockCoverage":true},{"functionName":"callFinal","ranges":[{"startOffset":18312,"endOffset":18572,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":18364,"endOffset":18568,"count":30},{"startOffset":18411,"endOffset":18453,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":18574,"endOffset":18922,"count":60},{"startOffset":18635,"endOffset":18656,"count":30},{"startOffset":18658,"endOffset":18920,"count":30},{"startOffset":18839,"endOffset":18916,"count":0}],"isBlockCoverage":true},{"functionName":"finishMaybe","ranges":[{"startOffset":18924,"endOffset":19251,"count":140},{"startOffset":19014,"endOffset":19234,"count":60},{"startOffset":19077,"endOffset":19230,"count":30},{"startOffset":19120,"endOffset":19178,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":19253,"endOffset":19871,"count":30},{"startOffset":19337,"endOffset":19344,"count":0},{"startOffset":19422,"endOffset":19869,"count":0}],"isBlockCoverage":true},{"functionName":"onFinished","ranges":[{"startOffset":19937,"endOffset":20401,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20468,"endOffset":20555,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":20561,"endOffset":20743,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20768,"endOffset":21160,"count":120},{"startOffset":21142,"endOffset":21153,"count":90}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":21166,"endOffset":21300,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":21333,"endOffset":21419,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21454,"endOffset":21542,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21573,"endOffset":21655,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21685,"endOffset":21769,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21803,"endOffset":21961,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21999,"endOffset":22083,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22114,"endOffset":22194,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22225,"endOffset":22302,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.destroy","ranges":[{"startOffset":22378,"endOffset":22589,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._destroy","ranges":[{"startOffset":22677,"endOffset":22709,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.","ranges":[{"startOffset":22760,"endOffset":22798,"count":0}],"isBlockCoverage":false}]},{"scriptId":"88","url":"internal/streams/duplex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3759,"count":1}],"isBlockCoverage":false},{"functionName":"Duplex","ranges":[{"startOffset":1936,"endOffset":2360,"count":92},{"startOffset":2000,"endOffset":2027,"count":0},{"startOffset":2182,"endOffset":2204,"count":2},{"startOffset":2248,"endOffset":2270,"count":0},{"startOffset":2313,"endOffset":2354,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3271,"endOffset":3483,"count":434},{"startOffset":3369,"endOffset":3400,"count":0},{"startOffset":3444,"endOffset":3476,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3489,"endOffset":3750,"count":0}],"isBlockCoverage":false}]},{"scriptId":"89","url":"internal/streams/transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8217,"count":1}],"isBlockCoverage":false},{"functionName":"afterTransform","ranges":[{"startOffset":4032,"endOffset":4550,"count":0}],"isBlockCoverage":false},{"functionName":"Transform","ranges":[{"startOffset":4553,"endOffset":5382,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":5384,"endOffset":5596,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5691,"endOffset":5741,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5838,"endOffset":5890,"count":0}],"isBlockCoverage":false},{"functionName":"Transform.push","ranges":[{"startOffset":5988,"endOffset":6124,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._transform","ranges":[{"startOffset":6607,"endOffset":6696,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._write","ranges":[{"startOffset":6728,"endOffset":7067,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._read","ranges":[{"startOffset":7239,"endOffset":7613,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._destroy","ranges":[{"startOffset":7648,"endOffset":7745,"count":0}],"isBlockCoverage":false},{"functionName":"done","ranges":[{"startOffset":7749,"endOffset":8216,"count":0}],"isBlockCoverage":false}]},{"scriptId":"90","url":"internal/streams/passthrough.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1762,"count":1}],"isBlockCoverage":false},{"functionName":"PassThrough","ranges":[{"startOffset":1529,"endOffset":1671,"count":0}],"isBlockCoverage":false},{"functionName":"PassThrough._transform","ranges":[{"startOffset":1708,"endOffset":1760,"count":0}],"isBlockCoverage":false}]},{"scriptId":"92","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/wrapper.mjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":323,"count":1}],"isBlockCoverage":true}]},{"scriptId":"93","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4076,"count":1}],"isBlockCoverage":true},{"functionName":"persistNode","ranges":[{"startOffset":284,"endOffset":618,"count":27}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":620,"endOffset":2047,"count":181},{"startOffset":671,"endOffset":735,"count":0},{"startOffset":927,"endOffset":944,"count":154},{"startOffset":944,"endOffset":2046,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":856,"endOffset":904,"count":504}],"isBlockCoverage":true},{"functionName":"handleError","ranges":[{"startOffset":1172,"endOffset":1445,"count":27},{"startOffset":1369,"endOffset":1444,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1601,"endOffset":1639,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1669,"endOffset":1760,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1844,"endOffset":1904,"count":50}],"isBlockCoverage":true},{"functionName":"node.close","ranges":[{"startOffset":1923,"endOffset":1991,"count":27}],"isBlockCoverage":true},{"functionName":"canhazdb","ranges":[{"startOffset":2049,"endOffset":4049,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2491,"endOffset":2577,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2673,"endOffset":2727,"count":0}],"isBlockCoverage":false},{"functionName":"syncNodesInfo","ranges":[{"startOffset":2733,"endOffset":3334,"count":7},{"startOffset":2785,"endOffset":2806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2834,"endOffset":3261,"count":27},{"startOffset":3148,"endOffset":3173,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2977,"endOffset":3057,"count":127}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3373,"endOffset":3514,"count":886}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3428,"endOffset":3450,"count":4082}],"isBlockCoverage":true},{"functionName":"context.close","ranges":[{"startOffset":3536,"endOffset":3813,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3700,"endOffset":3742,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3980,"endOffset":4026,"count":17}],"isBlockCoverage":true}]},{"scriptId":"94","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3290,"count":1}],"isBlockCoverage":true},{"functionName":"formatColor","ranges":[{"startOffset":614,"endOffset":938,"count":0}],"isBlockCoverage":false},{"functionName":"padStartAll","ranges":[{"startOffset":940,"endOffset":1063,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":1090,"endOffset":2704,"count":10}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1152,"endOffset":2701,"count":34},{"startOffset":1249,"endOffset":1270,"count":7},{"startOffset":1270,"endOffset":1321,"count":27},{"startOffset":1321,"endOffset":2487,"count":0},{"startOffset":2487,"endOffset":2602,"count":27},{"startOffset":2609,"endOffset":2696,"count":0}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":2706,"endOffset":3035,"count":2}],"isBlockCoverage":true},{"functionName":"log.setLogger","ranges":[{"startOffset":3053,"endOffset":3091,"count":0}],"isBlockCoverage":false},{"functionName":"log.setLogLevel","ranges":[{"startOffset":3112,"endOffset":3213,"count":1}],"isBlockCoverage":true}]},{"scriptId":"95","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/prepareOptions.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1328,"count":1}],"isBlockCoverage":true},{"functionName":"prepareOptions","ranges":[{"startOffset":91,"endOffset":1295,"count":7},{"startOffset":201,"endOffset":206,"count":0},{"startOffset":254,"endOffset":287,"count":0},{"startOffset":288,"endOffset":304,"count":0},{"startOffset":378,"endOffset":622,"count":0},{"startOffset":763,"endOffset":1152,"count":0},{"startOffset":1205,"endOffset":1273,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":575,"endOffset":616,"count":0}],"isBlockCoverage":false}]},{"scriptId":"96","url":"dns.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9368,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":2019,"endOffset":2220,"count":30},{"startOffset":2066,"endOffset":2146,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupall","ranges":[{"startOffset":2223,"endOffset":2587,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2658,"endOffset":4319,"count":30},{"startOffset":2854,"endOffset":2927,"count":0},{"startOffset":2968,"endOffset":3013,"count":0},{"startOffset":3055,"endOffset":3106,"count":0},{"startOffset":3339,"endOffset":3378,"count":0},{"startOffset":3450,"endOffset":3658,"count":0},{"startOffset":3721,"endOffset":3937,"count":0},{"startOffset":4079,"endOffset":4092,"count":0},{"startOffset":4207,"endOffset":4303,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupservice","ranges":[{"startOffset":4448,"endOffset":4629,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":4632,"endOffset":5263,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":5401,"endOffset":5667,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":5669,"endOffset":6415,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":5704,"endOffset":6334,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":7404,"endOffset":7865,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolverSetServers","ranges":[{"startOffset":7867,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9174,"endOffset":9359,"count":2},{"startOffset":9211,"endOffset":9330,"count":1}],"isBlockCoverage":true}]},{"scriptId":"97","url":"internal/net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1694,"count":1}],"isBlockCoverage":false},{"functionName":"isIPv4","ranges":[{"startOffset":974,"endOffset":1022,"count":150}],"isBlockCoverage":true},{"functionName":"isIPv6","ranges":[{"startOffset":1024,"endOffset":1072,"count":90}],"isBlockCoverage":true},{"functionName":"isIP","ranges":[{"startOffset":1074,"endOffset":1160,"count":150},{"startOffset":1110,"endOffset":1119,"count":60},{"startOffset":1119,"endOffset":1137,"count":90},{"startOffset":1137,"endOffset":1146,"count":0},{"startOffset":1146,"endOffset":1159,"count":90}],"isBlockCoverage":true},{"functionName":"makeSyncWrite","ranges":[{"startOffset":1162,"endOffset":1576,"count":0}],"isBlockCoverage":false}]},{"scriptId":"98","url":"internal/dns/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4700,"count":1}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":610,"endOffset":770,"count":1}],"isBlockCoverage":true},{"functionName":"Resolver","ranges":[{"startOffset":848,"endOffset":977,"count":1}],"isBlockCoverage":true},{"functionName":"cancel","ranges":[{"startOffset":981,"endOffset":1022,"count":0}],"isBlockCoverage":false},{"functionName":"getServers","ranges":[{"startOffset":1026,"endOffset":1273,"count":0}],"isBlockCoverage":false},{"functionName":"setServers","ranges":[{"startOffset":1277,"endOffset":3072,"count":0}],"isBlockCoverage":false},{"functionName":"setLocalAddress","ranges":[{"startOffset":3076,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultResolver","ranges":[{"startOffset":3703,"endOffset":3762,"count":1}],"isBlockCoverage":true},{"functionName":"setDefaultResolver","ranges":[{"startOffset":3764,"endOffset":3835,"count":0}],"isBlockCoverage":false},{"functionName":"bindDefaultResolver","ranges":[{"startOffset":3837,"endOffset":3978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3907,"endOffset":3974,"count":30}],"isBlockCoverage":true},{"functionName":"validateHints","ranges":[{"startOffset":3980,"endOffset":4135,"count":30},{"startOffset":4075,"endOffset":4133,"count":0}],"isBlockCoverage":true},{"functionName":"emitInvalidHostnameWarning","ranges":[{"startOffset":4181,"endOffset":4531,"count":0}],"isBlockCoverage":false}]},{"scriptId":"99","url":"internal/dns/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6786,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":733,"endOffset":982,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupall","ranges":[{"startOffset":984,"endOffset":1359,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupPromise","ranges":[{"startOffset":1361,"endOffset":2205,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2207,"endOffset":2864,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupservice","ranges":[{"startOffset":2867,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupServicePromise","ranges":[{"startOffset":3052,"endOffset":3463,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":3465,"endOffset":3749,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":3752,"endOffset":4019,"count":0}],"isBlockCoverage":false},{"functionName":"createResolverPromise","ranges":[{"startOffset":4021,"endOffset":4489,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":4491,"endOffset":4786,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":4526,"endOffset":4704,"count":0}],"isBlockCoverage":false},{"functionName":"Resolver","ranges":[{"startOffset":4905,"endOffset":5034,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":6261,"endOffset":6671,"count":0}],"isBlockCoverage":false}]},{"scriptId":"100","url":"os.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8688,"count":1}],"isBlockCoverage":false},{"functionName":"getCheckedFunction","ranges":[{"startOffset":1911,"endOffset":2152,"count":3}],"isBlockCoverage":true},{"functionName":"checkError","ranges":[{"startOffset":1970,"endOffset":2148,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease","ranges":[{"startOffset":2459,"endOffset":2472,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType","ranges":[{"startOffset":2521,"endOffset":2531,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion","ranges":[{"startOffset":2583,"endOffset":2596,"count":0}],"isBlockCoverage":false},{"functionName":"getFreeMem.","ranges":[{"startOffset":2631,"endOffset":2649,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname.","ranges":[{"startOffset":2684,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion.","ranges":[{"startOffset":2739,"endOffset":2759,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType.","ranges":[{"startOffset":2792,"endOffset":2809,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease.","ranges":[{"startOffset":2845,"endOffset":2865,"count":0}],"isBlockCoverage":false},{"functionName":"getHomeDirectory.","ranges":[{"startOffset":2905,"endOffset":2929,"count":0}],"isBlockCoverage":false},{"functionName":"getTotalMem.","ranges":[{"startOffset":2964,"endOffset":2983,"count":0}],"isBlockCoverage":false},{"functionName":"getUptime.","ranges":[{"startOffset":3016,"endOffset":3033,"count":0}],"isBlockCoverage":false},{"functionName":"loadavg","ranges":[{"startOffset":3171,"endOffset":3271,"count":0}],"isBlockCoverage":false},{"functionName":"cpus","ranges":[{"startOffset":3546,"endOffset":3958,"count":0}],"isBlockCoverage":false},{"functionName":"arch","ranges":[{"startOffset":3989,"endOffset":4031,"count":0}],"isBlockCoverage":false},{"functionName":"arch.","ranges":[{"startOffset":4058,"endOffset":4076,"count":0}],"isBlockCoverage":false},{"functionName":"platform","ranges":[{"startOffset":4108,"endOffset":4158,"count":0}],"isBlockCoverage":false},{"functionName":"platform.","ranges":[{"startOffset":4189,"endOffset":4211,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir","ranges":[{"startOffset":4243,"endOffset":4760,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir.","ranges":[{"startOffset":4789,"endOffset":4803,"count":0}],"isBlockCoverage":false},{"functionName":"endianness","ranges":[{"startOffset":4840,"endOffset":4887,"count":0}],"isBlockCoverage":false},{"functionName":"endianness.","ranges":[{"startOffset":4920,"endOffset":4937,"count":0}],"isBlockCoverage":false},{"functionName":"countBinaryOnes","ranges":[{"startOffset":5025,"endOffset":5278,"count":0}],"isBlockCoverage":false},{"functionName":"getCIDR","ranges":[{"startOffset":5280,"endOffset":6000,"count":0}],"isBlockCoverage":false},{"functionName":"networkInterfaces","ranges":[{"startOffset":6204,"endOffset":6881,"count":0}],"isBlockCoverage":false},{"functionName":"setPriority","ranges":[{"startOffset":6961,"endOffset":7250,"count":0}],"isBlockCoverage":false},{"functionName":"getPriority","ranges":[{"startOffset":7304,"endOffset":7559,"count":0}],"isBlockCoverage":false},{"functionName":"userInfo","ranges":[{"startOffset":7869,"endOffset":8095,"count":0}],"isBlockCoverage":false}]},{"scriptId":"101","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/createHandler.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1181,"count":1}],"isBlockCoverage":true},{"functionName":"createHandler","ranges":[{"startOffset":193,"endOffset":1149,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":319,"endOffset":1145,"count":37},{"startOffset":669,"endOffset":747,"count":0},{"startOffset":793,"endOffset":805,"count":33},{"startOffset":806,"endOffset":818,"count":4},{"startOffset":919,"endOffset":997,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1075,"endOffset":1139,"count":0}],"isBlockCoverage":false}]},{"scriptId":"102","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/waitUntil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":63,"endOffset":190,"count":886},{"startOffset":121,"endOffset":179,"count":879},{"startOffset":179,"endOffset":189,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":138,"endOffset":161,"count":879}],"isBlockCoverage":true}]},{"scriptId":"103","url":"util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8146,"count":1}],"isBlockCoverage":false},{"functionName":"isBoolean","ranges":[{"startOffset":2097,"endOffset":2159,"count":0}],"isBlockCoverage":false},{"functionName":"isNull","ranges":[{"startOffset":2161,"endOffset":2208,"count":0}],"isBlockCoverage":false},{"functionName":"isNullOrUndefined","ranges":[{"startOffset":2210,"endOffset":2289,"count":0}],"isBlockCoverage":false},{"functionName":"isNumber","ranges":[{"startOffset":2291,"endOffset":2351,"count":0}],"isBlockCoverage":false},{"functionName":"isString","ranges":[{"startOffset":2353,"endOffset":2413,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbol","ranges":[{"startOffset":2415,"endOffset":2475,"count":0}],"isBlockCoverage":false},{"functionName":"isUndefined","ranges":[{"startOffset":2477,"endOffset":2534,"count":0}],"isBlockCoverage":false},{"functionName":"isObject","ranges":[{"startOffset":2536,"endOffset":2612,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":2614,"endOffset":2717,"count":0}],"isBlockCoverage":false},{"functionName":"isFunction","ranges":[{"startOffset":2719,"endOffset":2783,"count":0}],"isBlockCoverage":false},{"functionName":"isPrimitive","ranges":[{"startOffset":2785,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":2906,"endOffset":2965,"count":0}],"isBlockCoverage":false},{"functionName":"timestamp","ranges":[{"startOffset":3104,"endOffset":3334,"count":0}],"isBlockCoverage":false},{"functionName":"log","ranges":[{"startOffset":3420,"endOffset":3573,"count":0}],"isBlockCoverage":false},{"functionName":"inherits","ranges":[{"startOffset":4309,"endOffset":4925,"count":0}],"isBlockCoverage":false},{"functionName":"_extend","ranges":[{"startOffset":4927,"endOffset":5215,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5263,"endOffset":5688,"count":0}],"isBlockCoverage":false},{"functionName":"callbackify","ranges":[{"startOffset":5692,"endOffset":7073,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7075,"endOffset":7291,"count":0}],"isBlockCoverage":false},{"functionName":"isDeepStrictEqual","ranges":[{"startOffset":7692,"endOffset":7897,"count":0}],"isBlockCoverage":false}]},{"scriptId":"104","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/replaceErrors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":283,"count":1}],"isBlockCoverage":true},{"functionName":"replaceErrors","ranges":[{"startOffset":0,"endOffset":251,"count":216},{"startOffset":68,"endOffset":232,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":139,"endOffset":207,"count":0}],"isBlockCoverage":false}]},{"scriptId":"105","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":307,"endOffset":546,"count":37},{"startOffset":434,"endOffset":451,"count":0}],"isBlockCoverage":true}]},{"scriptId":"106","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/formatDate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":146,"count":1}],"isBlockCoverage":true},{"functionName":"formatDate","ranges":[{"startOffset":0,"endOffset":117,"count":34}],"isBlockCoverage":true}]},{"scriptId":"107","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1239,"count":1}],"isBlockCoverage":true},{"functionName":"createTest","ranges":[{"startOffset":131,"endOffset":187,"count":3}],"isBlockCoverage":true},{"functionName":"createTest.skip","ranges":[{"startOffset":206,"endOffset":270,"count":0}],"isBlockCoverage":false},{"functionName":"createTest.only","ranges":[{"startOffset":290,"endOffset":354,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":444,"endOffset":1236,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":513,"endOffset":710,"count":3},{"startOffset":548,"endOffset":570,"count":0},{"startOffset":572,"endOffset":603,"count":0},{"startOffset":634,"endOffset":665,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":800,"endOffset":1232,"count":1},{"startOffset":895,"endOffset":935,"count":0},{"startOffset":982,"endOffset":1078,"count":0},{"startOffset":1115,"endOffset":1228,"count":0}],"isBlockCoverage":true}]},{"scriptId":"108","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/colorette/index.cjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2168,"count":1}],"isBlockCoverage":true},{"functionName":"raw","ranges":[{"startOffset":255,"endOffset":468,"count":41}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":299,"endOffset":468,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":483,"endOffset":626,"count":39}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":692,"endOffset":705,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":714,"endOffset":742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"109","url":"tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5057,"count":1}],"isBlockCoverage":false},{"functionName":"isatty","ranges":[{"startOffset":1534,"endOffset":1640,"count":2}],"isBlockCoverage":true},{"functionName":"ReadStream","ranges":[{"startOffset":1642,"endOffset":2126,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.setRawMode","ranges":[{"startOffset":2275,"endOffset":2491,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":2494,"endOffset":3460,"count":2},{"startOffset":2563,"endOffset":2590,"count":0},{"startOffset":2627,"endOffset":2656,"count":0},{"startOffset":2745,"endOffset":2790,"count":0}],"isBlockCoverage":true},{"functionName":"WriteStream._refreshSize","ranges":[{"startOffset":3751,"endOffset":4179,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.cursorTo","ranges":[{"startOffset":4235,"endOffset":4375,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.moveCursor","ranges":[{"startOffset":4412,"endOffset":4558,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearLine","ranges":[{"startOffset":4594,"endOffset":4733,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearScreenDown","ranges":[{"startOffset":4775,"endOffset":4910,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.getWindowSize","ranges":[{"startOffset":4950,"endOffset":5000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"110","url":"net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47106,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1448,"endOffset":1473,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3388,"endOffset":3406,"count":0}],"isBlockCoverage":false},{"functionName":"getFlags","ranges":[{"startOffset":3408,"endOffset":3502,"count":7},{"startOffset":3465,"endOffset":3495,"count":0}],"isBlockCoverage":true},{"functionName":"createHandle","ranges":[{"startOffset":3504,"endOffset":3885,"count":0}],"isBlockCoverage":false},{"functionName":"getNewAsyncId","ranges":[{"startOffset":3888,"endOffset":4026,"count":191},{"startOffset":3983,"endOffset":4001,"count":0}],"isBlockCoverage":true},{"functionName":"isPipeName","ranges":[{"startOffset":4029,"endOffset":4112,"count":7},{"startOffset":4085,"endOffset":4109,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":4114,"endOffset":4218,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":4441,"endOffset":4732,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeArgs","ranges":[{"startOffset":5227,"endOffset":5953,"count":67},{"startOffset":5295,"endOffset":5376,"count":0},{"startOffset":5453,"endOffset":5469,"count":60},{"startOffset":5471,"endOffset":5524,"count":60},{"startOffset":5524,"endOffset":5772,"count":7},{"startOffset":5552,"endOffset":5607,"count":0},{"startOffset":5699,"endOffset":5729,"count":0},{"startOffset":5731,"endOffset":5768,"count":0},{"startOffset":5846,"endOffset":5868,"count":7},{"startOffset":5868,"endOffset":5900,"count":60}],"isBlockCoverage":true},{"functionName":"initSocketHandle","ranges":[{"startOffset":6025,"endOffset":6628,"count":92},{"startOffset":6381,"endOffset":6622,"count":0}],"isBlockCoverage":true},{"functionName":"Socket","ranges":[{"startOffset":6763,"endOffset":10585,"count":92},{"startOffset":6823,"endOffset":6850,"count":0},{"startOffset":7400,"endOffset":7426,"count":0},{"startOffset":8078,"endOffset":9811,"count":0},{"startOffset":10167,"endOffset":10432,"count":90},{"startOffset":10200,"endOffset":10369,"count":0},{"startOffset":10401,"endOffset":10428,"count":30}],"isBlockCoverage":true},{"functionName":"_unrefTimer","ranges":[{"startOffset":10758,"endOffset":10888,"count":373},{"startOffset":10831,"endOffset":10886,"count":512},{"startOffset":10860,"endOffset":10882,"count":139}],"isBlockCoverage":true},{"functionName":"Socket._final","ranges":[{"startOffset":11008,"endOffset":11656,"count":30},{"startOffset":11122,"endOffset":11223,"count":0},{"startOffset":11250,"endOffset":11262,"count":0},{"startOffset":11540,"endOffset":11574,"count":0},{"startOffset":11601,"endOffset":11654,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11196,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"afterShutdown","ranges":[{"startOffset":11660,"endOffset":12039,"count":30},{"startOffset":11913,"endOffset":11920,"count":0},{"startOffset":11943,"endOffset":11964,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterFIN","ranges":[{"startOffset":12246,"endOffset":12702,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._onTimeout","ranges":[{"startOffset":12784,"endOffset":13288,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setNoDelay","ranges":[{"startOffset":13322,"endOffset":13771,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setKeepAlive","ranges":[{"startOffset":13807,"endOffset":14054,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":14085,"endOffset":14129,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14196,"endOffset":14240,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14300,"endOffset":14356,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14447,"endOffset":14762,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14831,"endOffset":14911,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14979,"endOffset":15024,"count":174}],"isBlockCoverage":true},{"functionName":"tryReadStart","ranges":[{"startOffset":15031,"endOffset":15277,"count":60},{"startOffset":15231,"endOffset":15275,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._read","ranges":[{"startOffset":15369,"endOffset":15598,"count":192},{"startOffset":15424,"endOffset":15440,"count":162},{"startOffset":15442,"endOffset":15534,"count":30},{"startOffset":15534,"endOffset":15596,"count":162},{"startOffset":15567,"endOffset":15596,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15509,"endOffset":15528,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.end","ranges":[{"startOffset":15625,"endOffset":15777,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.pause","ranges":[{"startOffset":15806,"endOffset":16140,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.resume","ranges":[{"startOffset":16170,"endOffset":16354,"count":60},{"startOffset":16203,"endOffset":16222,"count":0},{"startOffset":16223,"endOffset":16238,"count":0},{"startOffset":16239,"endOffset":16269,"count":0},{"startOffset":16271,"endOffset":16300,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.read","ranges":[{"startOffset":16382,"endOffset":16568,"count":312},{"startOffset":16416,"endOffset":16435,"count":0},{"startOffset":16436,"endOffset":16451,"count":0},{"startOffset":16452,"endOffset":16482,"count":0},{"startOffset":16484,"endOffset":16513,"count":0}],"isBlockCoverage":true},{"functionName":"onReadableStreamEnd","ranges":[{"startOffset":16615,"endOffset":16900,"count":30},{"startOffset":16749,"endOffset":16806,"count":0},{"startOffset":16810,"endOffset":16898,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.destroySoon","ranges":[{"startOffset":16934,"endOffset":17081,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._destroy","ranges":[{"startOffset":17113,"endOffset":18067,"count":90},{"startOffset":17236,"endOffset":17272,"count":120},{"startOffset":17410,"endOffset":17416,"count":0},{"startOffset":17817,"endOffset":17888,"count":0},{"startOffset":17910,"endOffset":18065,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17629,"endOffset":17708,"count":90}],"isBlockCoverage":true},{"functionName":"Socket._getpeername","ranges":[{"startOffset":18102,"endOffset":18393,"count":0}],"isBlockCoverage":false},{"functionName":"protoGetter","ranges":[{"startOffset":18396,"endOffset":18556,"count":8}],"isBlockCoverage":true},{"functionName":"bytesRead","ranges":[{"startOffset":18583,"endOffset":18674,"count":0}],"isBlockCoverage":false},{"functionName":"remoteAddress","ranges":[{"startOffset":18707,"endOffset":18773,"count":0}],"isBlockCoverage":false},{"functionName":"remoteFamily","ranges":[{"startOffset":18805,"endOffset":18869,"count":0}],"isBlockCoverage":false},{"functionName":"remotePort","ranges":[{"startOffset":18899,"endOffset":18959,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._getsockname","ranges":[{"startOffset":18996,"endOffset":19281,"count":0}],"isBlockCoverage":false},{"functionName":"localAddress","ranges":[{"startOffset":19313,"endOffset":19378,"count":0}],"isBlockCoverage":false},{"functionName":"localPort","ranges":[{"startOffset":19408,"endOffset":19467,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.","ranges":[{"startOffset":19509,"endOffset":19556,"count":72}],"isBlockCoverage":true},{"functionName":"Socket._writeGeneric","ranges":[{"startOffset":19592,"endOffset":20353,"count":109},{"startOffset":19814,"endOffset":20007,"count":0},{"startOffset":20088,"endOffset":20144,"count":0},{"startOffset":20198,"endOffset":20234,"count":2},{"startOffset":20234,"endOffset":20291,"count":107},{"startOffset":20313,"endOffset":20351,"count":72}],"isBlockCoverage":true},{"functionName":"connect","ranges":[{"startOffset":19909,"endOffset":19989,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._writev","ranges":[{"startOffset":20384,"endOffset":20452,"count":2}],"isBlockCoverage":true},{"functionName":"Socket._write","ranges":[{"startOffset":20482,"endOffset":20563,"count":107}],"isBlockCoverage":true},{"functionName":"_bytesDispatched","ranges":[{"startOffset":20756,"endOffset":20860,"count":0}],"isBlockCoverage":false},{"functionName":"bytesWritten","ranges":[{"startOffset":20892,"endOffset":21821,"count":0}],"isBlockCoverage":false},{"functionName":"checkBindError","ranges":[{"startOffset":21826,"endOffset":22625,"count":0}],"isBlockCoverage":false},{"functionName":"internalConnect","ranges":[{"startOffset":22628,"endOffset":24333,"count":30},{"startOffset":22883,"endOffset":23509,"count":0},{"startOffset":23829,"endOffset":23893,"count":0},{"startOffset":23897,"endOffset":24070,"count":0},{"startOffset":24083,"endOffset":24331,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.connect","ranges":[{"startOffset":24363,"endOffset":25667,"count":30},{"startOffset":24707,"endOffset":24739,"count":0},{"startOffset":24741,"endOffset":24772,"count":0},{"startOffset":24933,"endOffset":24969,"count":0},{"startOffset":24993,"endOffset":25077,"count":0},{"startOffset":25181,"endOffset":25315,"count":0},{"startOffset":25459,"endOffset":25602,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndConnect","ranges":[{"startOffset":25671,"endOffset":28698,"count":30},{"startOffset":25789,"endOffset":25803,"count":0},{"startOffset":25851,"endOffset":25873,"count":0},{"startOffset":25875,"endOffset":25932,"count":0},{"startOffset":25950,"endOffset":25982,"count":0},{"startOffset":25984,"endOffset":26067,"count":0},{"startOffset":26139,"endOffset":26166,"count":0},{"startOffset":26168,"endOffset":26294,"count":0},{"startOffset":26438,"endOffset":26742,"count":0},{"startOffset":26765,"endOffset":26804,"count":0},{"startOffset":26810,"endOffset":26922,"count":0},{"startOffset":26950,"endOffset":26971,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":26512,"endOffset":26724,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":27405,"endOffset":28694,"count":30}],"isBlockCoverage":true},{"functionName":"emitLookup","ranges":[{"startOffset":27444,"endOffset":28688,"count":30},{"startOffset":27732,"endOffset":27739,"count":0},{"startOffset":27756,"endOffset":28051,"count":0},{"startOffset":28072,"endOffset":28180,"count":0},{"startOffset":28208,"endOffset":28228,"count":0},{"startOffset":28230,"endOffset":28469,"count":0}],"isBlockCoverage":true},{"functionName":"connectErrorNT","ranges":[{"startOffset":28701,"endOffset":28760,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":28786,"endOffset":28973,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":29002,"endOffset":29195,"count":0}],"isBlockCoverage":false},{"functionName":"afterConnect","ranges":[{"startOffset":29199,"endOffset":30447,"count":30},{"startOffset":29369,"endOffset":29386,"count":0},{"startOffset":29552,"endOffset":29601,"count":0},{"startOffset":29638,"endOffset":29663,"count":0},{"startOffset":29919,"endOffset":30445,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":30450,"endOffset":31779,"count":7},{"startOffset":30534,"endOffset":30581,"count":0},{"startOffset":30648,"endOffset":30752,"count":0},{"startOffset":30953,"endOffset":31030,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":31123,"endOffset":31230,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":31363,"endOffset":31397,"count":0}],"isBlockCoverage":false},{"functionName":"toNumber","ranges":[{"startOffset":31890,"endOffset":31955,"count":14},{"startOffset":31945,"endOffset":31952,"count":0}],"isBlockCoverage":true},{"functionName":"createServerHandle","ranges":[{"startOffset":32023,"endOffset":33475,"count":7},{"startOffset":32239,"endOffset":32249,"count":0},{"startOffset":32251,"endOffset":32562,"count":0},{"startOffset":32584,"endOffset":32605,"count":0},{"startOffset":32607,"endOffset":32857,"count":0},{"startOffset":32945,"endOffset":32952,"count":0},{"startOffset":32953,"endOffset":32961,"count":0},{"startOffset":32994,"endOffset":33002,"count":0},{"startOffset":33023,"endOffset":33260,"count":0},{"startOffset":33344,"endOffset":33397,"count":0},{"startOffset":33414,"endOffset":33455,"count":0}],"isBlockCoverage":true},{"functionName":"setupListenHandle","ranges":[{"startOffset":33477,"endOffset":35828,"count":7},{"startOffset":33782,"endOffset":33842,"count":0},{"startOffset":34154,"endOffset":34246,"count":0},{"startOffset":34360,"endOffset":34425,"count":0},{"startOffset":34461,"endOffset":34608,"count":0},{"startOffset":35043,"endOffset":35401,"count":0},{"startOffset":35631,"endOffset":35644,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":35895,"endOffset":35957,"count":0}],"isBlockCoverage":false},{"functionName":"emitListeningNT","ranges":[{"startOffset":35960,"endOffset":36075,"count":7}],"isBlockCoverage":true},{"functionName":"listenInCluster","ranges":[{"startOffset":36078,"endOffset":37296,"count":7},{"startOffset":36254,"endOffset":36283,"count":1},{"startOffset":36308,"endOffset":36320,"count":0},{"startOffset":36566,"endOffset":37295,"count":0}],"isBlockCoverage":true},{"functionName":"listenOnMasterHandle","ranges":[{"startOffset":36811,"endOffset":37294,"count":0}],"isBlockCoverage":false},{"functionName":"Server.listen","ranges":[{"startOffset":37325,"endOffset":40823,"count":7},{"startOffset":37467,"endOffset":37515,"count":0},{"startOffset":37536,"endOffset":37573,"count":0},{"startOffset":37692,"endOffset":37702,"count":0},{"startOffset":37736,"endOffset":37746,"count":0},{"startOffset":37979,"endOffset":38142,"count":0},{"startOffset":38247,"endOffset":38265,"count":0},{"startOffset":38267,"endOffset":38363,"count":0},{"startOffset":38721,"endOffset":38741,"count":0},{"startOffset":38775,"endOffset":38802,"count":0},{"startOffset":39026,"endOffset":39061,"count":0},{"startOffset":39232,"endOffset":39357,"count":0},{"startOffset":39630,"endOffset":39798,"count":0},{"startOffset":39800,"endOffset":40621,"count":0},{"startOffset":40624,"endOffset":40822,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndListen","ranges":[{"startOffset":40826,"endOffset":41238,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":41301,"endOffset":41344,"count":0}],"isBlockCoverage":false},{"functionName":"Server.address","ranges":[{"startOffset":41419,"endOffset":41708,"count":0}],"isBlockCoverage":false},{"functionName":"onconnection","ranges":[{"startOffset":41711,"endOffset":42372,"count":30},{"startOffset":41852,"endOffset":41924,"count":0},{"startOffset":41952,"endOffset":41995,"count":0},{"startOffset":41997,"endOffset":42040,"count":0}],"isBlockCoverage":true},{"functionName":"Server.getConnections","ranges":[{"startOffset":42409,"endOffset":43162,"count":0}],"isBlockCoverage":false},{"functionName":"Server.close","ranges":[{"startOffset":43191,"endOffset":44058,"count":7},{"startOffset":43238,"endOffset":43413,"count":0},{"startOffset":43519,"endOffset":43997,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":43290,"endOffset":43358,"count":0}],"isBlockCoverage":false},{"functionName":"onWorkerClose","ranges":[{"startOffset":43584,"endOffset":43693,"count":0}],"isBlockCoverage":false},{"functionName":"Server._emitCloseIfDrained","ranges":[{"startOffset":44100,"endOffset":44486,"count":37},{"startOffset":44172,"endOffset":44192,"count":7},{"startOffset":44194,"endOffset":44306,"count":30},{"startOffset":44306,"endOffset":44485,"count":7}],"isBlockCoverage":true},{"functionName":"emitCloseNT","ranges":[{"startOffset":44490,"endOffset":44573,"count":7}],"isBlockCoverage":true},{"functionName":"Server.","ranges":[{"startOffset":44632,"endOffset":44794,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":44997,"endOffset":45033,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":45037,"endOffset":45078,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":45138,"endOffset":45169,"count":2729}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":45173,"endOffset":45209,"count":182}],"isBlockCoverage":true},{"functionName":"Server._setupWorker","ranges":[{"startOffset":45247,"endOffset":45473,"count":0}],"isBlockCoverage":false},{"functionName":"Server.ref","ranges":[{"startOffset":45499,"endOffset":45597,"count":0}],"isBlockCoverage":false},{"functionName":"Server.unref","ranges":[{"startOffset":45625,"endOffset":45724,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":45866,"endOffset":46535,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":46574,"endOffset":46815,"count":0}],"isBlockCoverage":false}]},{"scriptId":"111","url":"internal/stream_base_commons.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7120,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":987,"endOffset":1012,"count":1}],"isBlockCoverage":true},{"functionName":"handleWriteReq","ranges":[{"startOffset":1131,"endOffset":1986,"count":107},{"startOffset":1231,"endOffset":1398,"count":0},{"startOffset":1403,"endOffset":1417,"count":0},{"startOffset":1422,"endOffset":1486,"count":0},{"startOffset":1574,"endOffset":1636,"count":0},{"startOffset":1641,"endOffset":1653,"count":0},{"startOffset":1658,"endOffset":1671,"count":0},{"startOffset":1676,"endOffset":1691,"count":0},{"startOffset":1696,"endOffset":1760,"count":0},{"startOffset":1765,"endOffset":1980,"count":0}],"isBlockCoverage":true},{"functionName":"onWriteComplete","ranges":[{"startOffset":1988,"endOffset":2498,"count":72},{"startOffset":2141,"endOffset":2230,"count":0},{"startOffset":2250,"endOffset":2366,"count":0}],"isBlockCoverage":true},{"functionName":"createWriteWrap","ranges":[{"startOffset":2500,"endOffset":2701,"count":109}],"isBlockCoverage":true},{"functionName":"writevGeneric","ranges":[{"startOffset":2703,"endOffset":3344,"count":2},{"startOffset":2860,"endOffset":2957,"count":0},{"startOffset":3049,"endOffset":3162,"count":4}],"isBlockCoverage":true},{"functionName":"writeGeneric","ranges":[{"startOffset":3346,"endOffset":3553,"count":107}],"isBlockCoverage":true},{"functionName":"afterWriteDispatched","ranges":[{"startOffset":3555,"endOffset":3864,"count":109},{"startOffset":3728,"endOffset":3793,"count":0},{"startOffset":3813,"endOffset":3828,"count":37},{"startOffset":3828,"endOffset":3862,"count":72}],"isBlockCoverage":true},{"functionName":"onStreamRead","ranges":[{"startOffset":3866,"endOffset":5991,"count":102},{"startOffset":4060,"endOffset":4080,"count":72},{"startOffset":4082,"endOffset":4818,"count":72},{"startOffset":4167,"endOffset":4426,"count":0},{"startOffset":4610,"endOffset":4797,"count":0},{"startOffset":4818,"endOffset":4839,"count":30},{"startOffset":4839,"endOffset":4856,"count":0},{"startOffset":4856,"endOffset":4882,"count":30},{"startOffset":4882,"endOffset":5071,"count":0},{"startOffset":5071,"endOffset":5156,"count":30},{"startOffset":5156,"endOffset":5223,"count":0},{"startOffset":5223,"endOffset":5989,"count":30},{"startOffset":5268,"endOffset":5308,"count":0},{"startOffset":5594,"endOffset":5801,"count":0}],"isBlockCoverage":true},{"functionName":"setStreamTimeout","ranges":[{"startOffset":5993,"endOffset":6895,"count":60},{"startOffset":6064,"endOffset":6076,"count":0},{"startOffset":6382,"endOffset":6567,"count":30},{"startOffset":6468,"endOffset":6509,"count":0},{"startOffset":6567,"endOffset":6878,"count":30},{"startOffset":6672,"endOffset":6703,"count":0},{"startOffset":6789,"endOffset":6830,"count":0}],"isBlockCoverage":true}]},{"scriptId":"112","url":"internal/dtrace.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":568,"count":1}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_REQUEST","ranges":[{"startOffset":97,"endOffset":105,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_RESPONSE","ranges":[{"startOffset":139,"endOffset":147,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_REQUEST","ranges":[{"startOffset":180,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_RESPONSE","ranges":[{"startOffset":222,"endOffset":230,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_NET_SERVER_CONNECTION","ranges":[{"startOffset":265,"endOffset":273,"count":30}],"isBlockCoverage":true},{"functionName":"DTRACE_NET_STREAM_END","ranges":[{"startOffset":301,"endOffset":309,"count":30}],"isBlockCoverage":true}]},{"scriptId":"113","url":"internal/tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6292,"count":1}],"isBlockCoverage":false},{"functionName":"warnOnDeactivatedColors","ranges":[{"startOffset":2451,"endOffset":2903,"count":0}],"isBlockCoverage":false},{"functionName":"getColorDepth","ranges":[{"startOffset":3061,"endOffset":5813,"count":34},{"startOffset":3265,"endOffset":3623,"count":0},{"startOffset":3964,"endOffset":3990,"count":0},{"startOffset":4028,"endOffset":4570,"count":0},{"startOffset":4588,"endOffset":4616,"count":0},{"startOffset":4632,"endOffset":4816,"count":0},{"startOffset":4851,"endOffset":4956,"count":0},{"startOffset":4992,"endOffset":5161,"count":0},{"startOffset":5166,"endOffset":5183,"count":0},{"startOffset":5188,"endOffset":5228,"count":0},{"startOffset":5233,"endOffset":5280,"count":0},{"startOffset":5322,"endOffset":5350,"count":0},{"startOffset":5380,"endOffset":5812,"count":0}],"isBlockCoverage":true},{"functionName":"hasColors","ranges":[{"startOffset":5815,"endOffset":6239,"count":0}],"isBlockCoverage":false}]},{"scriptId":"114","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/runner.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5423,"count":1}],"isBlockCoverage":true},{"functionName":"indent","ranges":[{"startOffset":154,"endOffset":297,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":299,"endOffset":468,"count":3}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":348,"endOffset":410,"count":24}],"isBlockCoverage":true},{"functionName":"getLogData","ranges":[{"startOffset":448,"endOffset":461,"count":3}],"isBlockCoverage":true},{"functionName":"runner","ranges":[{"startOffset":470,"endOffset":5396,"count":1},{"startOffset":615,"endOffset":619,"count":0}],"isBlockCoverage":true},{"functionName":"testRunner","ranges":[{"startOffset":858,"endOffset":4788,"count":3}],"isBlockCoverage":true},{"functionName":"createAssert","ranges":[{"startOffset":1181,"endOffset":2522,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1264,"endOffset":2515,"count":21},{"startOffset":1465,"endOffset":1509,"count":0},{"startOffset":1770,"endOffset":1787,"count":0},{"startOffset":1802,"endOffset":2489,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":2528,"endOffset":3324,"count":21},{"startOffset":2603,"endOffset":2628,"count":18},{"startOffset":2628,"endOffset":2738,"count":3},{"startOffset":2738,"endOffset":3104,"count":0},{"startOffset":3104,"endOffset":3177,"count":3},{"startOffset":3177,"endOffset":3237,"count":0},{"startOffset":3237,"endOffset":3323,"count":3}],"isBlockCoverage":true},{"functionName":"plan","ranges":[{"startOffset":3348,"endOffset":3410,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3602,"endOffset":3650,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4972,"endOffset":5023,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5062,"endOffset":5070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5095,"endOffset":5392,"count":1}],"isBlockCoverage":true}]},{"scriptId":"115","url":"assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30746,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadComparison","ranges":[{"startOffset":2200,"endOffset":2384,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":2964,"endOffset":2996,"count":0}],"isBlockCoverage":false},{"functionName":"innerFail","ranges":[{"startOffset":3550,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"fail","ranges":[{"startOffset":3847,"endOffset":4826,"count":0}],"isBlockCoverage":false},{"functionName":"findColumn","ranges":[{"startOffset":4942,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"getCode","ranges":[{"startOffset":5884,"endOffset":7528,"count":0}],"isBlockCoverage":false},{"functionName":"parseCode","ranges":[{"startOffset":7530,"endOffset":9132,"count":0}],"isBlockCoverage":false},{"functionName":"getErrMessage","ranges":[{"startOffset":9134,"endOffset":11930,"count":0}],"isBlockCoverage":false},{"functionName":"innerOk","ranges":[{"startOffset":11932,"endOffset":12539,"count":4},{"startOffset":11993,"endOffset":12537,"count":0}],"isBlockCoverage":true},{"functionName":"ok","ranges":[{"startOffset":12672,"endOffset":12733,"count":4}],"isBlockCoverage":true},{"functionName":"equal","ranges":[{"startOffset":12992,"endOffset":13363,"count":0}],"isBlockCoverage":false},{"functionName":"notEqual","ranges":[{"startOffset":13582,"endOffset":13957,"count":0}],"isBlockCoverage":false},{"functionName":"deepEqual","ranges":[{"startOffset":14157,"endOffset":14521,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepEqual","ranges":[{"startOffset":14727,"endOffset":15099,"count":0}],"isBlockCoverage":false},{"functionName":"deepStrictEqual","ranges":[{"startOffset":15342,"endOffset":15730,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepStrictEqual","ranges":[{"startOffset":15979,"endOffset":16375,"count":0}],"isBlockCoverage":false},{"functionName":"strictEqual","ranges":[{"startOffset":16580,"endOffset":16892,"count":17},{"startOffset":16658,"endOffset":16717,"count":0},{"startOffset":16753,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"notStrictEqual","ranges":[{"startOffset":17104,"endOffset":17424,"count":0}],"isBlockCoverage":false},{"functionName":"Comparison","ranges":[{"startOffset":17448,"endOffset":17821,"count":0}],"isBlockCoverage":false},{"functionName":"compareExceptionKey","ranges":[{"startOffset":17825,"endOffset":18542,"count":0}],"isBlockCoverage":false},{"functionName":"expectedException","ranges":[{"startOffset":18544,"endOffset":21902,"count":0}],"isBlockCoverage":false},{"functionName":"getActual","ranges":[{"startOffset":21904,"endOffset":22110,"count":0}],"isBlockCoverage":false},{"functionName":"checkIsPromise","ranges":[{"startOffset":22112,"endOffset":22476,"count":0}],"isBlockCoverage":false},{"functionName":"waitForActual","ranges":[{"startOffset":22478,"endOffset":23192,"count":0}],"isBlockCoverage":false},{"functionName":"expectsError","ranges":[{"startOffset":23194,"endOffset":24808,"count":0}],"isBlockCoverage":false},{"functionName":"hasMatchingError","ranges":[{"startOffset":24810,"endOffset":25407,"count":0}],"isBlockCoverage":false},{"functionName":"expectsNoError","ranges":[{"startOffset":25409,"endOffset":26059,"count":0}],"isBlockCoverage":false},{"functionName":"throws","ranges":[{"startOffset":26217,"endOffset":26311,"count":0}],"isBlockCoverage":false},{"functionName":"rejects","ranges":[{"startOffset":26490,"endOffset":26602,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotThrow","ranges":[{"startOffset":26764,"endOffset":26858,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotReject","ranges":[{"startOffset":27024,"endOffset":27136,"count":0}],"isBlockCoverage":false},{"functionName":"ifError","ranges":[{"startOffset":27264,"endOffset":28633,"count":0}],"isBlockCoverage":false},{"functionName":"internalMatch","ranges":[{"startOffset":28636,"endOffset":29708,"count":0}],"isBlockCoverage":false},{"functionName":"match","ranges":[{"startOffset":29904,"endOffset":29996,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotMatch","ranges":[{"startOffset":30204,"endOffset":30310,"count":0}],"isBlockCoverage":false},{"functionName":"strict","ranges":[{"startOffset":30442,"endOffset":30511,"count":0}],"isBlockCoverage":false}]},{"scriptId":"116","url":"internal/assert/assertion_error.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":17019,"count":1}],"isBlockCoverage":false},{"functionName":"copyError","ranges":[{"startOffset":1418,"endOffset":1694,"count":0}],"isBlockCoverage":false},{"functionName":"inspectValue","ranges":[{"startOffset":1696,"endOffset":2303,"count":0}],"isBlockCoverage":false},{"functionName":"createErrDiff","ranges":[{"startOffset":2305,"endOffset":10859,"count":0}],"isBlockCoverage":false},{"functionName":"AssertionError","ranges":[{"startOffset":10900,"endOffset":15822,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":15826,"endOffset":15901,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15905,"endOffset":16982,"count":0}],"isBlockCoverage":false}]},{"scriptId":"117","url":"internal/assert/calltracker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2344,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":395,"endOffset":422,"count":0}],"isBlockCoverage":false},{"functionName":"calls","ranges":[{"startOffset":426,"endOffset":1443,"count":0}],"isBlockCoverage":false},{"functionName":"report","ranges":[{"startOffset":1447,"endOffset":2078,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":2082,"endOffset":2310,"count":0}],"isBlockCoverage":false}]},{"scriptId":"118","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/concurrun/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1562,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":17,"endOffset":1561,"count":1},{"startOffset":112,"endOffset":187,"count":0},{"startOffset":234,"endOffset":240,"count":0}],"isBlockCoverage":true},{"functionName":"getRate","ranges":[{"startOffset":243,"endOffset":304,"count":9}],"isBlockCoverage":true},{"functionName":"runNext","ranges":[{"startOffset":400,"endOffset":879,"count":9}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":543,"endOffset":862,"count":9},{"startOffset":598,"endOffset":667,"count":0},{"startOffset":711,"endOffset":727,"count":4},{"startOffset":728,"endOffset":848,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":892,"endOffset":1558,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":923,"endOffset":1551,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1061,"endOffset":1515,"count":3},{"startOffset":1111,"endOffset":1178,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1225,"endOffset":1498,"count":3}],"isBlockCoverage":true}]},{"scriptId":"119","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/righto/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15767,"count":1},{"startOffset":137,"endOffset":159,"count":0},{"startOffset":15701,"endOffset":15741,"count":18}],"isBlockCoverage":true},{"functionName":"isRighto","ranges":[{"startOffset":162,"endOffset":265,"count":21},{"startOffset":219,"endOffset":262,"count":17}],"isBlockCoverage":true},{"functionName":"isThenable","ranges":[{"startOffset":267,"endOffset":354,"count":6},{"startOffset":336,"endOffset":351,"count":3}],"isBlockCoverage":true},{"functionName":"isResolvable","ranges":[{"startOffset":356,"endOffset":424,"count":6},{"startOffset":405,"endOffset":421,"count":3}],"isBlockCoverage":true},{"functionName":"isTake","ranges":[{"startOffset":426,"endOffset":505,"count":3},{"startOffset":484,"endOffset":502,"count":0}],"isBlockCoverage":true},{"functionName":"getCallLine","ranges":[{"startOffset":576,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"takeWrap","ranges":[{"startOffset":847,"endOffset":904,"count":0}],"isBlockCoverage":false},{"functionName":"take","ranges":[{"startOffset":906,"endOffset":1253,"count":0}],"isBlockCoverage":false},{"functionName":"resolveDependency","ranges":[{"startOffset":1255,"endOffset":1826,"count":3},{"startOffset":1319,"endOffset":1363,"count":0},{"startOffset":1421,"endOffset":1566,"count":0},{"startOffset":1567,"endOffset":1597,"count":0},{"startOffset":1598,"endOffset":1626,"count":0},{"startOffset":1627,"endOffset":1656,"count":0},{"startOffset":1662,"endOffset":1825,"count":0}],"isBlockCoverage":true},{"functionName":"traceGet","ranges":[{"startOffset":1828,"endOffset":2088,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2090,"endOffset":2393,"count":0}],"isBlockCoverage":false},{"functionName":"noOp","ranges":[{"startOffset":2406,"endOffset":2418,"count":0}],"isBlockCoverage":false},{"functionName":"proxy","ranges":[{"startOffset":2421,"endOffset":3114,"count":0}],"isBlockCoverage":false},{"functionName":"createIterator","ranges":[{"startOffset":3116,"endOffset":4145,"count":0}],"isBlockCoverage":false},{"functionName":"addTracing","ranges":[{"startOffset":4147,"endOffset":5488,"count":0}],"isBlockCoverage":false},{"functionName":"errorOut","ranges":[{"startOffset":5490,"endOffset":5766,"count":0}],"isBlockCoverage":false},{"functionName":"debugResolve","ranges":[{"startOffset":5768,"endOffset":6045,"count":0}],"isBlockCoverage":false},{"functionName":"resolveWithDependencies","ranges":[{"startOffset":6047,"endOffset":7514,"count":4},{"startOffset":6144,"endOffset":6346,"count":0},{"startOffset":6988,"endOffset":7042,"count":0},{"startOffset":7155,"endOffset":7191,"count":0},{"startOffset":7204,"endOffset":7249,"count":3},{"startOffset":7262,"endOffset":7316,"count":0},{"startOffset":7329,"endOffset":7392,"count":1},{"startOffset":7405,"endOffset":7496,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6381,"endOffset":6589,"count":6},{"startOffset":6422,"endOffset":6449,"count":3},{"startOffset":6450,"endOffset":6518,"count":0}],"isBlockCoverage":true},{"functionName":"complete","ranges":[{"startOffset":6601,"endOffset":6965,"count":4},{"startOffset":6644,"endOffset":6660,"count":0},{"startOffset":6661,"endOffset":6716,"count":0}],"isBlockCoverage":true},{"functionName":"resolveDependencies","ranges":[{"startOffset":7516,"endOffset":8287,"count":4},{"startOffset":7662,"endOffset":7697,"count":0},{"startOffset":8070,"endOffset":8285,"count":6},{"startOffset":8106,"endOffset":8125,"count":3},{"startOffset":8126,"endOffset":8285,"count":3}],"isBlockCoverage":true},{"functionName":"dependencyResolved","ranges":[{"startOffset":7703,"endOffset":8028,"count":6},{"startOffset":7776,"endOffset":7807,"count":0},{"startOffset":7826,"endOffset":7904,"count":0},{"startOffset":7974,"endOffset":8022,"count":4}],"isBlockCoverage":true},{"functionName":"resolver","ranges":[{"startOffset":8289,"endOffset":9506,"count":4},{"startOffset":8407,"endOffset":8439,"count":0},{"startOffset":8467,"endOffset":8570,"count":0},{"startOffset":8610,"endOffset":8673,"count":0},{"startOffset":8698,"endOffset":8784,"count":0},{"startOffset":8912,"endOffset":8951,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8813,"endOffset":8883,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8839,"endOffset":8876,"count":4}],"isBlockCoverage":true},{"functionName":"dependenciesResolved","ranges":[{"startOffset":8973,"endOffset":9285,"count":4},{"startOffset":9046,"endOffset":9235,"count":0}],"isBlockCoverage":true},{"functionName":"thenMethod","ranges":[{"startOffset":9509,"endOffset":9685,"count":0}],"isBlockCoverage":false},{"functionName":"catchMethod","ranges":[{"startOffset":9687,"endOffset":9834,"count":0}],"isBlockCoverage":false},{"functionName":"finallyMethod","ranges":[{"startOffset":9836,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"righto","ranges":[{"startOffset":9985,"endOffset":10814,"count":4},{"startOffset":10097,"endOffset":10166,"count":0},{"startOffset":10188,"endOffset":10206,"count":0},{"startOffset":10207,"endOffset":10288,"count":0},{"startOffset":10745,"endOffset":10791,"count":0}],"isBlockCoverage":true},{"functionName":"righto.sync","ranges":[{"startOffset":10830,"endOffset":11156,"count":0}],"isBlockCoverage":false},{"functionName":"righto.all","ranges":[{"startOffset":11172,"endOffset":11622,"count":1},{"startOffset":11239,"endOffset":11279,"count":0},{"startOffset":11489,"endOffset":11593,"count":0}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":11285,"endOffset":11465,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11345,"endOffset":11442,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11513,"endOffset":11579,"count":0}],"isBlockCoverage":false},{"functionName":"righto.reduce","ranges":[{"startOffset":11641,"endOffset":12347,"count":0}],"isBlockCoverage":false},{"functionName":"righto.from","ranges":[{"startOffset":12364,"endOffset":12716,"count":0}],"isBlockCoverage":false},{"functionName":"righto.mate","ranges":[{"startOffset":12733,"endOffset":12915,"count":0}],"isBlockCoverage":false},{"functionName":"righto.take","ranges":[{"startOffset":12932,"endOffset":13086,"count":0}],"isBlockCoverage":false},{"functionName":"righto.after","ranges":[{"startOffset":13104,"endOffset":13352,"count":0}],"isBlockCoverage":false},{"functionName":"righto.resolve","ranges":[{"startOffset":13372,"endOffset":14272,"count":0}],"isBlockCoverage":false},{"functionName":"righto.value","ranges":[{"startOffset":14324,"endOffset":14459,"count":0}],"isBlockCoverage":false},{"functionName":"righto.surely","ranges":[{"startOffset":14478,"endOffset":14711,"count":0}],"isBlockCoverage":false},{"functionName":"righto.handle","ranges":[{"startOffset":14730,"endOffset":15022,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fail","ranges":[{"startOffset":15039,"endOffset":15134,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fork","ranges":[{"startOffset":15151,"endOffset":15383,"count":0}],"isBlockCoverage":false},{"functionName":"righto.proxy","ranges":[{"startOffset":15498,"endOffset":15676,"count":0}],"isBlockCoverage":false}]},{"scriptId":"120","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/abbott/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":757,"count":1}],"isBlockCoverage":true},{"functionName":"checkIfPromise","ranges":[{"startOffset":0,"endOffset":221,"count":0}],"isBlockCoverage":false},{"functionName":"abbott","ranges":[{"startOffset":240,"endOffset":756,"count":0}],"isBlockCoverage":false}]},{"scriptId":"121","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/setimmediate/setImmediate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6473,"count":1},{"startOffset":6447,"endOffset":6453,"count":0},{"startOffset":6463,"endOffset":6469,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1,"endOffset":6386,"count":1},{"startOffset":103,"endOffset":5529,"count":0},{"startOffset":5555,"endOffset":5577,"count":0},{"startOffset":5578,"endOffset":5588,"count":0},{"startOffset":5589,"endOffset":5597,"count":0},{"startOffset":5722,"endOffset":6385,"count":0}],"isBlockCoverage":true},{"functionName":"setImmediate","ranges":[{"startOffset":290,"endOffset":853,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":859,"endOffset":936,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":942,"endOffset":1442,"count":0}],"isBlockCoverage":false},{"functionName":"runIfPresent","ranges":[{"startOffset":1448,"endOffset":2272,"count":0}],"isBlockCoverage":false},{"functionName":"installNextTickImplementation","ranges":[{"startOffset":2278,"endOffset":2453,"count":0}],"isBlockCoverage":false},{"functionName":"canUsePostMessage","ranges":[{"startOffset":2459,"endOffset":3131,"count":0}],"isBlockCoverage":false},{"functionName":"installPostMessageImplementation","ranges":[{"startOffset":3137,"endOffset":4126,"count":0}],"isBlockCoverage":false},{"functionName":"installMessageChannelImplementation","ranges":[{"startOffset":4132,"endOffset":4470,"count":0}],"isBlockCoverage":false},{"functionName":"installReadyStateChangeImplementation","ranges":[{"startOffset":4476,"endOffset":5181,"count":0}],"isBlockCoverage":false},{"functionName":"installSetTimeoutImplementation","ranges":[{"startOffset":5187,"endOffset":5344,"count":0}],"isBlockCoverage":false}]},{"scriptId":"122","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1765,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":146,"endOffset":186,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":257,"endOffset":298,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":369,"endOffset":410,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":481,"endOffset":522,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":594,"endOffset":636,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":712,"endOffset":758,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":835,"endOffset":882,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":960,"endOffset":1008,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1082,"endOffset":1126,"count":2}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":1670,"endOffset":1765,"count":9},{"startOffset":1744,"endOffset":1762,"count":0}],"isBlockCoverage":true}]},{"scriptId":"123","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3618,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v1","ranges":[{"startOffset":627,"endOffset":3570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"124","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/rng.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":549,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":162,"endOffset":257,"count":1},{"startOffset":230,"endOffset":235,"count":0}],"isBlockCoverage":true},{"functionName":"rng","ranges":[{"startOffset":370,"endOffset":549,"count":10},{"startOffset":426,"endOffset":496,"count":1}],"isBlockCoverage":true}]},{"scriptId":"125","url":"crypto.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7347,"count":1}],"isBlockCoverage":false},{"functionName":"createHash","ranges":[{"startOffset":3138,"endOffset":3220,"count":7}],"isBlockCoverage":true},{"functionName":"createCipher","ranges":[{"startOffset":3222,"endOffset":3322,"count":0}],"isBlockCoverage":false},{"functionName":"createCipheriv","ranges":[{"startOffset":3324,"endOffset":3426,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipher","ranges":[{"startOffset":3428,"endOffset":3532,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipheriv","ranges":[{"startOffset":3534,"endOffset":3640,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellman","ranges":[{"startOffset":3642,"endOffset":3798,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellmanGroup","ranges":[{"startOffset":3800,"endOffset":3882,"count":0}],"isBlockCoverage":false},{"functionName":"createECDH","ranges":[{"startOffset":3884,"endOffset":3940,"count":0}],"isBlockCoverage":false},{"functionName":"createHmac","ranges":[{"startOffset":3942,"endOffset":4024,"count":0}],"isBlockCoverage":false},{"functionName":"createSign","ranges":[{"startOffset":4026,"endOffset":4108,"count":0}],"isBlockCoverage":false},{"functionName":"createVerify","ranges":[{"startOffset":4110,"endOffset":4196,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsDisabled","ranges":[{"startOffset":5216,"endOffset":5289,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsForced","ranges":[{"startOffset":5291,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsDisabled","ranges":[{"startOffset":5381,"endOffset":5423,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsForced","ranges":[{"startOffset":5425,"endOffset":5465,"count":0}],"isBlockCoverage":false}]},{"scriptId":"126","url":"internal/crypto/random.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9108,"count":1}],"isBlockCoverage":false},{"functionName":"assertOffset","ranges":[{"startOffset":751,"endOffset":1117,"count":1},{"startOffset":986,"endOffset":1068,"count":0}],"isBlockCoverage":true},{"functionName":"assertSize","ranges":[{"startOffset":1119,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"randomBytes","ranges":[{"startOffset":1582,"endOffset":2136,"count":0}],"isBlockCoverage":false},{"functionName":"randomFillSync","ranges":[{"startOffset":2138,"endOffset":2613,"count":1},{"startOffset":2218,"endOffset":2290,"count":0},{"startOffset":2336,"endOffset":2340,"count":0},{"startOffset":2473,"endOffset":2550,"count":0}],"isBlockCoverage":true},{"functionName":"randomFill","ranges":[{"startOffset":2615,"endOffset":3592,"count":0}],"isBlockCoverage":false},{"functionName":"randomInt","ranges":[{"startOffset":3830,"endOffset":5710,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":5712,"endOffset":5779,"count":1},{"startOffset":5754,"endOffset":5763,"count":0}],"isBlockCoverage":true},{"functionName":"getBufferedUUID","ranges":[{"startOffset":6241,"endOffset":6598,"count":0}],"isBlockCoverage":false},{"functionName":"randomUUID","ranges":[{"startOffset":6600,"endOffset":9010,"count":0}],"isBlockCoverage":false}]},{"scriptId":"127","url":"internal/crypto/pbkdf2.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2373,"count":1}],"isBlockCoverage":false},{"functionName":"pbkdf2","ranges":[{"startOffset":471,"endOffset":1342,"count":0}],"isBlockCoverage":false},{"functionName":"pbkdf2Sync","ranges":[{"startOffset":1344,"endOffset":1755,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":1757,"endOffset":2160,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":2162,"endOffset":2326,"count":0}],"isBlockCoverage":false}]},{"scriptId":"128","url":"internal/crypto/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2336,"count":1}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":704,"endOffset":765,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultEncoding","ranges":[{"startOffset":767,"endOffset":826,"count":7}],"isBlockCoverage":true},{"functionName":"toBuf","ranges":[{"startOffset":1001,"endOffset":1180,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1214,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1291,"endOffset":1333,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1367,"endOffset":1409,"count":0}],"isBlockCoverage":false},{"functionName":"setEngine","ranges":[{"startOffset":1413,"endOffset":1779,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1824,"endOffset":2172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"129","url":"internal/crypto/scrypt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3695,"count":1}],"isBlockCoverage":false},{"functionName":"scrypt","ranges":[{"startOffset":587,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"scryptSync","ranges":[{"startOffset":1426,"endOffset":1851,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1853,"endOffset":2095,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":2097,"endOffset":3652,"count":0}],"isBlockCoverage":false}]},{"scriptId":"130","url":"internal/crypto/keygen.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10082,"count":1}],"isBlockCoverage":false},{"functionName":"wrapKey","ranges":[{"startOffset":954,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPair","ranges":[{"startOffset":1084,"endOffset":1739,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPairSync","ranges":[{"startOffset":1865,"endOffset":1979,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1981,"endOffset":2324,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":2326,"endOffset":3450,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":3452,"endOffset":10021,"count":0}],"isBlockCoverage":false}]},{"scriptId":"131","url":"internal/crypto/keys.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1513,"endOffset":3483,"count":1}],"isBlockCoverage":true},{"functionName":"KeyObject","ranges":[{"startOffset":1623,"endOffset":2139,"count":0}],"isBlockCoverage":false},{"functionName":"get type","ranges":[{"startOffset":2145,"endOffset":2192,"count":0}],"isBlockCoverage":false},{"functionName":"SecretKeyObject","ranges":[{"startOffset":2246,"endOffset":2304,"count":0}],"isBlockCoverage":false},{"functionName":"get symmetricKeySize","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2396,"endOffset":2449,"count":0}],"isBlockCoverage":false},{"functionName":"get asymmetricKeyType","ranges":[{"startOffset":2567,"endOffset":2719,"count":0}],"isBlockCoverage":false},{"functionName":"PublicKeyObject","ranges":[{"startOffset":2783,"endOffset":2841,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2847,"endOffset":3031,"count":0}],"isBlockCoverage":false},{"functionName":"PrivateKeyObject","ranges":[{"startOffset":3096,"endOffset":3155,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":3161,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormat","ranges":[{"startOffset":3487,"endOffset":3814,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyType","ranges":[{"startOffset":3816,"endOffset":4668,"count":0}],"isBlockCoverage":false},{"functionName":"option","ranges":[{"startOffset":4670,"endOffset":4766,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormatAndType","ranges":[{"startOffset":4768,"endOffset":5362,"count":0}],"isBlockCoverage":false},{"functionName":"isStringOrBuffer","ranges":[{"startOffset":5364,"endOffset":5458,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":5460,"endOffset":6760,"count":0}],"isBlockCoverage":false},{"functionName":"parsePublicKeyEncoding","ranges":[{"startOffset":6959,"endOffset":7095,"count":0}],"isBlockCoverage":false},{"functionName":"parsePrivateKeyEncoding","ranges":[{"startOffset":7295,"endOffset":7411,"count":0}],"isBlockCoverage":false},{"functionName":"getKeyObjectHandle","ranges":[{"startOffset":7413,"endOffset":7975,"count":0}],"isBlockCoverage":false},{"functionName":"prepareAsymmetricKey","ranges":[{"startOffset":7977,"endOffset":9223,"count":0}],"isBlockCoverage":false},{"functionName":"preparePrivateKey","ranges":[{"startOffset":9225,"endOffset":9313,"count":0}],"isBlockCoverage":false},{"functionName":"preparePublicOrPrivateKey","ranges":[{"startOffset":9315,"endOffset":9410,"count":0}],"isBlockCoverage":false},{"functionName":"prepareSecretKey","ranges":[{"startOffset":9412,"endOffset":9903,"count":0}],"isBlockCoverage":false},{"functionName":"createSecretKey","ranges":[{"startOffset":9905,"endOffset":10190,"count":0}],"isBlockCoverage":false},{"functionName":"createPublicKey","ranges":[{"startOffset":10192,"endOffset":10429,"count":0}],"isBlockCoverage":false},{"functionName":"createPrivateKey","ranges":[{"startOffset":10431,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"isKeyObject","ranges":[{"startOffset":10702,"endOffset":10766,"count":0}],"isBlockCoverage":false}]},{"scriptId":"132","url":"internal/crypto/diffiehellman.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8338,"count":1}],"isBlockCoverage":false},{"functionName":"DiffieHellman","ranges":[{"startOffset":970,"endOffset":2743,"count":0}],"isBlockCoverage":false},{"functionName":"DiffieHellmanGroup","ranges":[{"startOffset":2746,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"dhGenerateKeys","ranges":[{"startOffset":3161,"endOffset":3323,"count":0}],"isBlockCoverage":false},{"functionName":"dhComputeSecret","ranges":[{"startOffset":3437,"endOffset":3761,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrime","ranges":[{"startOffset":3860,"endOffset":4016,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetGenerator","ranges":[{"startOffset":4127,"endOffset":4299,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPublicKey","ranges":[{"startOffset":4410,"endOffset":4570,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrivateKey","ranges":[{"startOffset":4684,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"setPublicKey","ranges":[{"startOffset":4888,"endOffset":5042,"count":0}],"isBlockCoverage":false},{"functionName":"setPrivateKey","ranges":[{"startOffset":5086,"endOffset":5242,"count":0}],"isBlockCoverage":false},{"functionName":"ECDH","ranges":[{"startOffset":5246,"endOffset":5400,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeys","ranges":[{"startOffset":5711,"endOffset":5833,"count":0}],"isBlockCoverage":false},{"functionName":"getPublicKey","ranges":[{"startOffset":5866,"endOffset":6064,"count":0}],"isBlockCoverage":false},{"functionName":"convertKey","ranges":[{"startOffset":6085,"endOffset":6603,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":6606,"endOffset":6741,"count":0}],"isBlockCoverage":false},{"functionName":"getFormat","ranges":[{"startOffset":6743,"endOffset":7066,"count":0}],"isBlockCoverage":false},{"functionName":"diffieHellman","ranges":[{"startOffset":7136,"endOffset":8251,"count":0}],"isBlockCoverage":false}]},{"scriptId":"133","url":"internal/crypto/cipher.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8473,"count":1}],"isBlockCoverage":false},{"functionName":"rsaFunctionFor","ranges":[{"startOffset":1054,"endOffset":1914,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1122,"endOffset":1911,"count":0}],"isBlockCoverage":false},{"functionName":"getDecoder","ranges":[{"startOffset":2415,"endOffset":2732,"count":0}],"isBlockCoverage":false},{"functionName":"getUIntOption","ranges":[{"startOffset":2734,"endOffset":2955,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherBase","ranges":[{"startOffset":2957,"endOffset":3366,"count":0}],"isBlockCoverage":false},{"functionName":"createCipher","ranges":[{"startOffset":3368,"endOffset":3590,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherWithIV","ranges":[{"startOffset":3592,"endOffset":3851,"count":0}],"isBlockCoverage":false},{"functionName":"Cipher","ranges":[{"startOffset":3853,"endOffset":4043,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":4186,"endOffset":4302,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":4331,"endOffset":4469,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":4498,"endOffset":5148,"count":0}],"isBlockCoverage":false},{"functionName":"final","ranges":[{"startOffset":5177,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"setAutoPadding","ranges":[{"startOffset":5518,"endOffset":5665,"count":0}],"isBlockCoverage":false},{"functionName":"getAuthTag","ranges":[{"startOffset":5698,"endOffset":5858,"count":0}],"isBlockCoverage":false},{"functionName":"setAuthTag","ranges":[{"startOffset":5862,"endOffset":6205,"count":0}],"isBlockCoverage":false},{"functionName":"setAAD","ranges":[{"startOffset":6233,"endOffset":6660,"count":0}],"isBlockCoverage":false},{"functionName":"Cipheriv","ranges":[{"startOffset":6663,"endOffset":6862,"count":0}],"isBlockCoverage":false},{"functionName":"addCipherPrototypeFunctions","ranges":[{"startOffset":6864,"endOffset":7455,"count":3},{"startOffset":7260,"endOffset":7333,"count":1},{"startOffset":7333,"endOffset":7395,"count":2}],"isBlockCoverage":true},{"functionName":"Decipher","ranges":[{"startOffset":7611,"endOffset":7808,"count":0}],"isBlockCoverage":false},{"functionName":"Decipheriv","ranges":[{"startOffset":7965,"endOffset":8171,"count":0}],"isBlockCoverage":false}]},{"scriptId":"134","url":"internal/streams/lazy_transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1669,"count":1}],"isBlockCoverage":false},{"functionName":"LazyTransform","ranges":[{"startOffset":468,"endOffset":530,"count":7}],"isBlockCoverage":true},{"functionName":"makeGetter","ranges":[{"startOffset":662,"endOffset":970,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":699,"endOffset":967,"count":0}],"isBlockCoverage":false},{"functionName":"makeSetter","ranges":[{"startOffset":972,"endOffset":1167,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1009,"endOffset":1164,"count":0}],"isBlockCoverage":false}]},{"scriptId":"135","url":"internal/crypto/sig.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5946,"count":1}],"isBlockCoverage":false},{"functionName":"Sign","ranges":[{"startOffset":729,"endOffset":977,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":1100,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1219,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"getPadding","ranges":[{"startOffset":1583,"endOffset":1658,"count":0}],"isBlockCoverage":false},{"functionName":"getSaltLength","ranges":[{"startOffset":1660,"endOffset":1741,"count":0}],"isBlockCoverage":false},{"functionName":"getDSASignatureEncoding","ranges":[{"startOffset":1743,"endOffset":2087,"count":0}],"isBlockCoverage":false},{"functionName":"getIntOption","ranges":[{"startOffset":2089,"endOffset":2321,"count":0}],"isBlockCoverage":false},{"functionName":"sign","ranges":[{"startOffset":2345,"endOffset":3008,"count":0}],"isBlockCoverage":false},{"functionName":"signOneShot","ranges":[{"startOffset":3011,"endOffset":3809,"count":0}],"isBlockCoverage":false},{"functionName":"Verify","ranges":[{"startOffset":3811,"endOffset":4067,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":4295,"endOffset":4929,"count":0}],"isBlockCoverage":false},{"functionName":"verifyOneShot","ranges":[{"startOffset":4932,"endOffset":5873,"count":0}],"isBlockCoverage":false}]},{"scriptId":"136","url":"internal/crypto/hash.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3801,"count":1}],"isBlockCoverage":false},{"functionName":"Hash","ranges":[{"startOffset":764,"endOffset":1272,"count":7},{"startOffset":835,"endOffset":871,"count":0},{"startOffset":998,"endOffset":1017,"count":0},{"startOffset":1018,"endOffset":1044,"count":0},{"startOffset":1090,"endOffset":1137,"count":0}],"isBlockCoverage":true},{"functionName":"copy","ranges":[{"startOffset":1403,"endOffset":1571,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":1602,"endOffset":1707,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":1734,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1841,"endOffset":2353,"count":7},{"startOffset":1982,"endOffset":2020,"count":0},{"startOffset":2097,"endOffset":2243,"count":0},{"startOffset":2294,"endOffset":2336,"count":0}],"isBlockCoverage":true},{"functionName":"digest","ranges":[{"startOffset":2381,"endOffset":2726,"count":7},{"startOffset":2474,"endOffset":2512,"count":0},{"startOffset":2547,"endOffset":2570,"count":0}],"isBlockCoverage":true},{"functionName":"Hmac","ranges":[{"startOffset":2730,"endOffset":3058,"count":0}],"isBlockCoverage":false},{"functionName":"digest","ranges":[{"startOffset":3239,"endOffset":3658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"137","url":"internal/crypto/certificate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1119,"count":1}],"isBlockCoverage":false},{"functionName":"verifySpkac","ranges":[{"startOffset":247,"endOffset":345,"count":0}],"isBlockCoverage":false},{"functionName":"exportPublicKey","ranges":[{"startOffset":347,"endOffset":476,"count":0}],"isBlockCoverage":false},{"functionName":"exportChallenge","ranges":[{"startOffset":478,"endOffset":607,"count":0}],"isBlockCoverage":false},{"functionName":"Certificate","ranges":[{"startOffset":695,"endOffset":789,"count":0}],"isBlockCoverage":false}]},{"scriptId":"138","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/stringify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1667,"count":1},{"startOffset":442,"endOffset":499,"count":256}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":501,"endOffset":1612,"count":10},{"startOffset":1537,"endOffset":1594,"count":0}],"isBlockCoverage":true}]},{"scriptId":"139","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/validate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":410,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":168,"endOffset":263,"count":1},{"startOffset":242,"endOffset":260,"count":0}],"isBlockCoverage":true},{"functionName":"validate","ranges":[{"startOffset":265,"endOffset":356,"count":10}],"isBlockCoverage":true}]},{"scriptId":"140","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/regex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true}]},{"scriptId":"141","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v3.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":414,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":218,"endOffset":313,"count":2},{"startOffset":292,"endOffset":310,"count":0}],"isBlockCoverage":true}]},{"scriptId":"142","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v35.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2008,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":275,"endOffset":370,"count":2},{"startOffset":349,"endOffset":367,"count":0}],"isBlockCoverage":true},{"functionName":"stringToBytes","ranges":[{"startOffset":372,"endOffset":580,"count":0}],"isBlockCoverage":false},{"functionName":"_default","ranges":[{"startOffset":725,"endOffset":2008,"count":2}],"isBlockCoverage":true},{"functionName":"generateUUID","ranges":[{"startOffset":772,"endOffset":1736,"count":0}],"isBlockCoverage":false}]},{"scriptId":"143","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1380,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":271,"endOffset":1329,"count":0}],"isBlockCoverage":false}]},{"scriptId":"144","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/md5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":550,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"md5","ranges":[{"startOffset":262,"endOffset":501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"145","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v4.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":860,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v4","ranges":[{"startOffset":330,"endOffset":812,"count":10},{"startOffset":646,"endOffset":769,"count":0}],"isBlockCoverage":true}]},{"scriptId":"146","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":417,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":220,"endOffset":315,"count":2},{"startOffset":294,"endOffset":312,"count":0}],"isBlockCoverage":true}]},{"scriptId":"147","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/sha1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":553,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"sha1","ranges":[{"startOffset":262,"endOffset":503,"count":0}],"isBlockCoverage":false}]},{"scriptId":"148","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/nil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":188,"count":1}],"isBlockCoverage":true}]},{"scriptId":"149","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"version","ranges":[{"startOffset":271,"endOffset":421,"count":0}],"isBlockCoverage":false}]},{"scriptId":"150","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6073,"count":1},{"startOffset":1532,"endOffset":1764,"count":44},{"startOffset":2057,"endOffset":2352,"count":8},{"startOffset":2386,"endOffset":2752,"count":8},{"startOffset":5968,"endOffset":5971,"count":0}],"isBlockCoverage":true},{"functionName":"applyOptions","ranges":[{"startOffset":430,"endOffset":809,"count":2},{"startOffset":477,"endOffset":558,"count":1},{"startOffset":560,"endOffset":638,"count":0},{"startOffset":729,"endOffset":732,"count":0},{"startOffset":778,"endOffset":790,"count":1},{"startOffset":791,"endOffset":806,"count":1}],"isBlockCoverage":true},{"functionName":"ChalkClass","ranges":[{"startOffset":832,"endOffset":941,"count":0}],"isBlockCoverage":false},{"functionName":"chalkFactory","ranges":[{"startOffset":966,"endOffset":1408,"count":2}],"isBlockCoverage":true},{"functionName":"chalk.template","ranges":[{"startOffset":1048,"endOffset":1106,"count":0}],"isBlockCoverage":false},{"functionName":"chalk.template.constructor","ranges":[{"startOffset":1235,"endOffset":1340,"count":0}],"isBlockCoverage":false},{"functionName":"Chalk","ranges":[{"startOffset":1411,"endOffset":1469,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1559,"endOffset":1758,"count":4}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1786,"endOffset":1933,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2080,"endOffset":2346,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2476,"endOffset":2746,"count":0}],"isBlockCoverage":false},{"functionName":"Object.defineProperties","ranges":[{"startOffset":2792,"endOffset":2800,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2848,"endOffset":2892,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":2896,"endOffset":2946,"count":0}],"isBlockCoverage":false},{"functionName":"createStyler","ranges":[{"startOffset":2976,"endOffset":3250,"count":4},{"startOffset":3101,"endOffset":3184,"count":0}],"isBlockCoverage":true},{"functionName":"createBuilder","ranges":[{"startOffset":3275,"endOffset":4073,"count":4}],"isBlockCoverage":true},{"functionName":"builder","ranges":[{"startOffset":3323,"endOffset":3790,"count":0}],"isBlockCoverage":false},{"functionName":"applyStyle","ranges":[{"startOffset":4095,"endOffset":5135,"count":0}],"isBlockCoverage":false},{"functionName":"chalkTag","ranges":[{"startOffset":5169,"endOffset":5764,"count":0}],"isBlockCoverage":false}]},{"scriptId":"151","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ansi-styles/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4139,"count":1}],"isBlockCoverage":true},{"functionName":"wrapAnsi16","ranges":[{"startOffset":34,"endOffset":129,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi256","ranges":[{"startOffset":152,"endOffset":255,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi16m","ranges":[{"startOffset":278,"endOffset":402,"count":0}],"isBlockCoverage":false},{"functionName":"ansi2ansi","ranges":[{"startOffset":423,"endOffset":429,"count":0}],"isBlockCoverage":false},{"functionName":"rgb2rgb","ranges":[{"startOffset":447,"endOffset":469,"count":0}],"isBlockCoverage":false},{"functionName":"setLazyProperty","ranges":[{"startOffset":496,"endOffset":786,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":575,"endOffset":737,"count":0}],"isBlockCoverage":false},{"functionName":"makeDynamicStyles","ranges":[{"startOffset":879,"endOffset":1400,"count":0}],"isBlockCoverage":false},{"functionName":"assembleStyles","ranges":[{"startOffset":1403,"endOffset":4021,"count":5},{"startOffset":2869,"endOffset":3201,"count":15},{"startOffset":2929,"endOffset":3108,"count":220}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3401,"endOffset":3464,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3509,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3619,"endOffset":3678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3722,"endOffset":3784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3831,"endOffset":3895,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3942,"endOffset":4000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"152","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/supports-color/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2748,"count":1},{"startOffset":250,"endOffset":270,"count":0},{"startOffset":374,"endOffset":394,"count":0},{"startOffset":422,"endOffset":646,"count":0}],"isBlockCoverage":true},{"functionName":"translateLevel","ranges":[{"startOffset":648,"endOffset":806,"count":2},{"startOffset":699,"endOffset":719,"count":0}],"isBlockCoverage":true},{"functionName":"supportsColor","ranges":[{"startOffset":808,"endOffset":2439,"count":2},{"startOffset":881,"endOffset":897,"count":0},{"startOffset":985,"endOffset":1001,"count":0},{"startOffset":1030,"endOffset":1046,"count":0},{"startOffset":1080,"endOffset":1107,"count":0},{"startOffset":1109,"endOffset":1125,"count":0},{"startOffset":1184,"endOffset":1202,"count":0},{"startOffset":1239,"endOffset":1594,"count":0},{"startOffset":1614,"endOffset":1794,"count":0},{"startOffset":1828,"endOffset":1909,"count":0},{"startOffset":1963,"endOffset":2438,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1706,"endOffset":1725,"count":0}],"isBlockCoverage":false},{"functionName":"getSupportLevel","ranges":[{"startOffset":2441,"endOffset":2570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"153","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/has-flag/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":330,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":32,"endOffset":328,"count":16},{"startOffset":102,"endOffset":106,"count":0},{"startOffset":128,"endOffset":133,"count":0},{"startOffset":262,"endOffset":325,"count":0}],"isBlockCoverage":true}]},{"scriptId":"154","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1035,"count":1}],"isBlockCoverage":true},{"functionName":"stringReplaceAll","ranges":[{"startOffset":40,"endOffset":505,"count":0}],"isBlockCoverage":false},{"functionName":"stringEncaseCRLFWithFirstIndex","ranges":[{"startOffset":547,"endOffset":959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"155","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":107,"count":1}],"isBlockCoverage":true}]},{"scriptId":"156","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createClient.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3821,"count":1}],"isBlockCoverage":true},{"functionName":"proxyEventEmitter","ranges":[{"startOffset":119,"endOffset":396,"count":30}],"isBlockCoverage":true},{"functionName":"sourceEmitter.emit","ranges":[{"startOffset":270,"endOffset":393,"count":487}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":426,"endOffset":553,"count":30},{"startOffset":484,"endOffset":542,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":501,"endOffset":524,"count":0}],"isBlockCoverage":false},{"functionName":"createClient","ranges":[{"startOffset":557,"endOffset":3788,"count":30}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":803,"endOffset":1116,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":875,"endOffset":1086,"count":37},{"startOffset":1019,"endOffset":1080,"count":0}],"isBlockCoverage":true},{"functionName":"reconnect","ranges":[{"startOffset":1142,"endOffset":1330,"count":0}],"isBlockCoverage":false},{"functionName":"makeConnection","ranges":[{"startOffset":1334,"endOffset":2387,"count":30},{"startOffset":1414,"endOffset":1445,"count":0},{"startOffset":1552,"endOffset":1641,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1714,"endOffset":1843,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1771,"endOffset":1812,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1870,"endOffset":2111,"count":30},{"startOffset":1929,"endOffset":1975,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2002,"endOffset":2080,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2138,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"waitUntilConnected","ranges":[{"startOffset":2412,"endOffset":2547,"count":37},{"startOffset":2472,"endOffset":2511,"count":32},{"startOffset":2511,"endOffset":2546,"count":5}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":2551,"endOffset":2951,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2644,"endOffset":2945,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2692,"endOffset":2888,"count":37},{"startOffset":2724,"endOffset":2807,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":3165,"endOffset":3770,"count":30},{"startOffset":3220,"endOffset":3269,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3326,"endOffset":3355,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3384,"endOffset":3762,"count":30},{"startOffset":3452,"endOffset":3479,"count":0},{"startOffset":3509,"endOffset":3587,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3618,"endOffset":3656,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3688,"endOffset":3726,"count":0}],"isBlockCoverage":false}]},{"scriptId":"157","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ndjson-fe/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":799,"count":1}],"isBlockCoverage":true},{"functionName":"ndJsonFe","ranges":[{"startOffset":41,"endOffset":770,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":148,"endOffset":616,"count":72}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":222,"endOffset":610,"count":146},{"startOffset":262,"endOffset":269,"count":72},{"startOffset":269,"endOffset":343,"count":74},{"startOffset":343,"endOffset":546,"count":0},{"startOffset":546,"endOffset":609,"count":74}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":678,"endOffset":715,"count":72}],"isBlockCoverage":true},{"functionName":"end","ranges":[{"startOffset":728,"endOffset":757,"count":30}],"isBlockCoverage":true}]},{"scriptId":"158","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1397,"count":1}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":40,"endOffset":1364,"count":7},{"startOffset":1025,"endOffset":1063,"count":0}],"isBlockCoverage":true},{"functionName":"wrapper","ranges":[{"startOffset":107,"endOffset":946,"count":30}],"isBlockCoverage":true},{"functionName":"next","ranges":[{"startOffset":209,"endOffset":659,"count":37},{"startOffset":562,"endOffset":653,"count":0}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":320,"endOffset":419,"count":0}],"isBlockCoverage":false},{"functionName":"reply","ranges":[{"startOffset":438,"endOffset":541,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":603,"endOffset":643,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":710,"endOffset":916,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":1103,"endOffset":1151,"count":7}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":1165,"endOffset":1357,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1197,"endOffset":1324,"count":30},{"startOffset":1261,"endOffset":1316,"count":0}],"isBlockCoverage":true}]},{"scriptId":"159","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/driver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5128,"count":1}],"isBlockCoverage":true},{"functionName":"createEjdbDriver","ranges":[{"startOffset":208,"endOffset":5093,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":356,"endOffset":471,"count":0}],"isBlockCoverage":false},{"functionName":"getDatabaseConnection","ranges":[{"startOffset":477,"endOffset":920,"count":65},{"startOffset":548,"endOffset":653,"count":0},{"startOffset":690,"endOffset":737,"count":57},{"startOffset":737,"endOffset":919,"count":8}],"isBlockCoverage":true},{"functionName":"count","ranges":[{"startOffset":924,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":1428,"endOffset":1949,"count":35},{"startOffset":1510,"endOffset":1615,"count":0},{"startOffset":1632,"endOffset":1657,"count":0},{"startOffset":1659,"endOffset":1691,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1926,"endOffset":1943,"count":3}],"isBlockCoverage":true},{"functionName":"post","ranges":[{"startOffset":1953,"endOffset":2477,"count":30},{"startOffset":2017,"endOffset":2122,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2288,"endOffset":2373,"count":90}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":2481,"endOffset":3299,"count":0}],"isBlockCoverage":false},{"functionName":"patch","ranges":[{"startOffset":3303,"endOffset":4174,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":4178,"endOffset":4722,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":4726,"endOffset":4769,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4773,"endOffset":4994,"count":7},{"startOffset":4861,"endOffset":4968,"count":8}],"isBlockCoverage":true}]},{"scriptId":"160","url":"fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":73,"count":1}],"isBlockCoverage":false}]},{"scriptId":"161","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18975,"count":1},{"startOffset":1537,"endOffset":1670,"count":0}],"isBlockCoverage":true},{"functionName":"escapeUnicode","ranges":[{"startOffset":1894,"endOffset":2085,"count":0}],"isBlockCoverage":false},{"functionName":"jsonParseAndEscapeIfNeeded","ranges":[{"startOffset":2087,"endOffset":2243,"count":3},{"startOffset":2176,"endOffset":2241,"count":0}],"isBlockCoverage":true},{"functionName":"isNotFound","ranges":[{"startOffset":2426,"endOffset":2543,"count":0}],"isBlockCoverage":false},{"functionName":"isInvalidQuery","ranges":[{"startOffset":2682,"endOffset":2803,"count":0}],"isBlockCoverage":false},{"functionName":"get json","ranges":[{"startOffset":2892,"endOffset":3072,"count":3},{"startOffset":2933,"endOffset":2965,"count":0}],"isBlockCoverage":true},{"functionName":"JBDOC","ranges":[{"startOffset":3173,"endOffset":3261,"count":3}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":3265,"endOffset":3374,"count":0}],"isBlockCoverage":false},{"functionName":"get _impl","ranges":[{"startOffset":3458,"endOffset":3502,"count":140}],"isBlockCoverage":true},{"functionName":"get writable","ranges":[{"startOffset":3506,"endOffset":3572,"count":0}],"isBlockCoverage":false},{"functionName":"JBDOCStream","ranges":[{"startOffset":3636,"endOffset":4033,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4001,"endOffset":4027,"count":0}],"isBlockCoverage":false},{"functionName":"abort","ranges":[{"startOffset":4037,"endOffset":4251,"count":35}],"isBlockCoverage":true},{"functionName":"_destroy","ranges":[{"startOffset":4287,"endOffset":4482,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4410,"endOffset":4451,"count":35}],"isBlockCoverage":true},{"functionName":"_read","ranges":[{"startOffset":4486,"endOffset":5092,"count":38},{"startOffset":4521,"endOffset":4542,"count":0},{"startOffset":4599,"endOffset":5088,"count":0}],"isBlockCoverage":true},{"functionName":"_doResume","ranges":[{"startOffset":5096,"endOffset":5213,"count":73},{"startOffset":5132,"endOffset":5209,"count":35}],"isBlockCoverage":true},{"functionName":"_doPause","ranges":[{"startOffset":5217,"endOffset":5332,"count":0}],"isBlockCoverage":false},{"functionName":"addStreamResult","ranges":[{"startOffset":5394,"endOffset":6409,"count":38},{"startOffset":5472,"endOffset":5489,"count":0},{"startOffset":5508,"endOffset":5546,"count":0},{"startOffset":5548,"endOffset":5631,"count":0},{"startOffset":5694,"endOffset":5702,"count":35},{"startOffset":5704,"endOffset":6251,"count":3},{"startOffset":5760,"endOffset":5971,"count":0},{"startOffset":6004,"endOffset":6078,"count":0},{"startOffset":6205,"endOffset":6241,"count":0},{"startOffset":6267,"endOffset":6407,"count":35},{"startOffset":6328,"endOffset":6366,"count":0}],"isBlockCoverage":true},{"functionName":"get _impl","ranges":[{"startOffset":6449,"endOffset":6492,"count":229}],"isBlockCoverage":true},{"functionName":"get limit","ranges":[{"startOffset":6546,"endOffset":6602,"count":0}],"isBlockCoverage":false},{"functionName":"JQL","ranges":[{"startOffset":6700,"endOffset":6866,"count":35}],"isBlockCoverage":true},{"functionName":"stream","ranges":[{"startOffset":7031,"endOffset":7095,"count":35}],"isBlockCoverage":true},{"functionName":"completionPromise","ranges":[{"startOffset":7194,"endOffset":7461,"count":0}],"isBlockCoverage":false},{"functionName":"scalarInt","ranges":[{"startOffset":7642,"endOffset":7899,"count":0}],"isBlockCoverage":false},{"functionName":"list","ranges":[{"startOffset":8065,"endOffset":8336,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8159,"endOffset":8330,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8206,"endOffset":8228,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8256,"endOffset":8274,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8302,"endOffset":8322,"count":0}],"isBlockCoverage":false},{"functionName":"firstN","ranges":[{"startOffset":8502,"endOffset":8909,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":9112,"endOffset":9196,"count":0}],"isBlockCoverage":false},{"functionName":"setJSON","ranges":[{"startOffset":9351,"endOffset":9565,"count":0}],"isBlockCoverage":false},{"functionName":"setRegexp","ranges":[{"startOffset":9729,"endOffset":10117,"count":0}],"isBlockCoverage":false},{"functionName":"setNumber","ranges":[{"startOffset":10271,"endOffset":10530,"count":0}],"isBlockCoverage":false},{"functionName":"setBoolean","ranges":[{"startOffset":10686,"endOffset":10831,"count":0}],"isBlockCoverage":false},{"functionName":"setString","ranges":[{"startOffset":10985,"endOffset":11211,"count":54},{"startOffset":11104,"endOffset":11139,"count":0}],"isBlockCoverage":true},{"functionName":"setNull","ranges":[{"startOffset":11334,"endOffset":11470,"count":0}],"isBlockCoverage":false},{"functionName":"_isInteger","ranges":[{"startOffset":11474,"endOffset":11531,"count":0}],"isBlockCoverage":false},{"functionName":"_checkPlaceholder","ranges":[{"startOffset":11535,"endOffset":11744,"count":54},{"startOffset":11625,"endOffset":11642,"count":0},{"startOffset":11644,"endOffset":11740,"count":0}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11976,"endOffset":12996,"count":8}],"isBlockCoverage":true},{"functionName":"toArgs","ranges":[{"startOffset":12023,"endOffset":12906,"count":8},{"startOffset":12119,"endOffset":12152,"count":0},{"startOffset":12181,"endOffset":12214,"count":0},{"startOffset":12282,"endOffset":12305,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12980,"endOffset":12990,"count":8}],"isBlockCoverage":true},{"functionName":"EJDB2","ranges":[{"startOffset":13000,"endOffset":13061,"count":8}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":13137,"endOffset":13181,"count":8}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":13470,"endOffset":13627,"count":30},{"startOffset":13532,"endOffset":13574,"count":0}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":13842,"endOffset":13926,"count":0}],"isBlockCoverage":false},{"functionName":"patchOrPut","ranges":[{"startOffset":14188,"endOffset":14284,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14482,"endOffset":14597,"count":0}],"isBlockCoverage":false},{"functionName":"getOrNull","ranges":[{"startOffset":14875,"endOffset":15080,"count":0}],"isBlockCoverage":false},{"functionName":"info","ranges":[{"startOffset":15175,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":15428,"endOffset":15496,"count":0}],"isBlockCoverage":false},{"functionName":"renameCollection","ranges":[{"startOffset":15697,"endOffset":15836,"count":0}],"isBlockCoverage":false},{"functionName":"ensureStringIndex","ranges":[{"startOffset":16077,"endOffset":16208,"count":90},{"startOffset":16184,"endOffset":16190,"count":0}],"isBlockCoverage":true},{"functionName":"removeStringIndex","ranges":[{"startOffset":16392,"endOffset":16522,"count":0}],"isBlockCoverage":false},{"functionName":"ensureIntIndex","ranges":[{"startOffset":16764,"endOffset":16892,"count":0}],"isBlockCoverage":false},{"functionName":"removeIntIndex","ranges":[{"startOffset":17076,"endOffset":17203,"count":0}],"isBlockCoverage":false},{"functionName":"ensureFloatIndex","ranges":[{"startOffset":17452,"endOffset":17582,"count":0}],"isBlockCoverage":false},{"functionName":"removeFloatIndex","ranges":[{"startOffset":17766,"endOffset":17895,"count":0}],"isBlockCoverage":false},{"functionName":"removeCollection","ranges":[{"startOffset":18013,"endOffset":18089,"count":0}],"isBlockCoverage":false},{"functionName":"createQuery","ranges":[{"startOffset":18369,"endOffset":18450,"count":35}],"isBlockCoverage":true},{"functionName":"onlineBackup","ranges":[{"startOffset":18859,"endOffset":18934,"count":0}],"isBlockCoverage":false}]},{"scriptId":"162","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1982,"count":1}],"isBlockCoverage":true}]},{"scriptId":"163","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/re.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6662,"count":1}],"isBlockCoverage":true},{"functionName":"createToken","ranges":[{"startOffset":276,"endOffset":447,"count":40},{"startOffset":427,"endOffset":432,"count":4},{"startOffset":433,"endOffset":444,"count":36}],"isBlockCoverage":true}]},{"scriptId":"164","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":468,"count":1},{"startOffset":233,"endOffset":281,"count":0}],"isBlockCoverage":true}]},{"scriptId":"165","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/debug.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":226,"count":1},{"startOffset":91,"endOffset":138,"count":0},{"startOffset":141,"endOffset":188,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":143,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"debug","ranges":[{"startOffset":193,"endOffset":201,"count":59}],"isBlockCoverage":true}]},{"scriptId":"166","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/semver.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7985,"count":1}],"isBlockCoverage":true},{"functionName":"SemVer","ranges":[{"startOffset":303,"endOffset":2193,"count":4},{"startOffset":408,"endOffset":613,"count":2},{"startOffset":558,"endOffset":607,"count":0},{"startOffset":613,"endOffset":716,"count":2},{"startOffset":652,"endOffset":716,"count":0},{"startOffset":716,"endOffset":755,"count":2},{"startOffset":755,"endOffset":855,"count":0},{"startOffset":855,"endOffset":1194,"count":2},{"startOffset":1194,"endOffset":1207,"count":0},{"startOffset":1208,"endOffset":1220,"count":2},{"startOffset":1235,"endOffset":1299,"count":0},{"startOffset":1299,"endOffset":1484,"count":2},{"startOffset":1486,"endOffset":1544,"count":0},{"startOffset":1544,"endOffset":1601,"count":2},{"startOffset":1603,"endOffset":1661,"count":0},{"startOffset":1661,"endOffset":1718,"count":2},{"startOffset":1720,"endOffset":1778,"count":0},{"startOffset":1778,"endOffset":1873,"count":2},{"startOffset":1873,"endOffset":2125,"count":0},{"startOffset":2125,"endOffset":2149,"count":2},{"startOffset":2149,"endOffset":2166,"count":0},{"startOffset":2167,"endOffset":2171,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1925,"endOffset":2118,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":2197,"endOffset":2393,"count":2},{"startOffset":2304,"endOffset":2365,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2397,"endOffset":2438,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":2442,"endOffset":2832,"count":1},{"startOffset":2559,"endOffset":2702,"count":0},{"startOffset":2744,"endOffset":2766,"count":0},{"startOffset":2803,"endOffset":2828,"count":0}],"isBlockCoverage":true},{"functionName":"compareMain","ranges":[{"startOffset":2836,"endOffset":3127,"count":1},{"startOffset":2894,"endOffset":2947,"count":0},{"startOffset":3012,"endOffset":3064,"count":0},{"startOffset":3065,"endOffset":3117,"count":0}],"isBlockCoverage":true},{"functionName":"comparePre","ranges":[{"startOffset":3131,"endOffset":3982,"count":0}],"isBlockCoverage":false},{"functionName":"compareBuild","ranges":[{"startOffset":3986,"endOffset":4528,"count":0}],"isBlockCoverage":false},{"functionName":"inc","ranges":[{"startOffset":4681,"endOffset":7957,"count":0}],"isBlockCoverage":false}]},{"scriptId":"167","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/parse-options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":401,"count":1}],"isBlockCoverage":true},{"functionName":"parseOptions","ranges":[{"startOffset":186,"endOffset":370,"count":6},{"startOffset":208,"endOffset":212,"count":2},{"startOffset":215,"endOffset":370,"count":4},{"startOffset":245,"endOffset":262,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":279,"endOffset":294,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":303,"endOffset":365,"count":0}],"isBlockCoverage":false}]},{"scriptId":"168","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/identifiers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":409,"count":1}],"isBlockCoverage":true},{"functionName":"compareIdentifiers","ranges":[{"startOffset":54,"endOffset":278,"count":1},{"startOffset":195,"endOffset":198,"count":0},{"startOffset":221,"endOffset":225,"count":0},{"startOffset":248,"endOffset":251,"count":0},{"startOffset":264,"endOffset":268,"count":0}],"isBlockCoverage":true},{"functionName":"rcompareIdentifiers","ranges":[{"startOffset":308,"endOffset":342,"count":0}],"isBlockCoverage":false}]},{"scriptId":"169","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":660,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":215,"endOffset":635,"count":0}],"isBlockCoverage":false}]},{"scriptId":"170","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":162,"count":1}],"isBlockCoverage":true},{"functionName":"valid","ranges":[{"startOffset":47,"endOffset":138,"count":0}],"isBlockCoverage":false}]},{"scriptId":"171","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/clean.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":191,"count":1}],"isBlockCoverage":true},{"functionName":"clean","ranges":[{"startOffset":47,"endOffset":167,"count":0}],"isBlockCoverage":false}]},{"scriptId":"172","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/inc.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":336,"count":1}],"isBlockCoverage":true},{"functionName":"inc","ranges":[{"startOffset":57,"endOffset":314,"count":0}],"isBlockCoverage":false}]},{"scriptId":"173","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/diff.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":634,"count":1}],"isBlockCoverage":true},{"functionName":"diff","ranges":[{"startOffset":74,"endOffset":611,"count":0}],"isBlockCoverage":false}]},{"scriptId":"174","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/eq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":112,"count":1}],"isBlockCoverage":true},{"functionName":"eq","ranges":[{"startOffset":48,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"175","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":156,"count":1}],"isBlockCoverage":true},{"functionName":"compare","ranges":[{"startOffset":60,"endOffset":129,"count":1}],"isBlockCoverage":true}]},{"scriptId":"176","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/major.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"major","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"177","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/minor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"minor","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"178","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/patch.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"179","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/prerelease.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"prerelease","ranges":[{"startOffset":52,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"180","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rcompare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"rcompare","ranges":[{"startOffset":54,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"181","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-loose.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"compareLoose","ranges":[{"startOffset":58,"endOffset":87,"count":0}],"isBlockCoverage":false}]},{"scriptId":"182","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-build.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true},{"functionName":"compareBuild","ranges":[{"startOffset":65,"endOffset":236,"count":0}],"isBlockCoverage":false}]},{"scriptId":"183","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/sort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":147,"count":1}],"isBlockCoverage":true},{"functionName":"sort","ranges":[{"startOffset":61,"endOffset":124,"count":0}],"isBlockCoverage":false}]},{"scriptId":"184","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rsort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":149,"count":1}],"isBlockCoverage":true},{"functionName":"rsort","ranges":[{"startOffset":62,"endOffset":125,"count":0}],"isBlockCoverage":false}]},{"scriptId":"185","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"gt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"186","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"lt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"187","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/neq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":114,"count":1}],"isBlockCoverage":true},{"functionName":"neq","ranges":[{"startOffset":49,"endOffset":92,"count":0}],"isBlockCoverage":false}]},{"scriptId":"188","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"gte","ranges":[{"startOffset":49,"endOffset":91,"count":1}],"isBlockCoverage":true}]},{"scriptId":"189","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"lte","ranges":[{"startOffset":49,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"190","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/cmp.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":907,"count":1}],"isBlockCoverage":true},{"functionName":"cmp","ranges":[{"startOffset":181,"endOffset":885,"count":1},{"startOffset":224,"endOffset":366,"count":0},{"startOffset":372,"endOffset":514,"count":0},{"startOffset":520,"endOffset":528,"count":0},{"startOffset":533,"endOffset":542,"count":0},{"startOffset":547,"endOffset":586,"count":0},{"startOffset":592,"endOffset":632,"count":0},{"startOffset":638,"endOffset":676,"count":0},{"startOffset":728,"endOffset":766,"count":0},{"startOffset":772,"endOffset":812,"count":0},{"startOffset":818,"endOffset":879,"count":0}],"isBlockCoverage":true}]},{"scriptId":"191","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/coerce.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1497,"count":1}],"isBlockCoverage":true},{"functionName":"coerce","ranges":[{"startOffset":135,"endOffset":1472,"count":0}],"isBlockCoverage":false}]},{"scriptId":"192","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/comparator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3606,"count":1}],"isBlockCoverage":true},{"functionName":"get ANY","ranges":[{"startOffset":100,"endOffset":131,"count":2}],"isBlockCoverage":true},{"functionName":"Comparator","ranges":[{"startOffset":134,"endOffset":635,"count":1},{"startOffset":237,"endOffset":357,"count":0},{"startOffset":509,"endOffset":538,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":639,"endOffset":1135,"count":1},{"startOffset":687,"endOffset":710,"count":0},{"startOffset":771,"endOffset":835,"count":0},{"startOffset":883,"endOffset":887,"count":0},{"startOffset":919,"endOffset":951,"count":0},{"startOffset":1030,"endOffset":1061,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":1139,"endOffset":1178,"count":1}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":1182,"endOffset":1562,"count":1},{"startOffset":1306,"endOffset":1331,"count":0},{"startOffset":1370,"endOffset":1491,"count":0}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":1566,"endOffset":3322,"count":0}],"isBlockCoverage":false}]},{"scriptId":"193","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/range.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13989,"count":1}],"isBlockCoverage":true},{"functionName":"Range","ranges":[{"startOffset":55,"endOffset":1826,"count":1},{"startOffset":155,"endOffset":379,"count":0},{"startOffset":418,"endOffset":562,"count":0},{"startOffset":1162,"endOffset":1229,"count":0},{"startOffset":1330,"endOffset":1803,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":857,"endOffset":895,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1120,"endOffset":1133,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1456,"endOffset":1477,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":1830,"endOffset":1996,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1879,"endOffset":1937,"count":1}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2000,"endOffset":2039,"count":0}],"isBlockCoverage":false},{"functionName":"parseRange","ranges":[{"startOffset":2043,"endOffset":4217,"count":1},{"startOffset":2364,"endOffset":2377,"count":0},{"startOffset":2481,"endOffset":2505,"count":0},{"startOffset":3187,"endOffset":3210,"count":0},{"startOffset":3559,"endOffset":3589,"count":0},{"startOffset":3992,"endOffset":4005,"count":0},{"startOffset":4075,"endOffset":4094,"count":0},{"startOffset":4102,"endOffset":4121,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3287,"endOffset":3330,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3416,"endOffset":3455,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3561,"endOffset":3589,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3592,"endOffset":3602,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3615,"endOffset":3657,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":4221,"endOffset":4851,"count":0}],"isBlockCoverage":false},{"functionName":"test","ranges":[{"startOffset":4919,"endOffset":5301,"count":1},{"startOffset":4954,"endOffset":4980,"count":0},{"startOffset":5093,"endOffset":5134,"count":0},{"startOffset":5280,"endOffset":5300,"count":0}],"isBlockCoverage":true},{"functionName":"isNullSet","ranges":[{"startOffset":5710,"endOffset":5737,"count":1}],"isBlockCoverage":true},{"functionName":"isAny","ranges":[{"startOffset":5752,"endOffset":5771,"count":0}],"isBlockCoverage":false},{"functionName":"isSatisfiable","ranges":[{"startOffset":5893,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"parseComparator","ranges":[{"startOffset":6469,"endOffset":6782,"count":1}],"isBlockCoverage":true},{"functionName":"isX","ranges":[{"startOffset":6796,"endOffset":6847,"count":3}],"isBlockCoverage":true},{"functionName":"replaceTildes","ranges":[{"startOffset":7152,"endOffset":7267,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7202,"endOffset":7256,"count":1}],"isBlockCoverage":true},{"functionName":"replaceTilde","ranges":[{"startOffset":7290,"endOffset":7964,"count":1},{"startOffset":7337,"endOffset":7355,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7395,"endOffset":7961,"count":0}],"isBlockCoverage":false},{"functionName":"replaceCarets","ranges":[{"startOffset":8195,"endOffset":8310,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8245,"endOffset":8299,"count":1}],"isBlockCoverage":true},{"functionName":"replaceCaret","ranges":[{"startOffset":8333,"endOffset":9635,"count":1},{"startOffset":8412,"endOffset":8430,"count":0},{"startOffset":8483,"endOffset":8489,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8520,"endOffset":9632,"count":0}],"isBlockCoverage":false},{"functionName":"replaceXRanges","ranges":[{"startOffset":9660,"endOffset":9821,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9753,"endOffset":9808,"count":1}],"isBlockCoverage":true},{"functionName":"replaceXRange","ranges":[{"startOffset":9845,"endOffset":11535,"count":1},{"startOffset":9913,"endOffset":9932,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9973,"endOffset":11532,"count":1},{"startOffset":10173,"endOffset":10180,"count":0},{"startOffset":10182,"endOffset":10205,"count":0},{"startOffset":10370,"endOffset":10376,"count":0},{"startOffset":10395,"endOffset":10572,"count":0},{"startOffset":10596,"endOffset":11330,"count":0},{"startOffset":11344,"endOffset":11398,"count":0},{"startOffset":11412,"endOffset":11479,"count":0}],"isBlockCoverage":true},{"functionName":"replaceStars","ranges":[{"startOffset":11681,"endOffset":11856,"count":1}],"isBlockCoverage":true},{"functionName":"replaceGTE0","ranges":[{"startOffset":11878,"endOffset":12028,"count":1},{"startOffset":12000,"endOffset":12011,"count":0}],"isBlockCoverage":true},{"functionName":"hyphenReplace","ranges":[{"startOffset":12270,"endOffset":12946,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12279,"endOffset":12946,"count":0}],"isBlockCoverage":false},{"functionName":"testSet","ranges":[{"startOffset":12964,"endOffset":13988,"count":1},{"startOffset":13065,"endOffset":13091,"count":0},{"startOffset":13129,"endOffset":13158,"count":0},{"startOffset":13160,"endOffset":13971,"count":0}],"isBlockCoverage":true}]},{"scriptId":"194","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/lru-cache/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8186,"count":1}],"isBlockCoverage":true},{"functionName":"naiveLength","ranges":[{"startOffset":510,"endOffset":517,"count":1}],"isBlockCoverage":true},{"functionName":"LRUCache","ranges":[{"startOffset":853,"endOffset":1751,"count":1},{"startOffset":920,"endOffset":946,"count":0},{"startOffset":972,"endOffset":984,"count":0},{"startOffset":1069,"endOffset":1125,"count":0},{"startOffset":1235,"endOffset":1246,"count":0},{"startOffset":1350,"endOffset":1363,"count":0},{"startOffset":1439,"endOffset":1476,"count":0},{"startOffset":1484,"endOffset":1530,"count":0}],"isBlockCoverage":true},{"functionName":"set max","ranges":[{"startOffset":1799,"endOffset":1969,"count":0}],"isBlockCoverage":false},{"functionName":"get max","ranges":[{"startOffset":1972,"endOffset":2009,"count":0}],"isBlockCoverage":false},{"functionName":"set allowStale","ranges":[{"startOffset":2013,"endOffset":2083,"count":0}],"isBlockCoverage":false},{"functionName":"get allowStale","ranges":[{"startOffset":2086,"endOffset":2138,"count":0}],"isBlockCoverage":false},{"functionName":"set maxAge","ranges":[{"startOffset":2142,"endOffset":2300,"count":0}],"isBlockCoverage":false},{"functionName":"get maxAge","ranges":[{"startOffset":2303,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"set lengthCalculator","ranges":[{"startOffset":2408,"endOffset":2765,"count":0}],"isBlockCoverage":false},{"functionName":"get lengthCalculator","ranges":[{"startOffset":2768,"endOffset":2826,"count":0}],"isBlockCoverage":false},{"functionName":"get length","ranges":[{"startOffset":2830,"endOffset":2867,"count":0}],"isBlockCoverage":false},{"functionName":"get itemCount","ranges":[{"startOffset":2870,"endOffset":2919,"count":0}],"isBlockCoverage":false},{"functionName":"rforEach","ranges":[{"startOffset":2923,"endOffset":3138,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":3142,"endOffset":3356,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":3360,"endOffset":3425,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":3429,"endOffset":3498,"count":0}],"isBlockCoverage":false},{"functionName":"reset","ranges":[{"startOffset":3502,"endOffset":3858,"count":1},{"startOffset":3535,"endOffset":3560,"count":0},{"startOffset":3561,"endOffset":3593,"count":0},{"startOffset":3595,"endOffset":3673,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3626,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"dump","ranges":[{"startOffset":3862,"endOffset":4064,"count":0}],"isBlockCoverage":false},{"functionName":"dumpLru","ranges":[{"startOffset":4068,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":4114,"endOffset":5376,"count":1},{"startOffset":4194,"endOffset":4223,"count":0},{"startOffset":4231,"endOffset":4277,"count":0},{"startOffset":4302,"endOffset":4314,"count":0},{"startOffset":4402,"endOffset":4996,"count":0},{"startOffset":5145,"endOffset":5231,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":5380,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5517,"endOffset":5564,"count":1}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":5568,"endOffset":5617,"count":0}],"isBlockCoverage":false},{"functionName":"pop","ranges":[{"startOffset":5621,"endOffset":5746,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":5750,"endOffset":5801,"count":0}],"isBlockCoverage":false},{"functionName":"load","ranges":[{"startOffset":5805,"endOffset":6378,"count":0}],"isBlockCoverage":false},{"functionName":"prune","ranges":[{"startOffset":6382,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6475,"endOffset":6871,"count":1},{"startOffset":6547,"endOffset":6869,"count":0}],"isBlockCoverage":true},{"functionName":"isStale","ranges":[{"startOffset":6889,"endOffset":7094,"count":0}],"isBlockCoverage":false},{"functionName":"trim","ranges":[{"startOffset":7109,"endOffset":7497,"count":1},{"startOffset":7151,"endOffset":7495,"count":0}],"isBlockCoverage":true},{"functionName":"del","ranges":[{"startOffset":7511,"endOffset":7738,"count":0}],"isBlockCoverage":false},{"functionName":"Entry","ranges":[{"startOffset":7756,"endOffset":7923,"count":1}],"isBlockCoverage":true},{"functionName":"forEachStep","ranges":[{"startOffset":7947,"endOffset":8158,"count":0}],"isBlockCoverage":false}]},{"scriptId":"195","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/yallist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8411,"count":1},{"startOffset":8397,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"Yallist","ranges":[{"startOffset":85,"endOffset":517,"count":1},{"startOffset":163,"endOffset":193,"count":0},{"startOffset":263,"endOffset":300,"count":0},{"startOffset":302,"endOffset":371,"count":0},{"startOffset":403,"endOffset":500,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":321,"endOffset":366,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.removeNode","ranges":[{"startOffset":550,"endOffset":1001,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshiftNode","ranges":[{"startOffset":1035,"endOffset":1334,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.pushNode","ranges":[{"startOffset":1365,"endOffset":1664,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.push","ranges":[{"startOffset":1691,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshift","ranges":[{"startOffset":1844,"endOffset":1970,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.pop","ranges":[{"startOffset":1996,"endOffset":2224,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.shift","ranges":[{"startOffset":2252,"endOffset":2480,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEach","ranges":[{"startOffset":2510,"endOffset":2691,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEachReverse","ranges":[{"startOffset":2728,"endOffset":2923,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.get","ranges":[{"startOffset":2949,"endOffset":3182,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.getReverse","ranges":[{"startOffset":3215,"endOffset":3448,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.map","ranges":[{"startOffset":3474,"endOffset":3690,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.mapReverse","ranges":[{"startOffset":3723,"endOffset":3939,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduce","ranges":[{"startOffset":3968,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduceReverse","ranges":[{"startOffset":4399,"endOffset":4808,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArray","ranges":[{"startOffset":4838,"endOffset":5018,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArrayReverse","ranges":[{"startOffset":5055,"endOffset":5235,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.slice","ranges":[{"startOffset":5263,"endOffset":5790,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.sliceReverse","ranges":[{"startOffset":5825,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.splice","ranges":[{"startOffset":6391,"endOffset":7034,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reverse","ranges":[{"startOffset":7064,"endOffset":7322,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":7324,"endOffset":7643,"count":0}],"isBlockCoverage":false},{"functionName":"push","ranges":[{"startOffset":7645,"endOffset":7793,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":7795,"endOffset":7946,"count":1}],"isBlockCoverage":true},{"functionName":"Node","ranges":[{"startOffset":7948,"endOffset":8300,"count":1},{"startOffset":8021,"endOffset":8071,"count":0},{"startOffset":8126,"endOffset":8173,"count":0},{"startOffset":8219,"endOffset":8266,"count":0}],"isBlockCoverage":true}]},{"scriptId":"196","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/iterator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":207,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":30,"endOffset":206,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.","ranges":[{"startOffset":90,"endOffset":204,"count":0}],"isBlockCoverage":false}]},{"scriptId":"197","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/satisfies.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":233,"count":1}],"isBlockCoverage":true},{"functionName":"satisfies","ranges":[{"startOffset":60,"endOffset":205,"count":1},{"startOffset":141,"endOffset":174,"count":0}],"isBlockCoverage":true}]},{"scriptId":"198","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/to-comparators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":268,"count":1}],"isBlockCoverage":true},{"functionName":"toComparators","ranges":[{"startOffset":115,"endOffset":235,"count":0}],"isBlockCoverage":false}]},{"scriptId":"199","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/max-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":579,"count":1}],"isBlockCoverage":true},{"functionName":"maxSatisfying","ranges":[{"startOffset":109,"endOffset":547,"count":0}],"isBlockCoverage":false}]},{"scriptId":"200","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":577,"count":1}],"isBlockCoverage":true},{"functionName":"minSatisfying","ranges":[{"startOffset":108,"endOffset":545,"count":0}],"isBlockCoverage":false}]},{"scriptId":"201","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1492,"count":1}],"isBlockCoverage":true},{"functionName":"minVersion","ranges":[{"startOffset":144,"endOffset":1463,"count":0}],"isBlockCoverage":false}]},{"scriptId":"202","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":312,"count":1}],"isBlockCoverage":true},{"functionName":"validRange","ranges":[{"startOffset":61,"endOffset":283,"count":0}],"isBlockCoverage":false}]},{"scriptId":"203","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/outside.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2188,"count":1}],"isBlockCoverage":true},{"functionName":"outside","ranges":[{"startOffset":388,"endOffset":2161,"count":0}],"isBlockCoverage":false}]},{"scriptId":"204","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/gtr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":217,"count":1}],"isBlockCoverage":true},{"functionName":"gtr","ranges":[{"startOffset":129,"endOffset":195,"count":0}],"isBlockCoverage":false}]},{"scriptId":"205","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/ltr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":213,"count":1}],"isBlockCoverage":true},{"functionName":"ltr","ranges":[{"startOffset":125,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"206","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/intersects.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":201,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":61,"endOffset":172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"207","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/simplify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1287,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":329,"endOffset":1286,"count":0}],"isBlockCoverage":false}]},{"scriptId":"208","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/subset.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7224,"count":1}],"isBlockCoverage":true},{"functionName":"subset","ranges":[{"startOffset":1996,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"simpleSubset","ranges":[{"startOffset":2726,"endOffset":6700,"count":0}],"isBlockCoverage":false},{"functionName":"higherGT","ranges":[{"startOffset":6751,"endOffset":6949,"count":0}],"isBlockCoverage":false},{"functionName":"lowerLT","ranges":[{"startOffset":7000,"endOffset":7198,"count":0}],"isBlockCoverage":false}]},{"scriptId":"209","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/binary.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1697,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":1534,"endOffset":1695,"count":1}],"isBlockCoverage":true}]},{"scriptId":"210","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1579,"count":1},{"startOffset":1483,"endOffset":1510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"211","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":95,"count":1}],"isBlockCoverage":true}]},{"scriptId":"212","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/convert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4855,"count":1}],"isBlockCoverage":true},{"functionName":"parseQuery","ranges":[{"startOffset":0,"endOffset":2315,"count":35},{"startOffset":43,"endOffset":77,"count":27},{"startOffset":79,"endOffset":138,"count":8},{"startOffset":138,"endOffset":2314,"count":27}],"isBlockCoverage":true},{"functionName":"subQuery","ranges":[{"startOffset":183,"endOffset":525,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":556,"endOffset":2252,"count":27},{"startOffset":588,"endOffset":645,"count":0},{"startOffset":671,"endOffset":729,"count":0},{"startOffset":1036,"endOffset":1352,"count":0},{"startOffset":1731,"endOffset":1809,"count":0},{"startOffset":1835,"endOffset":1918,"count":0},{"startOffset":1956,"endOffset":1995,"count":0},{"startOffset":2035,"endOffset":2085,"count":0},{"startOffset":2122,"endOffset":2161,"count":0},{"startOffset":2198,"endOffset":2248,"count":0}],"isBlockCoverage":true},{"functionName":"parseEquality","ranges":[{"startOffset":758,"endOffset":917,"count":162},{"startOffset":853,"endOffset":916,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1186,"endOffset":1344,"count":0}],"isBlockCoverage":false},{"functionName":"parseFields","ranges":[{"startOffset":2317,"endOffset":2689,"count":35},{"startOffset":2421,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2440,"endOffset":2615,"count":0}],"isBlockCoverage":false},{"functionName":"parseOrder","ranges":[{"startOffset":2691,"endOffset":3464,"count":35},{"startOffset":2792,"endOffset":3463,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2810,"endOffset":3039,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3075,"endOffset":3388,"count":0}],"isBlockCoverage":false},{"functionName":"convert","ranges":[{"startOffset":3466,"endOffset":4827,"count":35},{"startOffset":4118,"endOffset":4386,"count":0},{"startOffset":4423,"endOffset":4696,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4736,"endOffset":4750,"count":105}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4756,"endOffset":4775,"count":35}],"isBlockCoverage":true}]},{"scriptId":"213","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/createQuery.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":452,"count":1}],"isBlockCoverage":true},{"functionName":"createQuery","ranges":[{"startOffset":0,"endOffset":420,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":120,"endOffset":403,"count":54},{"startOffset":229,"endOffset":399,"count":0}],"isBlockCoverage":true}]},{"scriptId":"214","url":"tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10936,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3218,"endOffset":3282,"count":0}],"isBlockCoverage":false},{"functionName":"cacheRootCertificates","ranges":[{"startOffset":3310,"endOffset":3404,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3508,"endOffset":3659,"count":38},{"startOffset":3602,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"convertProtocols","ranges":[{"startOffset":3769,"endOffset":4366,"count":0}],"isBlockCoverage":false},{"functionName":"convertALPNProtocols","ranges":[{"startOffset":4399,"endOffset":4736,"count":0}],"isBlockCoverage":false},{"functionName":"unfqdn","ranges":[{"startOffset":4739,"endOffset":4799,"count":90}],"isBlockCoverage":true},{"functionName":"toLowerCase","ranges":[{"startOffset":4907,"endOffset":5001,"count":0}],"isBlockCoverage":false},{"functionName":"splitHost","ranges":[{"startOffset":5003,"endOffset":5140,"count":60}],"isBlockCoverage":true},{"functionName":"check","ranges":[{"startOffset":5142,"endOffset":7004,"count":30},{"startOffset":5265,"endOffset":5278,"count":0},{"startOffset":5376,"endOffset":5389,"count":0},{"startOffset":5488,"endOffset":5501,"count":0},{"startOffset":5856,"endOffset":5869,"count":0},{"startOffset":5971,"endOffset":6038,"count":0},{"startOffset":6424,"endOffset":6460,"count":0},{"startOffset":6508,"endOffset":7003,"count":0}],"isBlockCoverage":true},{"functionName":"isBad","ranges":[{"startOffset":5784,"endOffset":5818,"count":30}],"isBlockCoverage":true},{"functionName":"checkServerIdentity","ranges":[{"startOffset":7067,"endOffset":9523,"count":30},{"startOffset":7296,"endOffset":8182,"count":0},{"startOffset":8430,"endOffset":8649,"count":0},{"startOffset":8817,"endOffset":9074,"count":0},{"startOffset":9223,"endOffset":9249,"count":0},{"startOffset":9326,"endOffset":9380,"count":0},{"startOffset":9390,"endOffset":9431,"count":0},{"startOffset":9447,"endOffset":9521,"count":0}],"isBlockCoverage":true},{"functionName":"wildcard","ranges":[{"startOffset":8749,"endOffset":8793,"count":30}],"isBlockCoverage":true},{"functionName":"noWildcard","ranges":[{"startOffset":8844,"endOffset":8889,"count":0}],"isBlockCoverage":false},{"functionName":"SecurePair","ranges":[{"startOffset":9569,"endOffset":10165,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":10169,"endOffset":10244,"count":0}],"isBlockCoverage":false},{"functionName":"createSecurePair","ranges":[{"startOffset":10762,"endOffset":10838,"count":0}],"isBlockCoverage":false}]},{"scriptId":"215","url":"internal/tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":671,"count":1}],"isBlockCoverage":false},{"functionName":"parseCertString","ranges":[{"startOffset":164,"endOffset":629,"count":120},{"startOffset":264,"endOffset":613,"count":600},{"startOffset":441,"endOffset":562,"count":0}],"isBlockCoverage":true}]},{"scriptId":"216","url":"internal/streams/duplexpair.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"DuplexSocket","ranges":[{"startOffset":203,"endOffset":292,"count":0}],"isBlockCoverage":false},{"functionName":"_read","ranges":[{"startOffset":296,"endOffset":421,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":425,"endOffset":629,"count":0}],"isBlockCoverage":false},{"functionName":"_final","ranges":[{"startOffset":633,"endOffset":730,"count":0}],"isBlockCoverage":false},{"functionName":"DuplexPair","ranges":[{"startOffset":755,"endOffset":942,"count":0}],"isBlockCoverage":false}]},{"scriptId":"217","url":"_tls_common.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11156,"count":1}],"isBlockCoverage":false},{"functionName":"toV","ranges":[{"startOffset":1778,"endOffset":2071,"count":74},{"startOffset":1855,"endOffset":1875,"count":0},{"startOffset":1899,"endOffset":1921,"count":0},{"startOffset":1945,"endOffset":2013,"count":37},{"startOffset":2013,"endOffset":2070,"count":0}],"isBlockCoverage":true},{"functionName":"SecureContext","ranges":[{"startOffset":2147,"endOffset":2921,"count":37},{"startOffset":2267,"endOffset":2386,"count":0},{"startOffset":2410,"endOffset":2629,"count":0},{"startOffset":2880,"endOffset":2919,"count":7}],"isBlockCoverage":true},{"functionName":"validateKeyOrCertOption","ranges":[{"startOffset":2923,"endOffset":3174,"count":111},{"startOffset":3033,"endOffset":3172,"count":0}],"isBlockCoverage":true},{"functionName":"createSecureContext","ranges":[{"startOffset":3247,"endOffset":10200,"count":37},{"startOffset":3303,"endOffset":3316,"count":0},{"startOffset":3399,"endOffset":3448,"count":7},{"startOffset":3852,"endOffset":3937,"count":0},{"startOffset":3941,"endOffset":3982,"count":0},{"startOffset":4054,"endOffset":4179,"count":0},{"startOffset":4604,"endOffset":4880,"count":0},{"startOffset":5047,"endOffset":5301,"count":0},{"startOffset":5407,"endOffset":6582,"count":0},{"startOffset":6606,"endOffset":6644,"count":30},{"startOffset":6646,"endOffset":6740,"count":0},{"startOffset":7067,"endOffset":7089,"count":7},{"startOffset":7329,"endOffset":7349,"count":0},{"startOffset":7351,"endOffset":7543,"count":0},{"startOffset":7651,"endOffset":7694,"count":0},{"startOffset":7695,"endOffset":7744,"count":0},{"startOffset":7750,"endOffset":7788,"count":0},{"startOffset":7814,"endOffset":7857,"count":0},{"startOffset":7858,"endOffset":7907,"count":0},{"startOffset":7913,"endOffset":7951,"count":0},{"startOffset":8043,"endOffset":8120,"count":0},{"startOffset":8145,"endOffset":8281,"count":0},{"startOffset":8302,"endOffset":8478,"count":0},{"startOffset":8512,"endOffset":8578,"count":7},{"startOffset":8599,"endOffset":9284,"count":0},{"startOffset":9474,"endOffset":9539,"count":30},{"startOffset":9593,"endOffset":9767,"count":0},{"startOffset":9811,"endOffset":10009,"count":0},{"startOffset":10037,"endOffset":10091,"count":0},{"startOffset":10123,"endOffset":10185,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7139,"endOffset":7215,"count":888},{"startOffset":7164,"endOffset":7215,"count":777}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7266,"endOffset":7289,"count":888}],"isBlockCoverage":true},{"functionName":"translatePeerCertificate","ranges":[{"startOffset":10475,"endOffset":11154,"count":60},{"startOffset":10528,"endOffset":10540,"count":0},{"startOffset":10668,"endOffset":10746,"count":30},{"startOffset":10840,"endOffset":11140,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10994,"endOffset":11134,"count":0}],"isBlockCoverage":false}]},{"scriptId":"218","url":"_tls_wrap.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47991,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1763,"endOffset":1788,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3528,"endOffset":3536,"count":30}],"isBlockCoverage":true},{"functionName":"onhandshakestart","ranges":[{"startOffset":3712,"endOffset":4495,"count":30},{"startOffset":4072,"endOffset":4493,"count":0}],"isBlockCoverage":true},{"functionName":"onhandshakedone","ranges":[{"startOffset":4497,"endOffset":4790,"count":30},{"startOffset":4714,"endOffset":4764,"count":0}],"isBlockCoverage":true},{"functionName":"loadSession","ranges":[{"startOffset":4793,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"loadSNI","ranges":[{"startOffset":6000,"endOffset":6653,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSP","ranges":[{"startOffset":6656,"endOffset":7978,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSPDone","ranges":[{"startOffset":7980,"endOffset":8175,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsessionclient","ranges":[{"startOffset":8177,"endOffset":8413,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsession","ranges":[{"startOffset":8415,"endOffset":9251,"count":0}],"isBlockCoverage":false},{"functionName":"onPskServerCallback","ranges":[{"startOffset":9253,"endOffset":9901,"count":0}],"isBlockCoverage":false},{"functionName":"onPskClientCallback","ranges":[{"startOffset":9903,"endOffset":10667,"count":0}],"isBlockCoverage":false},{"functionName":"onkeylog","ranges":[{"startOffset":10669,"endOffset":10760,"count":0}],"isBlockCoverage":false},{"functionName":"onocspresponse","ranges":[{"startOffset":10762,"endOffset":10878,"count":0}],"isBlockCoverage":false},{"functionName":"onerror","ranges":[{"startOffset":10880,"endOffset":11656,"count":0}],"isBlockCoverage":false},{"functionName":"initRead","ranges":[{"startOffset":11800,"endOffset":12346,"count":60},{"startOffset":11901,"endOffset":11911,"count":30},{"startOffset":11912,"endOffset":11922,"count":30},{"startOffset":11994,"endOffset":12018,"count":30},{"startOffset":12109,"endOffset":12116,"count":0},{"startOffset":12197,"endOffset":12221,"count":30},{"startOffset":12223,"endOffset":12322,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket","ranges":[{"startOffset":12424,"endOffset":14710,"count":60},{"startOffset":12616,"endOffset":12636,"count":0},{"startOffset":12638,"endOffset":12806,"count":0},{"startOffset":12810,"endOffset":12949,"count":0},{"startOffset":12987,"endOffset":13050,"count":0},{"startOffset":13525,"endOffset":13542,"count":30},{"startOffset":13544,"endOffset":13554,"count":30},{"startOffset":13674,"endOffset":13995,"count":0},{"startOffset":14206,"endOffset":14228,"count":30},{"startOffset":14229,"endOffset":14255,"count":30},{"startOffset":14546,"endOffset":14561,"count":0},{"startOffset":14567,"endOffset":14594,"count":0}],"isBlockCoverage":true},{"functionName":"makeMethodProxy","ranges":[{"startOffset":15153,"endOffset":15320,"count":15}],"isBlockCoverage":true},{"functionName":"methodProxy","ranges":[{"startOffset":15195,"endOffset":15317,"count":30}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":15487,"endOffset":16180,"count":60},{"startOffset":16011,"endOffset":16055,"count":30},{"startOffset":16057,"endOffset":16179,"count":30}],"isBlockCoverage":true},{"functionName":"done","ranges":[{"startOffset":15768,"endOffset":15985,"count":60},{"startOffset":15855,"endOffset":15951,"count":30}],"isBlockCoverage":true},{"functionName":"disableRenegotiation","ranges":[{"startOffset":16226,"endOffset":16299,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._wrapHandle","ranges":[{"startOffset":16336,"endOffset":17339,"count":60},{"startOffset":16384,"endOffset":16406,"count":30},{"startOffset":16459,"endOffset":16600,"count":30},{"startOffset":16487,"endOffset":16525,"count":0},{"startOffset":16668,"endOffset":16708,"count":0},{"startOffset":16709,"endOffset":16762,"count":0},{"startOffset":16883,"endOffset":16938,"count":0}],"isBlockCoverage":true},{"functionName":"defineHandleReading","ranges":[{"startOffset":17478,"endOffset":17699,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17578,"endOffset":17626,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17637,"endOffset":17691,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketCloseDestroySSL","ranges":[{"startOffset":17701,"endOffset":17848,"count":60}],"isBlockCoverage":true},{"functionName":"destroySSL","ranges":[{"startOffset":17850,"endOffset":17901,"count":60}],"isBlockCoverage":true},{"functionName":"_destroySSL","ranges":[{"startOffset":17937,"endOffset":18229,"count":60},{"startOffset":17986,"endOffset":18228,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._init","ranges":[{"startOffset":18368,"endOffset":23192,"count":60},{"startOffset":18535,"endOffset":18545,"count":30},{"startOffset":18546,"endOffset":18556,"count":30},{"startOffset":18748,"endOffset":18768,"count":0},{"startOffset":18932,"endOffset":18953,"count":0},{"startOffset":19400,"endOffset":19992,"count":30},{"startOffset":19786,"endOffset":19898,"count":0},{"startOffset":19963,"endOffset":19982,"count":0},{"startOffset":19992,"endOffset":20637,"count":30},{"startOffset":20212,"endOffset":20244,"count":0},{"startOffset":20656,"endOffset":21199,"count":0},{"startOffset":21382,"endOffset":21410,"count":30},{"startOffset":21411,"endOffset":21519,"count":30},{"startOffset":21521,"endOffset":21650,"count":0},{"startOffset":21681,"endOffset":21857,"count":0},{"startOffset":21885,"endOffset":21909,"count":0},{"startOffset":21911,"endOffset":22610,"count":0},{"startOffset":22653,"endOffset":22716,"count":30},{"startOffset":22754,"endOffset":23027,"count":30},{"startOffset":23069,"endOffset":23190,"count":30}],"isBlockCoverage":true},{"functionName":"keylogNewListener","ranges":[{"startOffset":19143,"endOffset":19374,"count":570},{"startOffset":19220,"endOffset":19373,"count":0}],"isBlockCoverage":true},{"functionName":"ssl.onhandshakedone","ranges":[{"startOffset":20059,"endOffset":20137,"count":30}],"isBlockCoverage":true},{"functionName":"newListener","ranges":[{"startOffset":20399,"endOffset":20633,"count":360},{"startOffset":20475,"endOffset":20632,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":20889,"endOffset":21193,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22949,"endOffset":23021,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23092,"endOffset":23124,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.renegotiate","ranges":[{"startOffset":23229,"endOffset":24588,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.exportKeyingMaterial","ranges":[{"startOffset":24634,"endOffset":24956,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxSendFragment","ranges":[{"startOffset":25000,"endOffset":25091,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._handleTimeout","ranges":[{"startOffset":25131,"endOffset":25200,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._emitTLSError","ranges":[{"startOffset":25239,"endOffset":25325,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._tlsError","ranges":[{"startOffset":25360,"endOffset":25468,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._releaseControl","ranges":[{"startOffset":25509,"endOffset":25665,"count":60},{"startOffset":25555,"endOffset":25568,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._finishInit","ranges":[{"startOffset":25702,"endOffset":26761,"count":60},{"startOffset":26182,"endOffset":26189,"count":0},{"startOffset":26479,"endOffset":26489,"count":30},{"startOffset":26490,"endOffset":26500,"count":30},{"startOffset":26696,"endOffset":26736,"count":30}],"isBlockCoverage":true},{"functionName":"TLSSocket._start","ranges":[{"startOffset":26793,"endOffset":27292,"count":30},{"startOffset":26861,"endOffset":26871,"count":0},{"startOffset":27043,"endOffset":27099,"count":0},{"startOffset":27190,"endOffset":27197,"count":0},{"startOffset":27239,"endOffset":27266,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.setServername","ranges":[{"startOffset":27331,"endOffset":27499,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.setSession","ranges":[{"startOffset":27535,"endOffset":27673,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.getPeerCertificate","ranges":[{"startOffset":27717,"endOffset":27881,"count":30},{"startOffset":27853,"endOffset":27858,"count":0},{"startOffset":27863,"endOffset":27880,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.getCertificate","ranges":[{"startOffset":27921,"endOffset":28127,"count":0}],"isBlockCoverage":false},{"functionName":"makeSocketMethodProxy","ranges":[{"startOffset":28164,"endOffset":28354,"count":10}],"isBlockCoverage":true},{"functionName":"socketMethodProxy","ranges":[{"startOffset":28212,"endOffset":28351,"count":60},{"startOffset":28330,"endOffset":28350,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":28557,"endOffset":28635,"count":10}],"isBlockCoverage":true},{"functionName":"onServerSocketSecure","ranges":[{"startOffset":28677,"endOffset":29172,"count":30},{"startOffset":28811,"endOffset":28929,"count":0}],"isBlockCoverage":true},{"functionName":"onSocketTLSError","ranges":[{"startOffset":29174,"endOffset":29410,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketKeylog","ranges":[{"startOffset":29412,"endOffset":29499,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketClose","ranges":[{"startOffset":29501,"endOffset":29854,"count":30},{"startOffset":29602,"endOffset":29609,"count":0},{"startOffset":29661,"endOffset":29684,"count":0},{"startOffset":29686,"endOffset":29852,"count":0}],"isBlockCoverage":true},{"functionName":"tlsConnectionListener","ranges":[{"startOffset":29856,"endOffset":30705,"count":30},{"startOffset":30552,"endOffset":30588,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":33471,"endOffset":35377,"count":7},{"startOffset":33545,"endOffset":33582,"count":0},{"startOffset":33621,"endOffset":33668,"count":0},{"startOffset":33750,"endOffset":33755,"count":0},{"startOffset":33760,"endOffset":33837,"count":0},{"startOffset":34014,"endOffset":34059,"count":0},{"startOffset":34091,"endOffset":34128,"count":0},{"startOffset":34163,"endOffset":34217,"count":0},{"startOffset":34516,"endOffset":34628,"count":0},{"startOffset":34655,"endOffset":34698,"count":0},{"startOffset":34700,"endOffset":34804,"count":0},{"startOffset":34831,"endOffset":34874,"count":0},{"startOffset":34876,"endOffset":34980,"count":0},{"startOffset":35010,"endOffset":35055,"count":0},{"startOffset":35057,"endOffset":35184,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":35531,"endOffset":35615,"count":7}],"isBlockCoverage":true},{"functionName":"Server.setSecureContext","ranges":[{"startOffset":35655,"endOffset":38690,"count":7},{"startOffset":35734,"endOffset":35795,"count":0},{"startOffset":35820,"endOffset":35843,"count":0},{"startOffset":35924,"endOffset":35957,"count":0},{"startOffset":35989,"endOffset":36026,"count":0},{"startOffset":36117,"endOffset":36151,"count":0},{"startOffset":36189,"endOffset":36238,"count":0},{"startOffset":36329,"endOffset":36361,"count":0},{"startOffset":36393,"endOffset":36430,"count":0},{"startOffset":36502,"endOffset":36539,"count":0},{"startOffset":36615,"endOffset":36660,"count":0},{"startOffset":36729,"endOffset":36752,"count":0},{"startOffset":36849,"endOffset":36880,"count":0},{"startOffset":36985,"endOffset":37016,"count":0},{"startOffset":37105,"endOffset":37156,"count":0},{"startOffset":37277,"endOffset":37312,"count":0},{"startOffset":37389,"endOffset":37448,"count":0},{"startOffset":37713,"endOffset":37758,"count":0},{"startOffset":37790,"endOffset":37827,"count":0}],"isBlockCoverage":true},{"functionName":"Server._getServerData","ranges":[{"startOffset":38728,"endOffset":38811,"count":0}],"isBlockCoverage":false},{"functionName":"Server._setServerData","ranges":[{"startOffset":38849,"endOffset":38926,"count":0}],"isBlockCoverage":false},{"functionName":"getTicketKeys","ranges":[{"startOffset":38963,"endOffset":39043,"count":0}],"isBlockCoverage":false},{"functionName":"setTicketKeys","ranges":[{"startOffset":39080,"endOffset":39161,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39205,"endOffset":41320,"count":0}],"isBlockCoverage":false},{"functionName":"Server.addContext","ranges":[{"startOffset":41443,"endOffset":41808,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":41857,"endOffset":42091,"count":0}],"isBlockCoverage":false},{"functionName":"SNICallback","ranges":[{"startOffset":42094,"endOffset":42337,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeConnectArgs","ranges":[{"startOffset":42570,"endOffset":43298,"count":30},{"startOffset":43097,"endOffset":43142,"count":0},{"startOffset":43209,"endOffset":43254,"count":0},{"startOffset":43284,"endOffset":43295,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectSecure","ranges":[{"startOffset":43300,"endOffset":45064,"count":30},{"startOffset":43537,"endOffset":43573,"count":0},{"startOffset":43575,"endOffset":43731,"count":0},{"startOffset":44026,"endOffset":44088,"count":0},{"startOffset":44089,"endOffset":44122,"count":0},{"startOffset":44259,"endOffset":44689,"count":0},{"startOffset":44987,"endOffset":45017,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectEnd","ranges":[{"startOffset":45066,"endOffset":45615,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":45681,"endOffset":47989,"count":30},{"startOffset":47231,"endOffset":47281,"count":0},{"startOffset":47391,"endOffset":47427,"count":0},{"startOffset":47455,"endOffset":47833,"count":0},{"startOffset":47861,"endOffset":47878,"count":0}],"isBlockCoverage":true}]},{"scriptId":"219","url":"internal/js_stream_socket.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7449,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":335,"endOffset":364,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":693,"endOffset":756,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstart","ranges":[{"startOffset":758,"endOffset":823,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstop","ranges":[{"startOffset":825,"endOffset":888,"count":0}],"isBlockCoverage":false},{"functionName":"onshutdown","ranges":[{"startOffset":890,"endOffset":961,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":963,"endOffset":1040,"count":0}],"isBlockCoverage":false},{"functionName":"JSStreamSocket","ranges":[{"startOffset":1800,"endOffset":3495,"count":0}],"isBlockCoverage":false},{"functionName":"get StreamWrap","ranges":[{"startOffset":3635,"endOffset":3684,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":3688,"endOffset":3750,"count":0}],"isBlockCoverage":false},{"functionName":"readStart","ranges":[{"startOffset":3754,"endOffset":3811,"count":0}],"isBlockCoverage":false},{"functionName":"readStop","ranges":[{"startOffset":3815,"endOffset":3870,"count":0}],"isBlockCoverage":false},{"functionName":"doShutdown","ranges":[{"startOffset":3874,"endOffset":4870,"count":0}],"isBlockCoverage":false},{"functionName":"finishShutdown","ranges":[{"startOffset":4938,"endOffset":5230,"count":0}],"isBlockCoverage":false},{"functionName":"doWrite","ranges":[{"startOffset":5234,"endOffset":6156,"count":0}],"isBlockCoverage":false},{"functionName":"finishWrite","ranges":[{"startOffset":6224,"endOffset":6667,"count":0}],"isBlockCoverage":false},{"functionName":"doClose","ranges":[{"startOffset":6671,"endOffset":7412,"count":0}],"isBlockCoverage":false}]},{"scriptId":"220","url":"cluster.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1288,"count":1}],"isBlockCoverage":false}]},{"scriptId":"221","url":"internal/cluster/master.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10797,"count":1}],"isBlockCoverage":false},{"functionName":"cluster.setupMaster","ranges":[{"startOffset":1751,"endOffset":3368,"count":0}],"isBlockCoverage":false},{"functionName":"setupSettingsNT","ranges":[{"startOffset":3371,"endOffset":3444,"count":0}],"isBlockCoverage":false},{"functionName":"createWorkerProcess","ranges":[{"startOffset":3446,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"removeWorker","ranges":[{"startOffset":4852,"endOffset":5087,"count":0}],"isBlockCoverage":false},{"functionName":"removeHandlesForWorker","ranges":[{"startOffset":5089,"endOffset":5252,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.fork","ranges":[{"startOffset":5269,"endOffset":6877,"count":0}],"isBlockCoverage":false},{"functionName":"emitForkNT","ranges":[{"startOffset":6880,"endOffset":6943,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.disconnect","ranges":[{"startOffset":6966,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"onmessage","ranges":[{"startOffset":7340,"endOffset":7763,"count":0}],"isBlockCoverage":false},{"functionName":"online","ranges":[{"startOffset":7765,"endOffset":7878,"count":0}],"isBlockCoverage":false},{"functionName":"exitedAfterDisconnect","ranges":[{"startOffset":7880,"endOffset":8008,"count":0}],"isBlockCoverage":false},{"functionName":"queryServer","ranges":[{"startOffset":8010,"endOffset":9580,"count":0}],"isBlockCoverage":false},{"functionName":"listening","ranges":[{"startOffset":9582,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":10017,"endOffset":10179,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":10181,"endOffset":10285,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.disconnect","ranges":[{"startOffset":10387,"endOffset":10544,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.destroy","ranges":[{"startOffset":10574,"endOffset":10795,"count":0}],"isBlockCoverage":false}]},{"scriptId":"222","url":"child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20033,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1538,"endOffset":1567,"count":0}],"isBlockCoverage":false},{"functionName":"fork","ranges":[{"startOffset":2262,"endOffset":3916,"count":0}],"isBlockCoverage":false},{"functionName":"_forkChild","ranges":[{"startOffset":3918,"endOffset":4407,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeExecArgs","ranges":[{"startOffset":4409,"endOffset":4817,"count":0}],"isBlockCoverage":false},{"functionName":"exec","ranges":[{"startOffset":4820,"endOffset":5067,"count":0}],"isBlockCoverage":false},{"functionName":"customPromiseExecFunction","ranges":[{"startOffset":5103,"endOffset":5531,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5124,"endOffset":5528,"count":0}],"isBlockCoverage":false},{"functionName":"execFile","ranges":[{"startOffset":5648,"endOffset":10990,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeSpawnArguments","ranges":[{"startOffset":11114,"endOffset":15353,"count":0}],"isBlockCoverage":false},{"functionName":"spawn","ranges":[{"startOffset":15356,"endOffset":15558,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":15560,"endOffset":17046,"count":0}],"isBlockCoverage":false},{"functionName":"checkExecSyncError","ranges":[{"startOffset":17049,"endOffset":17478,"count":0}],"isBlockCoverage":false},{"functionName":"execFileSync","ranges":[{"startOffset":17481,"endOffset":17891,"count":0}],"isBlockCoverage":false},{"functionName":"execSync","ranges":[{"startOffset":17894,"endOffset":18270,"count":0}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":18273,"endOffset":18461,"count":0}],"isBlockCoverage":false},{"functionName":"validateMaxBuffer","ranges":[{"startOffset":18464,"endOffset":18737,"count":0}],"isBlockCoverage":false},{"functionName":"sanitizeKillSignal","ranges":[{"startOffset":18740,"endOffset":19103,"count":0}],"isBlockCoverage":false},{"functionName":"spawnWithSignal","ranges":[{"startOffset":19252,"endOffset":19886,"count":0}],"isBlockCoverage":false}]},{"scriptId":"223","url":"internal/child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30647,"count":1}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2131,"endOffset":2190,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2197,"endOffset":2251,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2312,"endOffset":2379,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2386,"endOffset":2527,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2556,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"postSend","ranges":[{"startOffset":4117,"endOffset":4863,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":4870,"endOffset":5325,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5389,"endOffset":5448,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5455,"endOffset":5509,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5573,"endOffset":5693,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5700,"endOffset":5859,"count":0}],"isBlockCoverage":false},{"functionName":"stdioStringToArray","ranges":[{"startOffset":5868,"endOffset":6215,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess","ranges":[{"startOffset":6217,"endOffset":7562,"count":0}],"isBlockCoverage":false},{"functionName":"flushStdio","ranges":[{"startOffset":7685,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":8166,"endOffset":8277,"count":0}],"isBlockCoverage":false},{"functionName":"getHandleWrapType","ranges":[{"startOffset":8280,"endOffset":8509,"count":0}],"isBlockCoverage":false},{"functionName":"closePendingHandle","ranges":[{"startOffset":8511,"endOffset":8624,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.spawn","ranges":[{"startOffset":8658,"endOffset":12526,"count":0}],"isBlockCoverage":false},{"functionName":"onErrorNT","ranges":[{"startOffset":12530,"endOffset":12591,"count":0}],"isBlockCoverage":false},{"functionName":"onSpawnNT","ranges":[{"startOffset":12594,"endOffset":12644,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.kill","ranges":[{"startOffset":12677,"endOffset":13342,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.ref","ranges":[{"startOffset":13375,"endOffset":13429,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.unref","ranges":[{"startOffset":13464,"endOffset":13520,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":13562,"endOffset":13619,"count":0}],"isBlockCoverage":false},{"functionName":"Control","ranges":[{"startOffset":13624,"endOffset":13692,"count":0}],"isBlockCoverage":false},{"functionName":"refCounted","ranges":[{"startOffset":14006,"endOffset":14114,"count":0}],"isBlockCoverage":false},{"functionName":"unrefCounted","ranges":[{"startOffset":14118,"endOffset":14256,"count":0}],"isBlockCoverage":false},{"functionName":"ref","ranges":[{"startOffset":14260,"endOffset":14331,"count":0}],"isBlockCoverage":false},{"functionName":"unref","ranges":[{"startOffset":14335,"endOffset":14410,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":14414,"endOffset":14485,"count":0}],"isBlockCoverage":false},{"functionName":"setupChannel","ranges":[{"startOffset":14635,"endOffset":26287,"count":0}],"isBlockCoverage":false},{"functionName":"isInternal","ranges":[{"startOffset":26322,"endOffset":26604,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":26606,"endOffset":26624,"count":0}],"isBlockCoverage":false},{"functionName":"getValidStdio","ranges":[{"startOffset":26626,"endOffset":29345,"count":0}],"isBlockCoverage":false},{"functionName":"getSocketList","ranges":[{"startOffset":29348,"endOffset":29664,"count":0}],"isBlockCoverage":false},{"functionName":"maybeClose","ranges":[{"startOffset":29667,"endOffset":29868,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":29870,"endOffset":30522,"count":0}],"isBlockCoverage":false}]},{"scriptId":"224","url":"dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":27406,"count":1}],"isBlockCoverage":false},{"functionName":"Socket","ranges":[{"startOffset":2704,"endOffset":3981,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":4092,"endOffset":4170,"count":0}],"isBlockCoverage":false},{"functionName":"startListening","ranges":[{"startOffset":4173,"endOffset":4607,"count":0}],"isBlockCoverage":false},{"functionName":"replaceHandle","ranges":[{"startOffset":4609,"endOffset":5179,"count":0}],"isBlockCoverage":false},{"functionName":"bufferSize","ranges":[{"startOffset":5181,"endOffset":5473,"count":0}],"isBlockCoverage":false},{"functionName":"bindServerHandle","ranges":[{"startOffset":5540,"endOffset":5963,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.bind","ranges":[{"startOffset":5989,"endOffset":9579,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.connect","ranges":[{"startOffset":9609,"endOffset":10351,"count":0}],"isBlockCoverage":false},{"functionName":"_connect","ranges":[{"startOffset":10355,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"doConnect","ranges":[{"startOffset":10703,"endOffset":11345,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.disconnect","ranges":[{"startOffset":11378,"endOffset":11685,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.sendto","ranges":[{"startOffset":11790,"endOffset":12231,"count":0}],"isBlockCoverage":false},{"functionName":"sliceBuffer","ranges":[{"startOffset":12235,"endOffset":12805,"count":0}],"isBlockCoverage":false},{"functionName":"fixBufferList","ranges":[{"startOffset":12808,"endOffset":13192,"count":0}],"isBlockCoverage":false},{"functionName":"enqueue","ranges":[{"startOffset":13195,"endOffset":13607,"count":0}],"isBlockCoverage":false},{"functionName":"onListenSuccess","ranges":[{"startOffset":13610,"endOffset":13730,"count":0}],"isBlockCoverage":false},{"functionName":"onListenError","ranges":[{"startOffset":13733,"endOffset":13857,"count":0}],"isBlockCoverage":false},{"functionName":"clearQueue","ranges":[{"startOffset":13860,"endOffset":14057,"count":0}],"isBlockCoverage":false},{"functionName":"isConnected","ranges":[{"startOffset":14059,"endOffset":14174,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.send","ranges":[{"startOffset":14746,"endOffset":17640,"count":0}],"isBlockCoverage":false},{"functionName":"doSend","ranges":[{"startOffset":17643,"endOffset":18782,"count":0}],"isBlockCoverage":false},{"functionName":"afterSend","ranges":[{"startOffset":18784,"endOffset":18961,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.close","ranges":[{"startOffset":18988,"endOffset":19523,"count":0}],"isBlockCoverage":false},{"functionName":"socketCloseNT","ranges":[{"startOffset":19527,"endOffset":19581,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":19611,"endOffset":19801,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.remoteAddress","ranges":[{"startOffset":19837,"endOffset":20147,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setBroadcast","ranges":[{"startOffset":20183,"endOffset":20331,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setTTL","ranges":[{"startOffset":20361,"endOffset":20535,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastTTL","ranges":[{"startOffset":20574,"endOffset":20766,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastLoopback","ranges":[{"startOffset":20810,"endOffset":21010,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastInterface","ranges":[{"startOffset":21055,"endOffset":21317,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addMembership","ranges":[{"startOffset":21353,"endOffset":21727,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropMembership","ranges":[{"startOffset":21765,"endOffset":22142,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addSourceSpecificMembership","ranges":[{"startOffset":22192,"endOffset":22949,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropSourceSpecificMembership","ranges":[{"startOffset":23001,"endOffset":23764,"count":0}],"isBlockCoverage":false},{"functionName":"healthCheck","ranges":[{"startOffset":23768,"endOffset":23931,"count":0}],"isBlockCoverage":false},{"functionName":"stopReceiving","ranges":[{"startOffset":23934,"endOffset":24098,"count":0}],"isBlockCoverage":false},{"functionName":"onMessage","ranges":[{"startOffset":24101,"endOffset":24355,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":24381,"endOffset":24488,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":24517,"endOffset":24626,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setRecvBufferSize","ranges":[{"startOffset":24667,"endOffset":24724,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setSendBufferSize","ranges":[{"startOffset":24765,"endOffset":24822,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getRecvBufferSize","ranges":[{"startOffset":24863,"endOffset":24920,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getSendBufferSize","ranges":[{"startOffset":24961,"endOffset":25018,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25119,"endOffset":25173,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25246,"endOffset":25302,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25435,"endOffset":25492,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25568,"endOffset":25627,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25763,"endOffset":25820,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25896,"endOffset":25955,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26087,"endOffset":26140,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26212,"endOffset":26267,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26399,"endOffset":26456,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26532,"endOffset":26591,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26697,"endOffset":26732,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26841,"endOffset":26878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":27144,"endOffset":27180,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27184,"endOffset":27225,"count":0}],"isBlockCoverage":false}]},{"scriptId":"225","url":"internal/dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1844,"count":1}],"isBlockCoverage":false},{"functionName":"lookup4","ranges":[{"startOffset":448,"endOffset":549,"count":0}],"isBlockCoverage":false},{"functionName":"lookup6","ranges":[{"startOffset":552,"endOffset":647,"count":0}],"isBlockCoverage":false},{"functionName":"newHandle","ranges":[{"startOffset":649,"endOffset":1317,"count":0}],"isBlockCoverage":false},{"functionName":"_createSocketHandle","ranges":[{"startOffset":1320,"endOffset":1768,"count":0}],"isBlockCoverage":false}]},{"scriptId":"226","url":"internal/socket_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2705,"count":1}],"isBlockCoverage":false},{"functionName":"SocketListSend","ranges":[{"startOffset":235,"endOffset":376,"count":0}],"isBlockCoverage":false},{"functionName":"_request","ranges":[{"startOffset":380,"endOffset":1035,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":1039,"endOffset":1189,"count":0}],"isBlockCoverage":false},{"functionName":"getConnections","ranges":[{"startOffset":1193,"endOffset":1428,"count":0}],"isBlockCoverage":false},{"functionName":"SocketListReceive","ranges":[{"startOffset":1542,"endOffset":2400,"count":0}],"isBlockCoverage":false},{"functionName":"add","ranges":[{"startOffset":2404,"endOffset":2645,"count":0}],"isBlockCoverage":false}]},{"scriptId":"227","url":"internal/cluster/round_robin_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3060,"count":1}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle","ranges":[{"startOffset":341,"endOffset":1127,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.add","ranges":[{"startOffset":1162,"endOffset":1791,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.remove","ranges":[{"startOffset":1830,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.distribute","ranges":[{"startOffset":2198,"endOffset":2448,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.handoff","ranges":[{"startOffset":2488,"endOffset":3058,"count":0}],"isBlockCoverage":false}]},{"scriptId":"228","url":"internal/cluster/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1039,"count":1}],"isBlockCoverage":false},{"functionName":"sendHelper","ranges":[{"startOffset":163,"endOffset":495,"count":0}],"isBlockCoverage":false},{"functionName":"internal","ranges":[{"startOffset":629,"endOffset":1038,"count":0}],"isBlockCoverage":false}]},{"scriptId":"229","url":"internal/cluster/shared_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1102,"count":1}],"isBlockCoverage":false},{"functionName":"SharedHandle","ranges":[{"startOffset":192,"endOffset":670,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.add","ranges":[{"startOffset":701,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.remove","ranges":[{"startOffset":880,"endOffset":1100,"count":0}],"isBlockCoverage":false}]},{"scriptId":"230","url":"internal/cluster/worker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1314,"count":1}],"isBlockCoverage":false},{"functionName":"Worker","ranges":[{"startOffset":227,"endOffset":809,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.kill","ranges":[{"startOffset":944,"endOffset":1005,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.send","ranges":[{"startOffset":1032,"endOffset":1113,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isDead","ranges":[{"startOffset":1142,"endOffset":1231,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isConnected","ranges":[{"startOffset":1265,"endOffset":1312,"count":0}],"isBlockCoverage":false}]},{"scriptId":"231","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/info.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":529,"count":1}],"isBlockCoverage":true},{"functionName":"infoController","ranges":[{"startOffset":37,"endOffset":496,"count":29},{"startOffset":350,"endOffset":379,"count":27},{"startOffset":381,"endOffset":494,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":240,"endOffset":308,"count":133}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":422,"endOffset":488,"count":127}],"isBlockCoverage":true}]},{"scriptId":"232","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":853,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":156,"endOffset":820,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":483,"endOffset":742,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":652,"endOffset":669,"count":3}],"isBlockCoverage":true}]},{"scriptId":"233","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/selectRandomItemsFromArray.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":256,"count":1}],"isBlockCoverage":true},{"functionName":"selectRandomItemFromArray","ranges":[{"startOffset":0,"endOffset":212,"count":3},{"startOffset":88,"endOffset":105,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":145,"endOffset":170,"count":0}],"isBlockCoverage":false}]},{"scriptId":"234","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":958,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":37,"endOffset":925,"count":3}],"isBlockCoverage":true}]},{"scriptId":"235","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":514,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":37,"endOffset":482,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":169,"endOffset":339,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":383,"endOffset":407,"count":1}],"isBlockCoverage":true}]},{"scriptId":"236","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1072,"count":1}],"isBlockCoverage":true},{"functionName":"internalGetController","ranges":[{"startOffset":37,"endOffset":1032,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":591,"endOffset":613,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":670,"endOffset":940,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":754,"endOffset":843,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":803,"endOffset":835,"count":3}],"isBlockCoverage":true}]}],"timestamp":96044.058793} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 0ed1f44..7dea64c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "wtfnode": "^0.8.4" }, "devDependencies": { + "c8": "^7.7.2", "eslint": "^7.28.0", "semistandard": "^16.0.0", "uuid": "^8.3.2" @@ -129,6 +130,12 @@ "node": ">=4" } }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, "node_modules/@eslint/eslintrc": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", @@ -149,6 +156,21 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "dev": true + }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -327,6 +349,102 @@ "concat-map": "0.0.1" } }, + "node_modules/c8": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.2.tgz", + "integrity": "sha512-8AqNnUMxB3hsgYCYso2GJjlwnaNPlrEEbYbCQb7N76V1nrOgCKXiTcE3gXU18rIj0FeduPywROrIBMC7XAKApg==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.2", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.0.2", + "rimraf": "^3.0.0", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^7.1.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.7" + }, + "bin": { + "c8": "bin/c8.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/c8/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -374,6 +492,17 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -415,6 +544,15 @@ "node": ">=0.10.0" } }, + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -550,6 +688,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -1113,6 +1260,19 @@ "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, + "node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -1131,6 +1291,15 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, "node_modules/get-intrinsic": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", @@ -1257,6 +1426,12 @@ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, "node_modules/ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -1496,6 +1671,42 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, + "node_modules/istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -1654,6 +1865,30 @@ "node": ">=10" } }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -2217,6 +2452,15 @@ "url": "https://github.com/sponsors/mysticatea" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -2272,6 +2516,12 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "node_modules/semistandard": { "version": "16.0.0", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.0.tgz", @@ -2627,6 +2877,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, "node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -2644,6 +2900,15 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, + "node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, "node_modules/spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -2861,6 +3126,20 @@ "ndjson-fe": "^1.2.10" } }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -2941,6 +3220,20 @@ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, + "node_modules/v8-to-istanbul": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", + "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.10.0" + } + }, "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -2991,6 +3284,23 @@ "node": ">=0.10.0" } }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -3026,10 +3336,58 @@ "node": ">=8" } }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.7", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } } }, "dependencies": { @@ -3117,6 +3475,12 @@ } } }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, "@eslint/eslintrc": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", @@ -3134,6 +3498,18 @@ "strip-json-comments": "^3.1.1" } }, + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "dev": true + }, "@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -3267,6 +3643,71 @@ "concat-map": "0.0.1" } }, + "c8": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.2.tgz", + "integrity": "sha512-8AqNnUMxB3hsgYCYso2GJjlwnaNPlrEEbYbCQb7N76V1nrOgCKXiTcE3gXU18rIj0FeduPywROrIBMC7XAKApg==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.2", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.0.2", + "rimraf": "^3.0.0", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^7.1.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.7" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + } + } + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -3302,6 +3743,17 @@ "supports-color": "^7.1.0" } }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -3337,6 +3789,15 @@ "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", "dev": true }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -3440,6 +3901,12 @@ "is-symbol": "^1.0.2" } }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -3847,6 +4314,16 @@ "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, + "foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3865,6 +4342,12 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, "get-intrinsic": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", @@ -3952,6 +4435,12 @@ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -4113,6 +4602,33 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, + "istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "dev": true + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + } + }, + "istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -4247,6 +4763,23 @@ "yallist": "^4.0.0" } }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -4659,6 +5192,12 @@ "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", "dev": true }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, "require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -4699,6 +5238,12 @@ "glob": "^7.1.3" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "semistandard": { "version": "16.0.0", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.0.tgz", @@ -4969,6 +5514,12 @@ "object-inspect": "^1.9.0" } }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, "slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -4980,6 +5531,12 @@ "is-fullwidth-code-point": "^3.0.0" } }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -5148,6 +5705,17 @@ "ndjson-fe": "^1.2.10" } }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -5213,6 +5781,17 @@ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, + "v8-to-istanbul": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", + "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + } + }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -5251,6 +5830,17 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -5277,10 +5867,43 @@ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.7", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true } } } diff --git a/package.json b/package.json index c275b3a..e043d02 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "index.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "test": "./makeCerts.sh && c8 node test" }, "keywords": [], "author": "", @@ -23,6 +23,7 @@ "wtfnode": "^0.8.4" }, "devDependencies": { + "c8": "^7.7.2", "eslint": "^7.28.0", "semistandard": "^16.0.0", "uuid": "^8.3.2" From d5eb5696d50e232c8c5196c58812da84ffc80fac Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 20:45:13 +1000 Subject: [PATCH 04/73] Make tests run with github actions --- .github/workflows/codeql-analysis.yml | 62 +++++++++++++++++++++++++++ .github/workflows/test.yml | 27 ++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 .github/workflows/codeql-analysis.yml create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml new file mode 100644 index 0000000..c23cb3a --- /dev/null +++ b/.github/workflows/codeql-analysis.yml @@ -0,0 +1,62 @@ +# For most projects, this workflow file will not need changing; you simply need +# to commit it to your repository. +# +# You may wish to alter this file to override the set of languages analyzed, +# or to provide custom queries or build logic. +name: "CodeQL" + +on: + push: + branches: [master] + pull_request: + # The branches below must be a subset of the branches above + branches: [master] + schedule: + - cron: '0 3 * * 0' + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + # Override automatic language detection by changing the below list + # Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python'] + language: ['javascript'] + # Learn more... + # https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: ${{ matrix.language }} + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. + # queries: ./path/to/local/query, your-org/your-repo/queries@main + + # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). + # If this step fails, then you should remove it and run the build manually (see below) + - name: Autobuild + uses: github/codeql-action/autobuild@v1 + + # ℹ️ Command-line programs to run using the OS shell. + # 📚 https://git.io/JvXDl + + # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines + # and modify them (or add more) to build your code if your project + # uses a compiled language + + #- run: | + # make bootstrap + # make release + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..99877da --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,27 @@ +name: Node.js Test Runner + +on: [push] + +jobs: + build: + + runs-on: ubuntu-latest + timeout-minutes: 5 + + strategy: + matrix: + node-version: [14.x, 16.x] + + steps: + - uses: actions/checkout@v2 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + + - run: npm install + - run: npm run build --if-present + - run: npm test + env: + CI: true From 14558b38c844a55a3e447305236dd2af437ed315 Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 20:47:20 +1000 Subject: [PATCH 05/73] Fix tests --- coverage/tmp/coverage-267186-1623581051457-0.json | 1 - coverage/tmp/coverage-267928-1623581236821-0.json | 1 + test/helpers/createTestServer.js | 3 +++ 3 files changed, 4 insertions(+), 1 deletion(-) delete mode 100644 coverage/tmp/coverage-267186-1623581051457-0.json create mode 100644 coverage/tmp/coverage-267928-1623581236821-0.json diff --git a/coverage/tmp/coverage-267186-1623581051457-0.json b/coverage/tmp/coverage-267186-1623581051457-0.json deleted file mode 100644 index be4435e..0000000 --- a/coverage/tmp/coverage-267186-1623581051457-0.json +++ /dev/null @@ -1 +0,0 @@ -{"result":[{"scriptId":"6","url":"internal/per_context/primordials.js","functions":[{"functionName":"uncurryThis","ranges":[{"startOffset":1000,"endOffset":1096,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1038,"endOffset":1093,"count":6990}],"isBlockCoverage":true}]},{"scriptId":"9","url":"internal/bootstrap/loaders.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10311,"count":1}],"isBlockCoverage":true},{"functionName":"binding","ranges":[{"startOffset":3652,"endOffset":4049,"count":0}],"isBlockCoverage":false},{"functionName":"_linkedBinding","ranges":[{"startOffset":4079,"endOffset":4287,"count":0}],"isBlockCoverage":false},{"functionName":"internalBinding","ranges":[{"startOffset":4467,"endOffset":4729,"count":288},{"startOffset":4569,"endOffset":4709,"count":40}],"isBlockCoverage":true},{"functionName":"getOwn","ranges":[{"startOffset":4874,"endOffset":5028,"count":1584},{"startOffset":5010,"endOffset":5025,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5395,"endOffset":5493,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5454,"endOffset":5488,"count":232}],"isBlockCoverage":true},{"functionName":"NativeModule","ranges":[{"startOffset":5498,"endOffset":6250,"count":232}],"isBlockCoverage":true},{"functionName":"exposeInternals","ranges":[{"startOffset":6400,"endOffset":6626,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6637,"endOffset":6690,"count":0}],"isBlockCoverage":false},{"functionName":"canBeRequiredByUsers","ranges":[{"startOffset":6701,"endOffset":6817,"count":440},{"startOffset":6785,"endOffset":6812,"count":57}],"isBlockCoverage":true},{"functionName":"compileForPublicLoader","ranges":[{"startOffset":6889,"endOffset":7583,"count":55},{"startOffset":6952,"endOffset":7144,"count":0},{"startOffset":7208,"endOffset":7505,"count":12},{"startOffset":7467,"endOffset":7471,"count":0}],"isBlockCoverage":true},{"functionName":"getESMFacade","ranges":[{"startOffset":7587,"endOffset":8138,"count":61},{"startOffset":7625,"endOffset":7644,"count":49},{"startOffset":7644,"endOffset":8137,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7865,"endOffset":7978,"count":12}],"isBlockCoverage":true},{"functionName":"syncExports","ranges":[{"startOffset":8434,"endOffset":8778,"count":67},{"startOffset":8553,"endOffset":8768,"count":1584},{"startOffset":8630,"endOffset":8639,"count":0}],"isBlockCoverage":true},{"functionName":"compileForInternalLoader","ranges":[{"startOffset":8782,"endOffset":9367,"count":648},{"startOffset":8831,"endOffset":8846,"count":125},{"startOffset":8848,"endOffset":8882,"count":529},{"startOffset":8882,"endOffset":9021,"count":119},{"startOffset":9021,"endOffset":9056,"count":1},{"startOffset":9057,"endOffset":9078,"count":118},{"startOffset":9232,"endOffset":9366,"count":119}],"isBlockCoverage":true},{"functionName":"nativeModuleRequire","ranges":[{"startOffset":9565,"endOffset":9936,"count":599},{"startOffset":9623,"endOffset":9654,"count":6},{"startOffset":9654,"endOffset":9838,"count":593},{"startOffset":9838,"endOffset":9893,"count":0},{"startOffset":9893,"endOffset":9935,"count":593}],"isBlockCoverage":true},{"functionName":"requireWithFallbackInDeps","ranges":[{"startOffset":10052,"endOffset":10224,"count":0}],"isBlockCoverage":false}]},{"scriptId":"10","url":"internal/bootstrap/node.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12616,"count":1}],"isBlockCoverage":true},{"functionName":"process.openStdin","ranges":[{"startOffset":3399,"endOffset":3469,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6160,"endOffset":6322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6424,"endOffset":6596,"count":0}],"isBlockCoverage":false},{"functionName":"setupPrepareStackTrace","ranges":[{"startOffset":9383,"endOffset":9969,"count":1}],"isBlockCoverage":true},{"functionName":"setupProcessObject","ranges":[{"startOffset":9971,"endOffset":10576,"count":1}],"isBlockCoverage":true},{"functionName":"setupGlobalProxy","ranges":[{"startOffset":10578,"endOffset":10755,"count":1}],"isBlockCoverage":true},{"functionName":"setupBuffer","ranges":[{"startOffset":10757,"endOffset":11193,"count":1}],"isBlockCoverage":true},{"functionName":"createGlobalConsole","ranges":[{"startOffset":11195,"endOffset":11876,"count":1}],"isBlockCoverage":true},{"functionName":"exposeNamespace","ranges":[{"startOffset":11928,"endOffset":12126,"count":1}],"isBlockCoverage":true},{"functionName":"exposeInterface","ranges":[{"startOffset":12178,"endOffset":12376,"count":4}],"isBlockCoverage":true},{"functionName":"defineOperation","ranges":[{"startOffset":12436,"endOffset":12615,"count":7}],"isBlockCoverage":true}]},{"scriptId":"11","url":"internal/errors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":53549,"count":1}],"isBlockCoverage":false},{"functionName":"prepareStackTrace","ranges":[{"startOffset":1404,"endOffset":2120,"count":93},{"startOffset":1581,"endOffset":1697,"count":0},{"startOffset":1824,"endOffset":1846,"count":0},{"startOffset":2027,"endOffset":2056,"count":0}],"isBlockCoverage":true},{"functionName":"maybeOverridePrepareStackTrace","ranges":[{"startOffset":2162,"endOffset":2869,"count":93},{"startOffset":2431,"endOffset":2497,"count":0},{"startOffset":2778,"endOffset":2844,"count":0}],"isBlockCoverage":true},{"functionName":"lazyInternalUtil","ranges":[{"startOffset":2959,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"lazyInternalUtilInspect","ranges":[{"startOffset":3119,"endOffset":3281,"count":0}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":3295,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"SystemError","ranges":[{"startOffset":3906,"endOffset":6444,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":6448,"endOffset":6523,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6527,"endOffset":6716,"count":0}],"isBlockCoverage":false},{"functionName":"makeSystemErrorWithCode","ranges":[{"startOffset":6720,"endOffset":6865,"count":4}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6811,"endOffset":6858,"count":0}],"isBlockCoverage":false},{"functionName":"makeNodeErrorWithCode","ranges":[{"startOffset":6867,"endOffset":7622,"count":233}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6955,"endOffset":7536,"count":93},{"startOffset":7045,"endOffset":7254,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":7542,"endOffset":7615,"count":0}],"isBlockCoverage":false},{"functionName":"hideStackFrames","ranges":[{"startOffset":7694,"endOffset":8105,"count":31}],"isBlockCoverage":true},{"functionName":"hidden","ranges":[{"startOffset":7734,"endOffset":8102,"count":2743},{"startOffset":7898,"endOffset":7962,"count":2084},{"startOffset":8046,"endOffset":8092,"count":2084}],"isBlockCoverage":true},{"functionName":"addCodeToName","ranges":[{"startOffset":8107,"endOffset":8723,"count":93},{"startOffset":8205,"endOffset":8260,"count":0},{"startOffset":8545,"endOffset":8689,"count":0}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":8835,"endOffset":9343,"count":234},{"startOffset":9077,"endOffset":9122,"count":4},{"startOffset":9122,"endOffset":9176,"count":230},{"startOffset":9211,"endOffset":9321,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9238,"endOffset":9315,"count":3}],"isBlockCoverage":true},{"functionName":"getMessage","ranges":[{"startOffset":9345,"endOffset":10149,"count":93},{"startOffset":9446,"endOffset":9482,"count":1},{"startOffset":9773,"endOffset":9831,"count":0},{"startOffset":10053,"endOffset":10148,"count":0}],"isBlockCoverage":true},{"functionName":"lazyUv","ranges":[{"startOffset":10167,"endOffset":10271,"count":20},{"startOffset":10205,"endOffset":10249,"count":1}],"isBlockCoverage":true},{"functionName":"uvErrmapGet","ranges":[{"startOffset":10328,"endOffset":10498,"count":20},{"startOffset":10406,"endOffset":10459,"count":1}],"isBlockCoverage":true},{"functionName":"uvException","ranges":[{"startOffset":10791,"endOffset":11987,"count":20},{"startOffset":10868,"endOffset":10886,"count":0},{"startOffset":11080,"endOffset":11149,"count":0},{"startOffset":11688,"endOffset":11810,"count":60},{"startOffset":11736,"endOffset":11754,"count":40},{"startOffset":11756,"endOffset":11779,"count":20},{"startOffset":11779,"endOffset":11810,"count":40},{"startOffset":11882,"endOffset":11908,"count":0}],"isBlockCoverage":true},{"functionName":"uvExceptionWithHostPort","ranges":[{"startOffset":12300,"endOffset":13205,"count":0}],"isBlockCoverage":false},{"functionName":"errnoException","ranges":[{"startOffset":13384,"endOffset":14090,"count":0}],"isBlockCoverage":false},{"functionName":"exceptionWithHostPort","ranges":[{"startOffset":14443,"endOffset":15659,"count":0}],"isBlockCoverage":false},{"functionName":"dnsException","ranges":[{"startOffset":15823,"endOffset":17338,"count":0}],"isBlockCoverage":false},{"functionName":"connResetException","ranges":[{"startOffset":17340,"endOffset":17495,"count":0}],"isBlockCoverage":false},{"functionName":"isStackOverflowError","ranges":[{"startOffset":17785,"endOffset":18163,"count":0}],"isBlockCoverage":false},{"functionName":"addNumericalSeparator","ranges":[{"startOffset":18244,"endOffset":18480,"count":0}],"isBlockCoverage":false},{"functionName":"beforeInspector","ranges":[{"startOffset":18759,"endOffset":19150,"count":0}],"isBlockCoverage":false},{"functionName":"afterInspector","ranges":[{"startOffset":19154,"endOffset":20492,"count":0}],"isBlockCoverage":false},{"functionName":"AbortError","ranges":[{"startOffset":20728,"endOffset":20846,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22625,"endOffset":22789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25628,"endOffset":25743,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26032,"endOffset":26126,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":28407,"endOffset":28635,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":30368,"endOffset":30586,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32336,"endOffset":32636,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32678,"endOffset":32822,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32865,"endOffset":36070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36111,"endOffset":36367,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36759,"endOffset":36922,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37584,"endOffset":37719,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37760,"endOffset":38084,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38243,"endOffset":38391,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38435,"endOffset":39209,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39587,"endOffset":39751,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39804,"endOffset":40135,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40179,"endOffset":40486,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40856,"endOffset":40931,"count":93}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":40975,"endOffset":41263,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":41591,"endOffset":42022,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42698,"endOffset":43221,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43315,"endOffset":43416,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44176,"endOffset":44874,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44925,"endOffset":45117,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45166,"endOffset":45482,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45515,"endOffset":46392,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":46844,"endOffset":47103,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":48453,"endOffset":48622,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":50520,"endOffset":50651,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":51244,"endOffset":51527,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52507,"endOffset":52605,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52799,"endOffset":53154,"count":0}],"isBlockCoverage":false}]},{"scriptId":"12","url":"internal/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12498,"count":1}],"isBlockCoverage":false},{"functionName":"lazyUv","ranges":[{"startOffset":991,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"removeColors","ranges":[{"startOffset":1084,"endOffset":1153,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":1155,"endOffset":1405,"count":0}],"isBlockCoverage":false},{"functionName":"deprecate","ranges":[{"startOffset":1690,"endOffset":2787,"count":45},{"startOffset":1764,"endOffset":1784,"count":0},{"startOffset":1844,"endOffset":1899,"count":0},{"startOffset":2541,"endOffset":2763,"count":30}],"isBlockCoverage":true},{"functionName":"deprecated","ranges":[{"startOffset":1925,"endOffset":2399,"count":0}],"isBlockCoverage":false},{"functionName":"decorateErrorStack","ranges":[{"startOffset":2789,"endOffset":3128,"count":0}],"isBlockCoverage":false},{"functionName":"assertCrypto","ranges":[{"startOffset":3130,"endOffset":3204,"count":3},{"startOffset":3176,"endOffset":3202,"count":0}],"isBlockCoverage":true},{"functionName":"normalizeEncoding","ranges":[{"startOffset":3383,"endOffset":3514,"count":92},{"startOffset":3453,"endOffset":3471,"count":7},{"startOffset":3473,"endOffset":3487,"count":85},{"startOffset":3487,"endOffset":3513,"count":7}],"isBlockCoverage":true},{"functionName":"slowCases","ranges":[{"startOffset":3516,"endOffset":5096,"count":7},{"startOffset":3570,"endOffset":3814,"count":0},{"startOffset":3819,"endOffset":3939,"count":0},{"startOffset":3944,"endOffset":4348,"count":0},{"startOffset":4389,"endOffset":4405,"count":0},{"startOffset":4454,"endOffset":4470,"count":0},{"startOffset":4499,"endOffset":4515,"count":0},{"startOffset":4564,"endOffset":4580,"count":0},{"startOffset":4645,"endOffset":4661,"count":0},{"startOffset":4710,"endOffset":4726,"count":0},{"startOffset":4744,"endOffset":4888,"count":0},{"startOffset":4893,"endOffset":5040,"count":0},{"startOffset":5045,"endOffset":5090,"count":0}],"isBlockCoverage":true},{"functionName":"emitExperimentalWarning","ranges":[{"startOffset":5098,"endOffset":5386,"count":0}],"isBlockCoverage":false},{"functionName":"filterDuplicateStrings","ranges":[{"startOffset":5388,"endOffset":5696,"count":0}],"isBlockCoverage":false},{"functionName":"cachedResult","ranges":[{"startOffset":5698,"endOffset":5841,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5749,"endOffset":5838,"count":0}],"isBlockCoverage":false},{"functionName":"createClassWrapper","ranges":[{"startOffset":6106,"endOffset":6471,"count":0}],"isBlockCoverage":false},{"functionName":"getSignalsToNamesMapping","ranges":[{"startOffset":6500,"endOffset":6778,"count":0}],"isBlockCoverage":false},{"functionName":"convertToValidSignal","ranges":[{"startOffset":6780,"endOffset":7087,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorOf","ranges":[{"startOffset":7089,"endOffset":7435,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7437,"endOffset":7566,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorMap","ranges":[{"startOffset":7568,"endOffset":7633,"count":0}],"isBlockCoverage":false},{"functionName":"promisify","ranges":[{"startOffset":7778,"endOffset":9249,"count":5},{"startOffset":7851,"endOffset":7916,"count":0},{"startOffset":7960,"endOffset":8281,"count":0}],"isBlockCoverage":true},{"functionName":"fn","ranges":[{"startOffset":8481,"endOffset":8962,"count":916}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8527,"endOffset":8956,"count":916}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8585,"endOffset":8948,"count":37},{"startOffset":8624,"endOffset":8665,"count":0},{"startOffset":8706,"endOffset":8726,"count":0},{"startOffset":8728,"endOffset":8893,"count":0}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":9344,"endOffset":9666,"count":0}],"isBlockCoverage":false},{"functionName":"spliceOne","ranges":[{"startOffset":9807,"endOffset":9934,"count":90},{"startOffset":9888,"endOffset":9918,"count":0}],"isBlockCoverage":true},{"functionName":"isInsideNodeModules","ranges":[{"startOffset":10016,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":11190,"endOffset":11348,"count":0}],"isBlockCoverage":false},{"functionName":"sleep","ranges":[{"startOffset":11371,"endOffset":11586,"count":0}],"isBlockCoverage":false}]},{"scriptId":"13","url":"events.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":26873,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2207,"endOffset":2367,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter","ranges":[{"startOffset":2372,"endOffset":2441,"count":319}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2805,"endOffset":2861,"count":3}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":2865,"endOffset":3099,"count":0}],"isBlockCoverage":false},{"functionName":"checkListener","ranges":[{"startOffset":3671,"endOffset":3821,"count":2353},{"startOffset":3744,"endOffset":3819,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3910,"endOffset":3958,"count":214}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3967,"endOffset":4242,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.setMaxListeners","ranges":[{"startOffset":4618,"endOffset":5532,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.init","ranges":[{"startOffset":5555,"endOffset":6285,"count":319},{"startOffset":5606,"endOffset":5666,"count":152},{"startOffset":5668,"endOffset":5739,"count":167},{"startOffset":5810,"endOffset":5835,"count":219},{"startOffset":5837,"endOffset":6096,"count":0}],"isBlockCoverage":true},{"functionName":"addCatch","ranges":[{"startOffset":6288,"endOffset":6847,"count":33},{"startOffset":6375,"endOffset":6794,"count":0},{"startOffset":6799,"endOffset":6845,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6576,"endOffset":6786,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionOrErr","ranges":[{"startOffset":6849,"endOffset":7507,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxListeners","ranges":[{"startOffset":7678,"endOffset":7877,"count":30},{"startOffset":7764,"endOffset":7834,"count":0}],"isBlockCoverage":true},{"functionName":"_getMaxListeners","ranges":[{"startOffset":7880,"endOffset":8029,"count":331},{"startOffset":7958,"endOffset":7998,"count":211},{"startOffset":7998,"endOffset":8028,"count":120}],"isBlockCoverage":true},{"functionName":"getMaxListeners","ranges":[{"startOffset":8072,"endOffset":8135,"count":0}],"isBlockCoverage":false},{"functionName":"identicalSequenceRange","ranges":[{"startOffset":8263,"endOffset":8839,"count":0}],"isBlockCoverage":false},{"functionName":"enhanceStackTrace","ranges":[{"startOffset":8841,"endOffset":9447,"count":0}],"isBlockCoverage":false},{"functionName":"emit","ranges":[{"startOffset":9479,"endOffset":11762,"count":1970},{"startOffset":9624,"endOffset":9662,"count":0},{"startOffset":9670,"endOffset":9704,"count":0},{"startOffset":9728,"endOffset":9757,"count":0},{"startOffset":9763,"endOffset":9800,"count":0},{"startOffset":9872,"endOffset":10804,"count":0},{"startOffset":10872,"endOffset":10885,"count":784},{"startOffset":10885,"endOffset":10924,"count":1186},{"startOffset":10924,"endOffset":11213,"count":706},{"startOffset":11140,"endOffset":11158,"count":3},{"startOffset":11160,"endOffset":11209,"count":3},{"startOffset":11213,"endOffset":11744,"count":480},{"startOffset":11330,"endOffset":11740,"count":1020},{"startOffset":11661,"endOffset":11679,"count":30},{"startOffset":11681,"endOffset":11734,"count":30},{"startOffset":11744,"endOffset":11761,"count":1186}],"isBlockCoverage":true},{"functionName":"_addListener","ranges":[{"startOffset":11765,"endOffset":13820,"count":1563},{"startOffset":11945,"endOffset":12029,"count":60},{"startOffset":12029,"endOffset":12527,"count":1503},{"startOffset":12214,"endOffset":12494,"count":575},{"startOffset":12291,"endOffset":12310,"count":240},{"startOffset":12311,"endOffset":12321,"count":335},{"startOffset":12559,"endOffset":12697,"count":1232},{"startOffset":12697,"endOffset":13800,"count":331},{"startOffset":12745,"endOffset":12961,"count":241},{"startOffset":12856,"endOffset":12878,"count":60},{"startOffset":12879,"endOffset":12901,"count":181},{"startOffset":12961,"endOffset":13065,"count":90},{"startOffset":12980,"endOffset":13021,"count":0},{"startOffset":13169,"endOffset":13188,"count":0},{"startOffset":13190,"endOffset":13796,"count":0}],"isBlockCoverage":true},{"functionName":"addListener","ranges":[{"startOffset":13859,"endOffset":13951,"count":1473}],"isBlockCoverage":true},{"functionName":"prependListener","ranges":[{"startOffset":14064,"endOffset":14167,"count":90}],"isBlockCoverage":true},{"functionName":"onceWrapper","ranges":[{"startOffset":14170,"endOffset":14434,"count":180},{"startOffset":14333,"endOffset":14372,"count":120},{"startOffset":14372,"endOffset":14432,"count":60}],"isBlockCoverage":true},{"functionName":"_onceWrap","ranges":[{"startOffset":14436,"endOffset":14677,"count":455}],"isBlockCoverage":true},{"functionName":"once","ranges":[{"startOffset":14709,"endOffset":14835,"count":455}],"isBlockCoverage":true},{"functionName":"prependOnceListener","ranges":[{"startOffset":14887,"endOffset":15057,"count":0}],"isBlockCoverage":false},{"functionName":"removeListener","ranges":[{"startOffset":15179,"endOffset":16473,"count":335},{"startOffset":15328,"endOffset":15340,"count":0},{"startOffset":15413,"endOffset":15425,"count":0},{"startOffset":15455,"endOffset":15484,"count":214},{"startOffset":15486,"endOffset":15746,"count":185},{"startOffset":15537,"endOffset":15571,"count":0},{"startOffset":15667,"endOffset":15728,"count":1},{"startOffset":15746,"endOffset":16447,"count":150},{"startOffset":15865,"endOffset":16004,"count":270},{"startOffset":15902,"endOffset":15934,"count":120},{"startOffset":15936,"endOffset":15994,"count":150},{"startOffset":16042,"endOffset":16054,"count":0},{"startOffset":16094,"endOffset":16107,"count":60},{"startOffset":16107,"endOffset":16268,"count":90},{"startOffset":16174,"endOffset":16221,"count":1},{"startOffset":16311,"endOffset":16334,"count":60},{"startOffset":16395,"endOffset":16439,"count":0}],"isBlockCoverage":true},{"functionName":"removeAllListeners","ranges":[{"startOffset":16593,"endOffset":17919,"count":0}],"isBlockCoverage":false},{"functionName":"_listeners","ranges":[{"startOffset":17922,"endOffset":18317,"count":0}],"isBlockCoverage":false},{"functionName":"listeners","ranges":[{"startOffset":18354,"endOffset":18421,"count":0}],"isBlockCoverage":false},{"functionName":"rawListeners","ranges":[{"startOffset":18462,"endOffset":18533,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.listenerCount","ranges":[{"startOffset":18565,"endOffset":18733,"count":0}],"isBlockCoverage":false},{"functionName":"listenerCount","ranges":[{"startOffset":18790,"endOffset":19080,"count":358},{"startOffset":18963,"endOffset":18986,"count":108},{"startOffset":18986,"endOffset":19061,"count":250},{"startOffset":19022,"endOffset":19061,"count":0},{"startOffset":19065,"endOffset":19079,"count":250}],"isBlockCoverage":true},{"functionName":"eventNames","ranges":[{"startOffset":19118,"endOffset":19211,"count":0}],"isBlockCoverage":false},{"functionName":"arrayClone","ranges":[{"startOffset":19214,"endOffset":19674,"count":480},{"startOffset":19386,"endOffset":19418,"count":420},{"startOffset":19423,"endOffset":19463,"count":60},{"startOffset":19468,"endOffset":19516,"count":0},{"startOffset":19521,"endOffset":19577,"count":0},{"startOffset":19582,"endOffset":19646,"count":0},{"startOffset":19650,"endOffset":19673,"count":0}],"isBlockCoverage":true},{"functionName":"unwrapListeners","ranges":[{"startOffset":19676,"endOffset":19890,"count":0}],"isBlockCoverage":false},{"functionName":"getEventListeners","ranges":[{"startOffset":19892,"endOffset":20687,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":20689,"endOffset":22475,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22553,"endOffset":22574,"count":0}],"isBlockCoverage":false},{"functionName":"createIterResult","ranges":[{"startOffset":22589,"endOffset":22657,"count":0}],"isBlockCoverage":false},{"functionName":"addErrorHandlerIfEventEmitter","ranges":[{"startOffset":22659,"endOffset":22842,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticRemoveListener","ranges":[{"startOffset":22844,"endOffset":23229,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticAddListener","ranges":[{"startOffset":23231,"endOffset":23820,"count":0}],"isBlockCoverage":false},{"functionName":"on","ranges":[{"startOffset":23822,"endOffset":26872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"14","url":"internal/util/inspect.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":71637,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2893,"endOffset":2929,"count":62}],"isBlockCoverage":true},{"functionName":"isUndetectableObject","ranges":[{"startOffset":3020,"endOffset":3070,"count":0}],"isBlockCoverage":false},{"functionName":"getUserOptions","ranges":[{"startOffset":6215,"endOffset":7666,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":7961,"endOffset":9878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9970,"endOffset":10015,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":10019,"endOffset":10227,"count":0}],"isBlockCoverage":false},{"functionName":"defineColorAlias","ranges":[{"startOffset":11964,"endOffset":12206,"count":12}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":12059,"endOffset":12099,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":12105,"endOffset":12151,"count":0}],"isBlockCoverage":false},{"functionName":"addQuotes","ranges":[{"startOffset":13216,"endOffset":13374,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":13393,"endOffset":13425,"count":0}],"isBlockCoverage":false},{"functionName":"strEscape","ranges":[{"startOffset":13538,"endOffset":15164,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeWithColor","ranges":[{"startOffset":15166,"endOffset":15432,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeNoColor","ranges":[{"startOffset":15434,"endOffset":15480,"count":0}],"isBlockCoverage":false},{"functionName":"getEmptyFormatArray","ranges":[{"startOffset":15559,"endOffset":15606,"count":0}],"isBlockCoverage":false},{"functionName":"isInstanceof","ranges":[{"startOffset":15608,"endOffset":15726,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorName","ranges":[{"startOffset":15728,"endOffset":16988,"count":0}],"isBlockCoverage":false},{"functionName":"addPrototypeProperties","ranges":[{"startOffset":17175,"endOffset":19018,"count":0}],"isBlockCoverage":false},{"functionName":"getPrefix","ranges":[{"startOffset":19020,"endOffset":19407,"count":0}],"isBlockCoverage":false},{"functionName":"getKeys","ranges":[{"startOffset":19444,"endOffset":20386,"count":0}],"isBlockCoverage":false},{"functionName":"getCtxStyle","ranges":[{"startOffset":20388,"endOffset":20651,"count":0}],"isBlockCoverage":false},{"functionName":"formatProxy","ranges":[{"startOffset":20653,"endOffset":21102,"count":0}],"isBlockCoverage":false},{"functionName":"findTypedConstructor","ranges":[{"startOffset":21104,"endOffset":21627,"count":0}],"isBlockCoverage":false},{"functionName":"formatValue","ranges":[{"startOffset":21809,"endOffset":24348,"count":0}],"isBlockCoverage":false},{"functionName":"formatRaw","ranges":[{"startOffset":24350,"endOffset":34825,"count":0}],"isBlockCoverage":false},{"functionName":"getIteratorBraces","ranges":[{"startOffset":34827,"endOffset":35009,"count":0}],"isBlockCoverage":false},{"functionName":"getBoxedBase","ranges":[{"startOffset":35011,"endOffset":36185,"count":0}],"isBlockCoverage":false},{"functionName":"getClassBase","ranges":[{"startOffset":36187,"endOffset":36787,"count":0}],"isBlockCoverage":false},{"functionName":"getFunctionBase","ranges":[{"startOffset":36789,"endOffset":37882,"count":0}],"isBlockCoverage":false},{"functionName":"formatError","ranges":[{"startOffset":37884,"endOffset":41005,"count":0}],"isBlockCoverage":false},{"functionName":"groupArrayElements","ranges":[{"startOffset":41007,"endOffset":45258,"count":0}],"isBlockCoverage":false},{"functionName":"handleMaxCallStackSize","ranges":[{"startOffset":45260,"endOffset":45648,"count":0}],"isBlockCoverage":false},{"functionName":"formatNumber","ranges":[{"startOffset":45650,"endOffset":45827,"count":0}],"isBlockCoverage":false},{"functionName":"formatBigInt","ranges":[{"startOffset":45829,"endOffset":45901,"count":0}],"isBlockCoverage":false},{"functionName":"formatPrimitive","ranges":[{"startOffset":45903,"endOffset":47086,"count":0}],"isBlockCoverage":false},{"functionName":"formatNamespaceObject","ranges":[{"startOffset":47088,"endOffset":48208,"count":0}],"isBlockCoverage":false},{"functionName":"formatSpecialArray","ranges":[{"startOffset":48255,"endOffset":49462,"count":0}],"isBlockCoverage":false},{"functionName":"formatArrayBuffer","ranges":[{"startOffset":49464,"endOffset":50064,"count":0}],"isBlockCoverage":false},{"functionName":"formatArray","ranges":[{"startOffset":50066,"endOffset":50660,"count":0}],"isBlockCoverage":false},{"functionName":"formatTypedArray","ranges":[{"startOffset":50662,"endOffset":51678,"count":0}],"isBlockCoverage":false},{"functionName":"formatSet","ranges":[{"startOffset":51680,"endOffset":51912,"count":0}],"isBlockCoverage":false},{"functionName":"formatMap","ranges":[{"startOffset":51914,"endOffset":52212,"count":0}],"isBlockCoverage":false},{"functionName":"formatSetIterInner","ranges":[{"startOffset":52214,"endOffset":53027,"count":0}],"isBlockCoverage":false},{"functionName":"formatMapIterInner","ranges":[{"startOffset":53029,"endOffset":54351,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakCollection","ranges":[{"startOffset":54353,"endOffset":54445,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakSet","ranges":[{"startOffset":54447,"endOffset":54604,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakMap","ranges":[{"startOffset":54606,"endOffset":54763,"count":0}],"isBlockCoverage":false},{"functionName":"formatIterator","ranges":[{"startOffset":54765,"endOffset":55156,"count":0}],"isBlockCoverage":false},{"functionName":"formatPromise","ranges":[{"startOffset":55158,"endOffset":55623,"count":0}],"isBlockCoverage":false},{"functionName":"formatProperty","ranges":[{"startOffset":55625,"endOffset":58023,"count":0}],"isBlockCoverage":false},{"functionName":"isBelowBreakLength","ranges":[{"startOffset":58025,"endOffset":58967,"count":0}],"isBlockCoverage":false},{"functionName":"reduceToSingleString","ranges":[{"startOffset":58969,"endOffset":61715,"count":0}],"isBlockCoverage":false},{"functionName":"hasBuiltInToString","ranges":[{"startOffset":61717,"endOffset":62736,"count":0}],"isBlockCoverage":false},{"functionName":"firstErrorLine","ranges":[{"startOffset":62761,"endOffset":62800,"count":0}],"isBlockCoverage":false},{"functionName":"tryStringify","ranges":[{"startOffset":62830,"endOffset":63299,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":63301,"endOffset":63385,"count":0}],"isBlockCoverage":false},{"functionName":"formatWithOptions","ranges":[{"startOffset":63387,"endOffset":63665,"count":34},{"startOffset":63510,"endOffset":63602,"count":0}],"isBlockCoverage":true},{"functionName":"formatWithOptionsInternal","ranges":[{"startOffset":63667,"endOffset":67451,"count":34},{"startOffset":63890,"endOffset":67250,"count":0},{"startOffset":67254,"endOffset":67450,"count":0}],"isBlockCoverage":true},{"functionName":"getStringWidth","ranges":[{"startOffset":67880,"endOffset":68431,"count":0}],"isBlockCoverage":false},{"functionName":"getStringWidth","ranges":[{"startOffset":68546,"endOffset":68958,"count":0}],"isBlockCoverage":false},{"functionName":"isFullWidthCodePoint","ranges":[{"startOffset":69126,"endOffset":70735,"count":0}],"isBlockCoverage":false},{"functionName":"isZeroWidthCodePoint","ranges":[{"startOffset":70769,"endOffset":71337,"count":0}],"isBlockCoverage":false},{"functionName":"stripVTControlCharacters","ranges":[{"startOffset":71427,"endOffset":71501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"15","url":"internal/util/types.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1915,"count":1}],"isBlockCoverage":false},{"functionName":"isTypedArray","ranges":[{"startOffset":425,"endOffset":516,"count":0}],"isBlockCoverage":false},{"functionName":"isUint8Array","ranges":[{"startOffset":518,"endOffset":612,"count":459}],"isBlockCoverage":true},{"functionName":"isUint8ClampedArray","ranges":[{"startOffset":614,"endOffset":722,"count":0}],"isBlockCoverage":false},{"functionName":"isUint16Array","ranges":[{"startOffset":724,"endOffset":820,"count":0}],"isBlockCoverage":false},{"functionName":"isUint32Array","ranges":[{"startOffset":822,"endOffset":918,"count":0}],"isBlockCoverage":false},{"functionName":"isInt8Array","ranges":[{"startOffset":920,"endOffset":1012,"count":0}],"isBlockCoverage":false},{"functionName":"isInt16Array","ranges":[{"startOffset":1014,"endOffset":1108,"count":0}],"isBlockCoverage":false},{"functionName":"isInt32Array","ranges":[{"startOffset":1110,"endOffset":1204,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat32Array","ranges":[{"startOffset":1206,"endOffset":1304,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat64Array","ranges":[{"startOffset":1306,"endOffset":1404,"count":0}],"isBlockCoverage":false},{"functionName":"isBigInt64Array","ranges":[{"startOffset":1406,"endOffset":1506,"count":0}],"isBlockCoverage":false},{"functionName":"isBigUint64Array","ranges":[{"startOffset":1508,"endOffset":1610,"count":96}],"isBlockCoverage":true}]},{"scriptId":"16","url":"internal/assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":false},{"functionName":"lazyError","ranges":[{"startOffset":26,"endOffset":155,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":157,"endOffset":307,"count":511},{"startOffset":205,"endOffset":305,"count":0}],"isBlockCoverage":true},{"functionName":"fail","ranges":[{"startOffset":309,"endOffset":426,"count":0}],"isBlockCoverage":false}]},{"scriptId":"17","url":"internal/validators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7218,"count":1}],"isBlockCoverage":false},{"functionName":"isInt32","ranges":[{"startOffset":581,"endOffset":640,"count":177}],"isBlockCoverage":true},{"functionName":"isUint32","ranges":[{"startOffset":642,"endOffset":704,"count":202}],"isBlockCoverage":true},{"functionName":"parseFileMode","ranges":[{"startOffset":1326,"endOffset":1807,"count":114},{"startOffset":1389,"endOffset":1409,"count":0},{"startOffset":1411,"endOffset":1432,"count":0},{"startOffset":1480,"endOffset":1806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1852,"endOffset":2233,"count":126},{"startOffset":1972,"endOffset":2026,"count":0},{"startOffset":2066,"endOffset":2120,"count":0},{"startOffset":2163,"endOffset":2229,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2279,"endOffset":2860,"count":177},{"startOffset":2441,"endOffset":2739,"count":0},{"startOffset":2776,"endOffset":2856,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2904,"endOffset":3414,"count":0}],"isBlockCoverage":false},{"functionName":"validateString","ranges":[{"startOffset":3418,"endOffset":3550,"count":2877},{"startOffset":3494,"endOffset":3548,"count":0}],"isBlockCoverage":true},{"functionName":"validateNumber","ranges":[{"startOffset":3552,"endOffset":3684,"count":61},{"startOffset":3628,"endOffset":3682,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3724,"endOffset":4174,"count":30},{"startOffset":3796,"endOffset":4172,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3835,"endOffset":3888,"count":0}],"isBlockCoverage":false},{"functionName":"validateBoolean","ranges":[{"startOffset":4178,"endOffset":4313,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4357,"endOffset":4582,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4624,"endOffset":4911,"count":0}],"isBlockCoverage":false},{"functionName":"validateSignalName","ranges":[{"startOffset":4915,"endOffset":5336,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5377,"endOffset":5607,"count":88},{"startOffset":5442,"endOffset":5605,"count":0}],"isBlockCoverage":true},{"functionName":"validateEncoding","ranges":[{"startOffset":5611,"endOffset":5945,"count":7},{"startOffset":5779,"endOffset":5798,"count":0},{"startOffset":5800,"endOffset":5943,"count":0}],"isBlockCoverage":true},{"functionName":"validatePort","ranges":[{"startOffset":6089,"endOffset":6463,"count":37},{"startOffset":6193,"endOffset":6220,"count":0},{"startOffset":6257,"endOffset":6284,"count":0},{"startOffset":6363,"endOffset":6376,"count":0},{"startOffset":6379,"endOffset":6442,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6506,"endOffset":6607,"count":982},{"startOffset":6564,"endOffset":6605,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6655,"endOffset":6872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"18","url":"buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":36751,"count":1}],"isBlockCoverage":false},{"functionName":"validateOffset","ranges":[{"startOffset":2784,"endOffset":2868,"count":0}],"isBlockCoverage":false},{"functionName":"createUnsafeBuffer","ranges":[{"startOffset":4082,"endOffset":4218,"count":22}],"isBlockCoverage":true},{"functionName":"createPool","ranges":[{"startOffset":4220,"endOffset":4379,"count":9}],"isBlockCoverage":true},{"functionName":"alignPool","ranges":[{"startOffset":4395,"endOffset":4517,"count":77},{"startOffset":4469,"endOffset":4515,"count":71}],"isBlockCoverage":true},{"functionName":"showFlaggedDeprecation","ranges":[{"startOffset":4821,"endOffset":5501,"count":0}],"isBlockCoverage":false},{"functionName":"toInteger","ranges":[{"startOffset":5503,"endOffset":5721,"count":0}],"isBlockCoverage":false},{"functionName":"_copy","ranges":[{"startOffset":5723,"endOffset":6988,"count":0}],"isBlockCoverage":false},{"functionName":"_copyActual","ranges":[{"startOffset":6990,"endOffset":7592,"count":0}],"isBlockCoverage":false},{"functionName":"Buffer","ranges":[{"startOffset":8168,"endOffset":8501,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":8594,"endOffset":8622,"count":0}],"isBlockCoverage":false},{"functionName":"from","ranges":[{"startOffset":8879,"endOffset":9843,"count":3},{"startOffset":9008,"endOffset":9059,"count":0},{"startOffset":9061,"endOffset":9842,"count":0}],"isBlockCoverage":true},{"functionName":"of","ranges":[{"startOffset":10214,"endOffset":10366,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10655,"endOffset":10876,"count":126},{"startOffset":10699,"endOffset":10764,"count":0},{"startOffset":10807,"endOffset":10874,"count":0}],"isBlockCoverage":true},{"functionName":"alloc","ranges":[{"startOffset":10979,"endOffset":11224,"count":38},{"startOffset":11063,"endOffset":11076,"count":0},{"startOffset":11077,"endOffset":11088,"count":0},{"startOffset":11090,"endOffset":11191,"count":0}],"isBlockCoverage":true},{"functionName":"allocUnsafe","ranges":[{"startOffset":11403,"endOffset":11478,"count":88}],"isBlockCoverage":true},{"functionName":"allocUnsafeSlow","ranges":[{"startOffset":11719,"endOffset":11808,"count":0}],"isBlockCoverage":false},{"functionName":"SlowBuffer","ranges":[{"startOffset":11904,"endOffset":11994,"count":0}],"isBlockCoverage":false},{"functionName":"allocate","ranges":[{"startOffset":12108,"endOffset":12440,"count":88},{"startOffset":12151,"endOffset":12185,"count":0},{"startOffset":12224,"endOffset":12403,"count":75},{"startOffset":12272,"endOffset":12285,"count":8},{"startOffset":12403,"endOffset":12439,"count":13}],"isBlockCoverage":true},{"functionName":"fromStringFast","ranges":[{"startOffset":12442,"endOffset":12988,"count":3},{"startOffset":12568,"endOffset":12617,"count":1},{"startOffset":12617,"endOffset":12663,"count":2},{"startOffset":12663,"endOffset":12676,"count":0},{"startOffset":12676,"endOffset":12809,"count":2},{"startOffset":12809,"endOffset":12935,"count":0},{"startOffset":12935,"endOffset":12987,"count":2}],"isBlockCoverage":true},{"functionName":"fromString","ranges":[{"startOffset":12990,"endOffset":13443,"count":3},{"startOffset":13076,"endOffset":13100,"count":1},{"startOffset":13102,"endOffset":13221,"count":2},{"startOffset":13139,"endOffset":13163,"count":0},{"startOffset":13221,"endOffset":13403,"count":1},{"startOffset":13298,"endOffset":13339,"count":0},{"startOffset":13375,"endOffset":13399,"count":0}],"isBlockCoverage":true},{"functionName":"fromArrayBuffer","ranges":[{"startOffset":13445,"endOffset":14142,"count":0}],"isBlockCoverage":false},{"functionName":"fromArrayLike","ranges":[{"startOffset":14144,"endOffset":14518,"count":0}],"isBlockCoverage":false},{"functionName":"fromObject","ranges":[{"startOffset":14520,"endOffset":14826,"count":0}],"isBlockCoverage":false},{"functionName":"isBuffer","ranges":[{"startOffset":14865,"endOffset":14919,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":14939,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"isEncoding","ranges":[{"startOffset":15287,"endOffset":15438,"count":85}],"isBlockCoverage":true},{"functionName":"concat","ranges":[{"startOffset":15504,"endOffset":16708,"count":0}],"isBlockCoverage":false},{"functionName":"base64ByteLength","ranges":[{"startOffset":16711,"endOffset":16947,"count":1},{"startOffset":16885,"endOffset":16893,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":17082,"endOffset":17146,"count":2}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":17159,"endOffset":17205,"count":85}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17220,"endOffset":17316,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17409,"endOffset":17438,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17451,"endOffset":17515,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17528,"endOffset":17574,"count":19}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17589,"endOffset":17688,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17787,"endOffset":17816,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17829,"endOffset":17893,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17906,"endOffset":17952,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":17967,"endOffset":18066,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18162,"endOffset":18187,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18200,"endOffset":18266,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18279,"endOffset":18327,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18342,"endOffset":18440,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18533,"endOffset":18558,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18571,"endOffset":18636,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18649,"endOffset":18696,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18711,"endOffset":18923,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19019,"endOffset":19070,"count":1}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":19083,"endOffset":19149,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19162,"endOffset":19210,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19225,"endOffset":19439,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19526,"endOffset":19557,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":19570,"endOffset":19633,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19646,"endOffset":19691,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19706,"endOffset":19914,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingOps","ranges":[{"startOffset":19922,"endOffset":21477,"count":105},{"startOffset":20009,"endOffset":20294,"count":104},{"startOffset":20048,"endOffset":20072,"count":85},{"startOffset":20072,"endOffset":20128,"count":19},{"startOffset":20128,"endOffset":20294,"count":0},{"startOffset":20299,"endOffset":20704,"count":0},{"startOffset":20709,"endOffset":20839,"count":0},{"startOffset":20844,"endOffset":20976,"count":0},{"startOffset":20981,"endOffset":21348,"count":1},{"startOffset":21055,"endOffset":21081,"count":0},{"startOffset":21141,"endOffset":21239,"count":0},{"startOffset":21249,"endOffset":21348,"count":0},{"startOffset":21353,"endOffset":21471,"count":0}],"isBlockCoverage":true},{"functionName":"byteLength","ranges":[{"startOffset":21479,"endOffset":22136,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22276,"endOffset":22370,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22448,"endOffset":22546,"count":0}],"isBlockCoverage":false},{"functionName":"copy","ranges":[{"startOffset":22578,"endOffset":22711,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":22992,"endOffset":23571,"count":176},{"startOffset":23064,"endOffset":23112,"count":72},{"startOffset":23112,"endOffset":23164,"count":104},{"startOffset":23164,"endOffset":23174,"count":0},{"startOffset":23174,"endOffset":23237,"count":104},{"startOffset":23204,"endOffset":23214,"count":0},{"startOffset":23237,"endOffset":23263,"count":104},{"startOffset":23263,"endOffset":23275,"count":0},{"startOffset":23281,"endOffset":23291,"count":104},{"startOffset":23291,"endOffset":23312,"count":0},{"startOffset":23312,"endOffset":23338,"count":104},{"startOffset":23338,"endOffset":23348,"count":0},{"startOffset":23348,"endOffset":23384,"count":104},{"startOffset":23384,"endOffset":23418,"count":0},{"startOffset":23418,"endOffset":23489,"count":104},{"startOffset":23489,"endOffset":23530,"count":0},{"startOffset":23530,"endOffset":23570,"count":104}],"isBlockCoverage":true},{"functionName":"equals","ranges":[{"startOffset":23600,"endOffset":23954,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":24082,"endOffset":25077,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":25173,"endOffset":26322,"count":0}],"isBlockCoverage":false},{"functionName":"bidirectionalIndexOf","ranges":[{"startOffset":26750,"endOffset":28057,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":28086,"endOffset":28203,"count":0}],"isBlockCoverage":false},{"functionName":"lastIndexOf","ranges":[{"startOffset":28237,"endOffset":28359,"count":0}],"isBlockCoverage":false},{"functionName":"includes","ranges":[{"startOffset":28390,"endOffset":28495,"count":0}],"isBlockCoverage":false},{"functionName":"fill","ranges":[{"startOffset":28673,"endOffset":28772,"count":0}],"isBlockCoverage":false},{"functionName":"_fill","ranges":[{"startOffset":28775,"endOffset":30684,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":30711,"endOffset":31726,"count":0}],"isBlockCoverage":false},{"functionName":"toJSON","ranges":[{"startOffset":31755,"endOffset":31989,"count":0}],"isBlockCoverage":false},{"functionName":"adjustOffset","ranges":[{"startOffset":31992,"endOffset":32426,"count":38},{"startOffset":32232,"endOffset":32270,"count":19},{"startOffset":32270,"endOffset":32333,"count":0},{"startOffset":32333,"endOffset":32357,"count":19},{"startOffset":32357,"endOffset":32381,"count":0},{"startOffset":32381,"endOffset":32411,"count":19},{"startOffset":32411,"endOffset":32414,"count":0},{"startOffset":32415,"endOffset":32423,"count":19}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":32453,"endOffset":32753,"count":19},{"startOffset":32614,"endOffset":32625,"count":0},{"startOffset":32673,"endOffset":32676,"count":0}],"isBlockCoverage":true},{"functionName":"swap","ranges":[{"startOffset":32756,"endOffset":32827,"count":0}],"isBlockCoverage":false},{"functionName":"swap16","ranges":[{"startOffset":32855,"endOffset":33259,"count":0}],"isBlockCoverage":false},{"functionName":"swap32","ranges":[{"startOffset":33288,"endOffset":33732,"count":0}],"isBlockCoverage":false},{"functionName":"swap64","ranges":[{"startOffset":33761,"endOffset":34269,"count":0}],"isBlockCoverage":false},{"functionName":"transcode","ranges":[{"startOffset":34582,"endOffset":35322,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35391,"endOffset":35581,"count":0}],"isBlockCoverage":false},{"functionName":"btoa","ranges":[{"startOffset":35585,"endOffset":35921,"count":0}],"isBlockCoverage":false},{"functionName":"atob","ranges":[{"startOffset":36017,"endOffset":36338,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36664,"endOffset":36699,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36705,"endOffset":36742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"19","url":"internal/buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":29666,"count":1}],"isBlockCoverage":false},{"functionName":"checkBounds","ranges":[{"startOffset":1107,"endOffset":1323,"count":0}],"isBlockCoverage":false},{"functionName":"checkInt","ranges":[{"startOffset":1325,"endOffset":1947,"count":0}],"isBlockCoverage":false},{"functionName":"boundsError","ranges":[{"startOffset":1949,"endOffset":2352,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64LE","ranges":[{"startOffset":2372,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64BE","ranges":[{"startOffset":2873,"endOffset":3372,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64LE","ranges":[{"startOffset":3374,"endOffset":3875,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64BE","ranges":[{"startOffset":3877,"endOffset":4372,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntLE","ranges":[{"startOffset":4374,"endOffset":4926,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48LE","ranges":[{"startOffset":4928,"endOffset":5311,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40LE","ranges":[{"startOffset":5313,"endOffset":5669,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32LE","ranges":[{"startOffset":5671,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24LE","ranges":[{"startOffset":5999,"endOffset":6287,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16LE","ranges":[{"startOffset":6289,"endOffset":6549,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt8","ranges":[{"startOffset":6551,"endOffset":6731,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntBE","ranges":[{"startOffset":6733,"endOffset":7285,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48BE","ranges":[{"startOffset":7287,"endOffset":7670,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40BE","ranges":[{"startOffset":7672,"endOffset":8028,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32BE","ranges":[{"startOffset":8030,"endOffset":8356,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24BE","ranges":[{"startOffset":8358,"endOffset":8646,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16BE","ranges":[{"startOffset":8648,"endOffset":8908,"count":0}],"isBlockCoverage":false},{"functionName":"readIntLE","ranges":[{"startOffset":8910,"endOffset":9455,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48LE","ranges":[{"startOffset":9457,"endOffset":9888,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40LE","ranges":[{"startOffset":9890,"endOffset":10277,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32LE","ranges":[{"startOffset":10279,"endOffset":10614,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24LE","ranges":[{"startOffset":10616,"endOffset":10948,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16LE","ranges":[{"startOffset":10950,"endOffset":11256,"count":0}],"isBlockCoverage":false},{"functionName":"readInt8","ranges":[{"startOffset":11258,"endOffset":11466,"count":0}],"isBlockCoverage":false},{"functionName":"readIntBE","ranges":[{"startOffset":11468,"endOffset":12013,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48BE","ranges":[{"startOffset":12015,"endOffset":12444,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40BE","ranges":[{"startOffset":12446,"endOffset":12834,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32BE","ranges":[{"startOffset":12836,"endOffset":13171,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24BE","ranges":[{"startOffset":13173,"endOffset":13505,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16BE","ranges":[{"startOffset":13507,"endOffset":13813,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatBackwards","ranges":[{"startOffset":13830,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatForwards","ranges":[{"startOffset":14237,"endOffset":14641,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleBackwards","ranges":[{"startOffset":14643,"endOffset":15213,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleForwards","ranges":[{"startOffset":15215,"endOffset":15784,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64LE","ranges":[{"startOffset":15805,"endOffset":16287,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64LE","ranges":[{"startOffset":16289,"endOffset":16411,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64BE","ranges":[{"startOffset":16413,"endOffset":16911,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64BE","ranges":[{"startOffset":16913,"endOffset":17035,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64LE","ranges":[{"startOffset":17037,"endOffset":17181,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64BE","ranges":[{"startOffset":17183,"endOffset":17327,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntLE","ranges":[{"startOffset":17329,"endOffset":17938,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48LE","ranges":[{"startOffset":17940,"endOffset":18353,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40LE","ranges":[{"startOffset":18355,"endOffset":18734,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32LE","ranges":[{"startOffset":18736,"endOffset":19043,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32LE","ranges":[{"startOffset":19045,"endOffset":19151,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24LE","ranges":[{"startOffset":19153,"endOffset":19412,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16LE","ranges":[{"startOffset":19414,"endOffset":19610,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16LE","ranges":[{"startOffset":19612,"endOffset":19714,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int8","ranges":[{"startOffset":19716,"endOffset":20128,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt8","ranges":[{"startOffset":20130,"endOffset":20224,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntBE","ranges":[{"startOffset":20226,"endOffset":20835,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48BE","ranges":[{"startOffset":20837,"endOffset":21258,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40BE","ranges":[{"startOffset":21260,"endOffset":21622,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32BE","ranges":[{"startOffset":21624,"endOffset":21939,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32BE","ranges":[{"startOffset":21941,"endOffset":22047,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24BE","ranges":[{"startOffset":22049,"endOffset":22314,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16BE","ranges":[{"startOffset":22316,"endOffset":22512,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16BE","ranges":[{"startOffset":22514,"endOffset":22616,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntLE","ranges":[{"startOffset":22618,"endOffset":23280,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32LE","ranges":[{"startOffset":23282,"endOffset":23397,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16LE","ranges":[{"startOffset":23399,"endOffset":23506,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt8","ranges":[{"startOffset":23508,"endOffset":23605,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntBE","ranges":[{"startOffset":23607,"endOffset":24269,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32BE","ranges":[{"startOffset":24271,"endOffset":24386,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16BE","ranges":[{"startOffset":24388,"endOffset":24495,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleForwards","ranges":[{"startOffset":24514,"endOffset":24980,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleBackwards","ranges":[{"startOffset":24982,"endOffset":25449,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatForwards","ranges":[{"startOffset":25451,"endOffset":25752,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatBackwards","ranges":[{"startOffset":25754,"endOffset":26056,"count":0}],"isBlockCoverage":false},{"functionName":"addBufferPrototypeMethods","ranges":[{"startOffset":26098,"endOffset":29155,"count":1},{"startOffset":28181,"endOffset":28201,"count":0},{"startOffset":28255,"endOffset":28274,"count":0},{"startOffset":28330,"endOffset":28351,"count":0},{"startOffset":28407,"endOffset":28427,"count":0},{"startOffset":28484,"endOffset":28505,"count":0},{"startOffset":28561,"endOffset":28581,"count":0},{"startOffset":28639,"endOffset":28661,"count":0},{"startOffset":28719,"endOffset":28740,"count":0}],"isBlockCoverage":true},{"functionName":"markAsUntransferable","ranges":[{"startOffset":29311,"endOffset":29575,"count":9},{"startOffset":29379,"endOffset":29407,"count":0},{"startOffset":29430,"endOffset":29437,"count":0}],"isBlockCoverage":true}]},{"scriptId":"20","url":"internal/worker/js_transferable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1310,"count":1}],"isBlockCoverage":false},{"functionName":"setup","ranges":[{"startOffset":304,"endOffset":1091,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":585,"endOffset":1087,"count":0}],"isBlockCoverage":false}]},{"scriptId":"21","url":"internal/process/per_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10598,"count":1}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":796,"endOffset":884,"count":0}],"isBlockCoverage":false},{"functionName":"wrapProcessMethods","ranges":[{"startOffset":962,"endOffset":6703,"count":1}],"isBlockCoverage":true},{"functionName":"_rawDebug","ranges":[{"startOffset":1173,"endOffset":1255,"count":0}],"isBlockCoverage":false},{"functionName":"cpuUsage","ranges":[{"startOffset":1466,"endOffset":3025,"count":0}],"isBlockCoverage":false},{"functionName":"previousValueIsValid","ranges":[{"startOffset":3178,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"hrtime","ranges":[{"startOffset":3539,"endOffset":4142,"count":0}],"isBlockCoverage":false},{"functionName":"hrtimeBigInt","ranges":[{"startOffset":4329,"endOffset":4423,"count":0}],"isBlockCoverage":false},{"functionName":"memoryUsage","ranges":[{"startOffset":4468,"endOffset":4694,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":4698,"endOffset":5136,"count":0}],"isBlockCoverage":false},{"functionName":"kill","ranges":[{"startOffset":5140,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"resourceUsage","ranges":[{"startOffset":5836,"endOffset":6569,"count":0}],"isBlockCoverage":false},{"functionName":"buildAllowedFlags","ranges":[{"startOffset":6914,"endOffset":9974,"count":0}],"isBlockCoverage":false},{"functionName":"toggleTraceCategoryState","ranges":[{"startOffset":10164,"endOffset":10494,"count":1},{"startOffset":10244,"endOffset":10419,"count":0},{"startOffset":10451,"endOffset":10492,"count":0}],"isBlockCoverage":true}]},{"scriptId":"22","url":"internal/async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19081,"count":1}],"isBlockCoverage":false},{"functionName":"useDomainTrampoline","ranges":[{"startOffset":5274,"endOffset":5328,"count":0}],"isBlockCoverage":false},{"functionName":"callbackTrampoline","ranges":[{"startOffset":5330,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"executionAsyncResource","ranges":[{"startOffset":5999,"endOffset":6497,"count":0}],"isBlockCoverage":false},{"functionName":"inspectExceptionValue","ranges":[{"startOffset":6499,"endOffset":6635,"count":0}],"isBlockCoverage":false},{"functionName":"fatalError","ranges":[{"startOffset":6696,"endOffset":7082,"count":0}],"isBlockCoverage":false},{"functionName":"lookupPublicResource","ranges":[{"startOffset":7084,"endOffset":7433,"count":0}],"isBlockCoverage":false},{"functionName":"emitInitNative","ranges":[{"startOffset":7624,"endOffset":8717,"count":0}],"isBlockCoverage":false},{"functionName":"emitHook","ranges":[{"startOffset":8818,"endOffset":9768,"count":0}],"isBlockCoverage":false},{"functionName":"emitHookFactory","ranges":[{"startOffset":9770,"endOffset":10030,"count":4}],"isBlockCoverage":true},{"functionName":"getHookArrays","ranges":[{"startOffset":10059,"endOffset":10549,"count":0}],"isBlockCoverage":false},{"functionName":"storeActiveHooks","ranges":[{"startOffset":10552,"endOffset":10852,"count":0}],"isBlockCoverage":false},{"functionName":"copyHooks","ranges":[{"startOffset":10854,"endOffset":11119,"count":0}],"isBlockCoverage":false},{"functionName":"restoreActiveHooks","ranges":[{"startOffset":11234,"endOffset":11439,"count":0}],"isBlockCoverage":false},{"functionName":"trackPromise","ranges":[{"startOffset":11441,"endOffset":11798,"count":0}],"isBlockCoverage":false},{"functionName":"fastPromiseHook","ranges":[{"startOffset":11800,"endOffset":12936,"count":0}],"isBlockCoverage":false},{"functionName":"enableHooks","ranges":[{"startOffset":12967,"endOffset":13027,"count":0}],"isBlockCoverage":false},{"functionName":"updatePromiseHookMode","ranges":[{"startOffset":13055,"endOffset":13346,"count":0}],"isBlockCoverage":false},{"functionName":"disableHooks","ranges":[{"startOffset":13348,"endOffset":13623,"count":0}],"isBlockCoverage":false},{"functionName":"disablePromiseHookIfNecessary","ranges":[{"startOffset":13625,"endOffset":13751,"count":0}],"isBlockCoverage":false},{"functionName":"newAsyncId","ranges":[{"startOffset":13952,"endOffset":14022,"count":1488}],"isBlockCoverage":true},{"functionName":"getOrSetAsyncId","ranges":[{"startOffset":14024,"endOffset":14214,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultTriggerAsyncId","ranges":[{"startOffset":14397,"endOffset":14687,"count":1488},{"startOffset":14611,"endOffset":14653,"count":1474},{"startOffset":14653,"endOffset":14686,"count":14}],"isBlockCoverage":true},{"functionName":"clearDefaultTriggerAsyncId","ranges":[{"startOffset":14690,"endOffset":14779,"count":0}],"isBlockCoverage":false},{"functionName":"defaultTriggerAsyncIdScope","ranges":[{"startOffset":14782,"endOffset":15257,"count":74},{"startOffset":14892,"endOffset":14914,"count":0}],"isBlockCoverage":true},{"functionName":"hasHooks","ranges":[{"startOffset":15259,"endOffset":15322,"count":7326}],"isBlockCoverage":true},{"functionName":"enabledHooksExist","ranges":[{"startOffset":15324,"endOffset":15383,"count":1450}],"isBlockCoverage":true},{"functionName":"initHooksExist","ranges":[{"startOffset":15385,"endOffset":15440,"count":1488}],"isBlockCoverage":true},{"functionName":"afterHooksExist","ranges":[{"startOffset":15442,"endOffset":15499,"count":0}],"isBlockCoverage":false},{"functionName":"destroyHooksExist","ranges":[{"startOffset":15501,"endOffset":15562,"count":1488}],"isBlockCoverage":true},{"functionName":"emitInitScript","ranges":[{"startOffset":15565,"endOffset":15973,"count":0}],"isBlockCoverage":false},{"functionName":"emitBeforeScript","ranges":[{"startOffset":15976,"endOffset":16152,"count":1450},{"startOffset":16124,"endOffset":16150,"count":0}],"isBlockCoverage":true},{"functionName":"emitAfterScript","ranges":[{"startOffset":16155,"endOffset":16275,"count":1450},{"startOffset":16219,"endOffset":16244,"count":0}],"isBlockCoverage":true},{"functionName":"emitDestroyScript","ranges":[{"startOffset":16278,"endOffset":16488,"count":0}],"isBlockCoverage":false},{"functionName":"hasAsyncIdStack","ranges":[{"startOffset":16491,"endOffset":16554,"count":0}],"isBlockCoverage":false},{"functionName":"pushAsyncContext","ranges":[{"startOffset":16620,"endOffset":17190,"count":1450},{"startOffset":16840,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"popAsyncContext","ranges":[{"startOffset":17255,"endOffset":17879,"count":1450},{"startOffset":17371,"endOffset":17384,"count":0},{"startOffset":17463,"endOffset":17569,"count":0}],"isBlockCoverage":true},{"functionName":"executionAsyncId","ranges":[{"startOffset":17882,"endOffset":17958,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":17960,"endOffset":18032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"23","url":"internal/process/task_queues.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4409,"count":1}],"isBlockCoverage":false},{"functionName":"hasTickScheduled","ranges":[{"startOffset":1007,"endOffset":1082,"count":1354}],"isBlockCoverage":true},{"functionName":"setHasTickScheduled","ranges":[{"startOffset":1084,"endOffset":1170,"count":595},{"startOffset":1160,"endOffset":1163,"count":314},{"startOffset":1164,"endOffset":1167,"count":281}],"isBlockCoverage":true},{"functionName":"runNextTicks","ranges":[{"startOffset":1272,"endOffset":1468,"count":677},{"startOffset":1434,"endOffset":1467,"count":0}],"isBlockCoverage":true},{"functionName":"processTicksAndRejections","ranges":[{"startOffset":1470,"endOffset":2438,"count":281},{"startOffset":1526,"endOffset":2318,"count":311},{"startOffset":1561,"endOffset":2293,"count":476},{"startOffset":1762,"endOffset":1795,"count":9},{"startOffset":1795,"endOffset":2169,"count":467},{"startOffset":1882,"endOffset":1915,"count":147},{"startOffset":1928,"endOffset":1970,"count":320},{"startOffset":1983,"endOffset":2034,"count":0},{"startOffset":2047,"endOffset":2107,"count":0},{"startOffset":2120,"endOffset":2147,"count":0},{"startOffset":2231,"endOffset":2252,"count":0}],"isBlockCoverage":true},{"functionName":"nextTick","ranges":[{"startOffset":2582,"endOffset":3497,"count":476},{"startOffset":2654,"endOffset":2695,"count":0},{"startOffset":2725,"endOffset":2732,"count":0},{"startOffset":2780,"endOffset":2794,"count":9},{"startOffset":2799,"endOffset":2836,"count":147},{"startOffset":2841,"endOffset":2892,"count":320},{"startOffset":2897,"endOffset":2962,"count":0},{"startOffset":2967,"endOffset":3110,"count":0},{"startOffset":3139,"endOffset":3165,"count":314},{"startOffset":3409,"endOffset":3469,"count":0}],"isBlockCoverage":true},{"functionName":"runMicrotask","ranges":[{"startOffset":3499,"endOffset":3675,"count":0}],"isBlockCoverage":false},{"functionName":"queueMicrotask","ranges":[{"startOffset":3747,"endOffset":4107,"count":0}],"isBlockCoverage":false},{"functionName":"setupTaskQueue","ranges":[{"startOffset":4130,"endOffset":4387,"count":1}],"isBlockCoverage":true}]},{"scriptId":"24","url":"internal/process/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9605,"count":1}],"isBlockCoverage":false},{"functionName":"setHasRejectionToWarn","ranges":[{"startOffset":1918,"endOffset":2008,"count":281},{"startOffset":1998,"endOffset":2001,"count":0}],"isBlockCoverage":true},{"functionName":"hasRejectionToWarn","ranges":[{"startOffset":2010,"endOffset":2089,"count":1354}],"isBlockCoverage":true},{"functionName":"getUnhandledRejectionsMode","ranges":[{"startOffset":2091,"endOffset":2626,"count":0}],"isBlockCoverage":false},{"functionName":"promiseRejectHandler","ranges":[{"startOffset":2628,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"resolveError","ranges":[{"startOffset":3199,"endOffset":3449,"count":0}],"isBlockCoverage":false},{"functionName":"unhandledRejection","ranges":[{"startOffset":3451,"endOffset":3745,"count":0}],"isBlockCoverage":false},{"functionName":"handledRejection","ranges":[{"startOffset":3747,"endOffset":4563,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionWarning","ranges":[{"startOffset":4635,"endOffset":5531,"count":0}],"isBlockCoverage":false},{"functionName":"emitDeprecationWarning","ranges":[{"startOffset":5564,"endOffset":5849,"count":0}],"isBlockCoverage":false},{"functionName":"processPromiseRejections","ranges":[{"startOffset":6022,"endOffset":8506,"count":281},{"startOffset":6180,"endOffset":6346,"count":0},{"startOffset":6411,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"getErrorWithoutStack","ranges":[{"startOffset":8508,"endOffset":8926,"count":0}],"isBlockCoverage":false},{"functionName":"generateUnhandledRejectionError","ranges":[{"startOffset":8928,"endOffset":9398,"count":0}],"isBlockCoverage":false},{"functionName":"listenForRejections","ranges":[{"startOffset":9400,"endOffset":9484,"count":1}],"isBlockCoverage":true}]},{"scriptId":"25","url":"internal/fixed_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4184,"count":1}],"isBlockCoverage":false},{"functionName":"FixedCircularBuffer","ranges":[{"startOffset":2959,"endOffset":3073,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3077,"endOffset":3129,"count":1574}],"isBlockCoverage":true},{"functionName":"isFull","ranges":[{"startOffset":3133,"endOffset":3200,"count":476}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3204,"endOffset":3291,"count":476}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3295,"endOffset":3510,"count":787},{"startOffset":3388,"endOffset":3400,"count":311},{"startOffset":3400,"endOffset":3509,"count":476}],"isBlockCoverage":true},{"functionName":"FixedQueue","ranges":[{"startOffset":3552,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3630,"endOffset":3677,"count":787}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3681,"endOffset":3945,"count":476},{"startOffset":3722,"endOffset":3915,"count":0}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3949,"endOffset":4180,"count":787},{"startOffset":4041,"endOffset":4062,"count":625},{"startOffset":4064,"endOffset":4159,"count":0}],"isBlockCoverage":true}]},{"scriptId":"26","url":"async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9502,"count":1}],"isBlockCoverage":false},{"functionName":"AsyncHook","ranges":[{"startOffset":1416,"endOffset":2250,"count":1},{"startOffset":1544,"endOffset":1586,"count":0},{"startOffset":1616,"endOffset":1647,"count":0},{"startOffset":1655,"endOffset":1699,"count":0},{"startOffset":1728,"endOffset":1758,"count":0},{"startOffset":1766,"endOffset":1809,"count":0},{"startOffset":1840,"endOffset":1872,"count":0},{"startOffset":1880,"endOffset":1925,"count":0},{"startOffset":1963,"endOffset":2002,"count":0},{"startOffset":2010,"endOffset":2062,"count":0}],"isBlockCoverage":true},{"functionName":"enable","ranges":[{"startOffset":2254,"endOffset":3491,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":3495,"endOffset":4271,"count":0}],"isBlockCoverage":false},{"functionName":"createHook","ranges":[{"startOffset":4276,"endOffset":4333,"count":1}],"isBlockCoverage":true},{"functionName":"AsyncResource","ranges":[{"startOffset":4426,"endOffset":5613,"count":0}],"isBlockCoverage":false},{"functionName":"runInAsyncScope","ranges":[{"startOffset":5617,"endOffset":5979,"count":0}],"isBlockCoverage":false},{"functionName":"emitDestroy","ranges":[{"startOffset":5983,"endOffset":6158,"count":0}],"isBlockCoverage":false},{"functionName":"asyncId","ranges":[{"startOffset":6162,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":6215,"endOffset":6279,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6283,"endOffset":6785,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6796,"endOffset":6915,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":6978,"endOffset":7260,"count":0}],"isBlockCoverage":false},{"functionName":"AsyncLocalStorage","ranges":[{"startOffset":7357,"endOffset":7454,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":7458,"endOffset":7783,"count":0}],"isBlockCoverage":false},{"functionName":"_enable","ranges":[{"startOffset":7787,"endOffset":7933,"count":0}],"isBlockCoverage":false},{"functionName":"_propagate","ranges":[{"startOffset":8002,"endOffset":8176,"count":0}],"isBlockCoverage":false},{"functionName":"enterWith","ranges":[{"startOffset":8180,"endOffset":8312,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":8316,"endOffset":8892,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":8896,"endOffset":9094,"count":0}],"isBlockCoverage":false},{"functionName":"getStore","ranges":[{"startOffset":9098,"endOffset":9237,"count":0}],"isBlockCoverage":false}]},{"scriptId":"27","url":"internal/console/global.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1939,"count":1}],"isBlockCoverage":false}]},{"scriptId":"28","url":"internal/console/constructor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19933,"count":1}],"isBlockCoverage":false},{"functionName":"Console","ranges":[{"startOffset":2592,"endOffset":4763,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":4972,"endOffset":5026,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5274,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5683,"endOffset":6271,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5865,"endOffset":5960,"count":102},{"startOffset":5898,"endOffset":5921,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":5972,"endOffset":6002,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6104,"endOffset":6203,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6215,"endOffset":6245,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6341,"endOffset":7523,"count":1}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":7593,"endOffset":9039,"count":34},{"startOffset":7819,"endOffset":7833,"count":0},{"startOffset":7907,"endOffset":7933,"count":0},{"startOffset":7972,"endOffset":8161,"count":0},{"startOffset":8219,"endOffset":8247,"count":0},{"startOffset":8604,"endOffset":8631,"count":30},{"startOffset":8685,"endOffset":8969,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9112,"endOffset":9602,"count":34},{"startOffset":9325,"endOffset":9331,"count":0},{"startOffset":9406,"endOffset":9527,"count":0},{"startOffset":9571,"endOffset":9595,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9673,"endOffset":9801,"count":34}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9872,"endOffset":10000,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteErrorHandler","ranges":[{"startOffset":10089,"endOffset":10978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10157,"endOffset":10975,"count":34},{"startOffset":10427,"endOffset":10445,"count":0},{"startOffset":10920,"endOffset":10965,"count":5}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":11007,"endOffset":11094,"count":34}],"isBlockCoverage":true},{"functionName":"warn","ranges":[{"startOffset":11100,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"dir","ranges":[{"startOffset":11194,"endOffset":11379,"count":0}],"isBlockCoverage":false},{"functionName":"time","ranges":[{"startOffset":11384,"endOffset":11742,"count":0}],"isBlockCoverage":false},{"functionName":"timeEnd","ranges":[{"startOffset":11747,"endOffset":12036,"count":0}],"isBlockCoverage":false},{"functionName":"timeLog","ranges":[{"startOffset":12041,"endOffset":12279,"count":0}],"isBlockCoverage":false},{"functionName":"trace","ranges":[{"startOffset":12291,"endOffset":12477,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":12482,"endOffset":12700,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":12761,"endOffset":13191,"count":0}],"isBlockCoverage":false},{"functionName":"count","ranges":[{"startOffset":13252,"endOffset":13708,"count":0}],"isBlockCoverage":false},{"functionName":"countReset","ranges":[{"startOffset":13774,"endOffset":14062,"count":0}],"isBlockCoverage":false},{"functionName":"group","ranges":[{"startOffset":14067,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"groupEnd","ranges":[{"startOffset":14240,"endOffset":14408,"count":0}],"isBlockCoverage":false},{"functionName":"table","ranges":[{"startOffset":14457,"endOffset":17867,"count":0}],"isBlockCoverage":false},{"functionName":"timeLogImpl","ranges":[{"startOffset":17908,"endOffset":18404,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":18406,"endOffset":18483,"count":0}],"isBlockCoverage":false},{"functionName":"formatTime","ranges":[{"startOffset":18485,"endOffset":19247,"count":0}],"isBlockCoverage":false},{"functionName":"isArray","ranges":[{"startOffset":19381,"endOffset":19437,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":19440,"endOffset":19458,"count":0}],"isBlockCoverage":false}]},{"scriptId":"29","url":"internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1582,"count":1}],"isBlockCoverage":false}]},{"scriptId":"30","url":"internal/util/inspector.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2215,"count":1}],"isBlockCoverage":false},{"functionName":"sendInspectorCommand","ranges":[{"startOffset":92,"endOffset":434,"count":0}],"isBlockCoverage":false},{"functionName":"installConsoleExtensions","ranges":[{"startOffset":508,"endOffset":1062,"count":0}],"isBlockCoverage":false},{"functionName":"wrapConsole","ranges":[{"startOffset":1141,"endOffset":1931,"count":1},{"startOffset":1299,"endOffset":1929,"count":23},{"startOffset":1514,"endOffset":1807,"count":19},{"startOffset":1807,"endOffset":1925,"count":4}],"isBlockCoverage":true},{"functionName":"get consoleFromVM","ranges":[{"startOffset":2103,"endOffset":2154,"count":0}],"isBlockCoverage":false},{"functionName":"set consoleFromVM","ranges":[{"startOffset":2158,"endOffset":2211,"count":1}],"isBlockCoverage":true}]},{"scriptId":"31","url":"internal/url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":41325,"count":1}],"isBlockCoverage":false},{"functionName":"toUSVString","ranges":[{"startOffset":2224,"endOffset":2520,"count":75},{"startOffset":2477,"endOffset":2519,"count":0}],"isBlockCoverage":true},{"functionName":"serializeTupleOrigin","ranges":[{"startOffset":2732,"endOffset":2850,"count":0}],"isBlockCoverage":false},{"functionName":"URLContext","ranges":[{"startOffset":3254,"endOffset":3477,"count":1107}],"isBlockCoverage":true},{"functionName":"URLSearchParams","ranges":[{"startOffset":3767,"endOffset":6130,"count":1014},{"startOffset":3882,"endOffset":6068,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6134,"endOffset":7204,"count":0}],"isBlockCoverage":false},{"functionName":"onParseComplete","ranges":[{"startOffset":7208,"endOffset":7901,"count":1014},{"startOffset":7463,"endOffset":7473,"count":0},{"startOffset":7536,"endOffset":7546,"count":0},{"startOffset":7627,"endOffset":7631,"count":0}],"isBlockCoverage":true},{"functionName":"onParseError","ranges":[{"startOffset":7903,"endOffset":7978,"count":93}],"isBlockCoverage":true},{"functionName":"onParseProtocolComplete","ranges":[{"startOffset":7980,"endOffset":8325,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostnameComplete","ranges":[{"startOffset":8327,"endOffset":8673,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePortComplete","ranges":[{"startOffset":8675,"endOffset":8837,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostComplete","ranges":[{"startOffset":8839,"endOffset":9145,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePathComplete","ranges":[{"startOffset":9147,"endOffset":9641,"count":173},{"startOffset":9413,"endOffset":9481,"count":0}],"isBlockCoverage":true},{"functionName":"onParseSearchComplete","ranges":[{"startOffset":9643,"endOffset":9811,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHashComplete","ranges":[{"startOffset":9813,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"URL","ranges":[{"startOffset":9999,"endOffset":10327,"count":1107},{"startOffset":10134,"endOffset":10186,"count":360}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10331,"endOffset":10412,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10416,"endOffset":10509,"count":3262}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10584,"endOffset":10784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10788,"endOffset":11721,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":11890,"endOffset":13071,"count":942},{"startOffset":11975,"endOffset":12036,"count":0},{"startOffset":12446,"endOffset":12607,"count":0},{"startOffset":12639,"endOffset":12676,"count":0},{"startOffset":12730,"endOffset":12752,"count":0},{"startOffset":12760,"endOffset":12824,"count":0},{"startOffset":12936,"endOffset":12959,"count":0},{"startOffset":13021,"endOffset":13047,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":13345,"endOffset":13404,"count":278}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":13470,"endOffset":13515,"count":664}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":13521,"endOffset":13701,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":13782,"endOffset":14410,"count":486},{"startOffset":13922,"endOffset":14166,"count":0},{"startOffset":14175,"endOffset":14187,"count":0},{"startOffset":14196,"endOffset":14211,"count":0},{"startOffset":14220,"endOffset":14233,"count":0},{"startOffset":14242,"endOffset":14256,"count":0},{"startOffset":14265,"endOffset":14276,"count":0},{"startOffset":14285,"endOffset":14368,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14480,"endOffset":14528,"count":639}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":14534,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14973,"endOffset":15023,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15029,"endOffset":15427,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15497,"endOffset":15547,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15553,"endOffset":15951,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16017,"endOffset":16173,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":16179,"endOffset":16470,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16540,"endOffset":16592,"count":467}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":16598,"endOffset":16897,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16963,"endOffset":17063,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17069,"endOffset":17386,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":17456,"endOffset":17651,"count":3089},{"startOffset":17535,"endOffset":17554,"count":0},{"startOffset":17596,"endOffset":17606,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":17657,"endOffset":17876,"count":173},{"startOffset":17767,"endOffset":17774,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17944,"endOffset":18083,"count":75},{"startOffset":18016,"endOffset":18031,"count":0},{"startOffset":18051,"endOffset":18082,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18089,"endOffset":18581,"count":75},{"startOffset":18275,"endOffset":18523,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":18668,"endOffset":18714,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":18780,"endOffset":18931,"count":75},{"startOffset":18858,"endOffset":18876,"count":0},{"startOffset":18896,"endOffset":18930,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18937,"endOffset":19355,"count":75},{"startOffset":19159,"endOffset":19354,"count":0}],"isBlockCoverage":true},{"functionName":"toJSON","ranges":[{"startOffset":19501,"endOffset":19558,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":19568,"endOffset":19873,"count":0}],"isBlockCoverage":false},{"functionName":"initSearchParams","ranges":[{"startOffset":19875,"endOffset":20015,"count":1089},{"startOffset":19972,"endOffset":20014,"count":0}],"isBlockCoverage":true},{"functionName":"parseParams","ranges":[{"startOffset":20124,"endOffset":22425,"count":0}],"isBlockCoverage":false},{"functionName":"serializeParams","ranges":[{"startOffset":23404,"endOffset":23964,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":24019,"endOffset":24707,"count":2},{"startOffset":24357,"endOffset":24503,"count":13},{"startOffset":24558,"endOffset":24705,"count":1}],"isBlockCoverage":true},{"functionName":"merge","ranges":[{"startOffset":24727,"endOffset":25357,"count":0}],"isBlockCoverage":false},{"functionName":"append","ranges":[{"startOffset":25424,"endOffset":25811,"count":0}],"isBlockCoverage":false},{"functionName":"delete","ranges":[{"startOffset":25816,"endOffset":26315,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":26320,"endOffset":26754,"count":0}],"isBlockCoverage":false},{"functionName":"getAll","ranges":[{"startOffset":26759,"endOffset":27227,"count":0}],"isBlockCoverage":false},{"functionName":"has","ranges":[{"startOffset":27232,"endOffset":27660,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27665,"endOffset":28691,"count":0}],"isBlockCoverage":false},{"functionName":"sort","ranges":[{"startOffset":28696,"endOffset":29873,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":30036,"endOffset":30245,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":30250,"endOffset":30822,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":30877,"endOffset":31077,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":31082,"endOffset":31286,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":31419,"endOffset":31619,"count":0}],"isBlockCoverage":false},{"functionName":"createSearchParamsIterator","ranges":[{"startOffset":31899,"endOffset":32102,"count":0}],"isBlockCoverage":false},{"functionName":"next","ranges":[{"startOffset":32326,"endOffset":33079,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":33083,"endOffset":34297,"count":0}],"isBlockCoverage":false},{"functionName":"domainToASCII","ranges":[{"startOffset":34303,"endOffset":34478,"count":0}],"isBlockCoverage":false},{"functionName":"domainToUnicode","ranges":[{"startOffset":34480,"endOffset":34659,"count":0}],"isBlockCoverage":false},{"functionName":"urlToOptions","ranges":[{"startOffset":34802,"endOffset":35345,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLWin32","ranges":[{"startOffset":35381,"endOffset":36774,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLPosix","ranges":[{"startOffset":36776,"endOffset":37280,"count":467},{"startOffset":36839,"endOffset":36895,"count":0},{"startOffset":36973,"endOffset":37239,"count":32483},{"startOffset":37004,"endOffset":37235,"count":0}],"isBlockCoverage":true},{"functionName":"fileURLToPath","ranges":[{"startOffset":37282,"endOffset":37629,"count":467},{"startOffset":37349,"endOffset":37370,"count":0},{"startOffset":37408,"endOffset":37472,"count":0},{"startOffset":37510,"endOffset":37551,"count":0},{"startOffset":37571,"endOffset":37598,"count":0}],"isBlockCoverage":true},{"functionName":"encodePathChars","ranges":[{"startOffset":38389,"endOffset":38945,"count":173},{"startOffset":38460,"endOffset":38509,"count":0},{"startOffset":38615,"endOffset":38666,"count":0},{"startOffset":38702,"endOffset":38751,"count":0},{"startOffset":38787,"endOffset":38843,"count":0},{"startOffset":38879,"endOffset":38924,"count":0}],"isBlockCoverage":true},{"functionName":"pathToFileURL","ranges":[{"startOffset":38947,"endOffset":40062,"count":173},{"startOffset":39035,"endOffset":39065,"count":0},{"startOffset":39067,"endOffset":39616,"count":0},{"startOffset":39848,"endOffset":39911,"count":172},{"startOffset":39871,"endOffset":39910,"count":0},{"startOffset":39913,"endOffset":39966,"count":1},{"startOffset":39974,"endOffset":39990,"count":1}],"isBlockCoverage":true},{"functionName":"isURLInstance","ranges":[{"startOffset":40064,"endOffset":40183,"count":896},{"startOffset":40157,"endOffset":40180,"count":486}],"isBlockCoverage":true},{"functionName":"toPathIfFileURL","ranges":[{"startOffset":40185,"endOffset":40330,"count":429},{"startOffset":40268,"endOffset":40289,"count":410},{"startOffset":40289,"endOffset":40329,"count":19}],"isBlockCoverage":true},{"functionName":"constructUrl","ranges":[{"startOffset":40332,"endOffset":41032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"32","url":"internal/querystring.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3021,"count":1}],"isBlockCoverage":false},{"functionName":"encodeStr","ranges":[{"startOffset":1336,"endOffset":2959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"33","url":"path.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":43399,"count":1}],"isBlockCoverage":false},{"functionName":"isPathSeparator","ranges":[{"startOffset":1492,"endOffset":1596,"count":0}],"isBlockCoverage":false},{"functionName":"isPosixPathSeparator","ranges":[{"startOffset":1598,"endOffset":1675,"count":84288}],"isBlockCoverage":true},{"functionName":"isWindowsDeviceRoot","ranges":[{"startOffset":1677,"endOffset":1847,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeString","ranges":[{"startOffset":1910,"endOffset":3714,"count":1054},{"startOffset":2127,"endOffset":3698,"count":84280},{"startOffset":2160,"endOffset":2186,"count":83226},{"startOffset":2186,"endOffset":2277,"count":1054},{"startOffset":2229,"endOffset":2235,"count":1046},{"startOffset":2235,"endOffset":2277,"count":8},{"startOffset":2277,"endOffset":2310,"count":83234},{"startOffset":2310,"endOffset":3599,"count":11507},{"startOffset":2342,"endOffset":2355,"count":10056},{"startOffset":2357,"endOffset":2382,"count":1546},{"startOffset":2382,"endOffset":3556,"count":9961},{"startOffset":2404,"endOffset":3343,"count":31},{"startOffset":2460,"endOffset":2518,"count":0},{"startOffset":2519,"endOffset":2577,"count":0},{"startOffset":2715,"endOffset":2791,"count":0},{"startOffset":3024,"endOffset":3193,"count":0},{"startOffset":3203,"endOffset":3335,"count":0},{"startOffset":3343,"endOffset":3556,"count":9930},{"startOffset":3389,"endOffset":3442,"count":8876},{"startOffset":3442,"endOffset":3501,"count":1054},{"startOffset":3556,"endOffset":3599,"count":11476},{"startOffset":3599,"endOffset":3694,"count":71727},{"startOffset":3627,"endOffset":3641,"count":1012},{"startOffset":3643,"endOffset":3664,"count":161},{"startOffset":3664,"endOffset":3694,"count":71566}],"isBlockCoverage":true},{"functionName":"_format","ranges":[{"startOffset":3892,"endOffset":4317,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":4435,"endOffset":8838,"count":0}],"isBlockCoverage":false},{"functionName":"normalize","ranges":[{"startOffset":8904,"endOffset":11655,"count":0}],"isBlockCoverage":false},{"functionName":"isAbsolute","ranges":[{"startOffset":11722,"endOffset":12090,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":12159,"endOffset":14215,"count":0}],"isBlockCoverage":false},{"functionName":"relative","ranges":[{"startOffset":14512,"endOffset":17986,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":17991,"endOffset":19019,"count":0}],"isBlockCoverage":false},{"functionName":"dirname","ranges":[{"startOffset":19085,"endOffset":21413,"count":0}],"isBlockCoverage":false},{"functionName":"basename","ranges":[{"startOffset":21506,"endOffset":24141,"count":0}],"isBlockCoverage":false},{"functionName":"extname","ranges":[{"startOffset":24207,"endOffset":26216,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":26420,"endOffset":30886,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":31069,"endOffset":31965,"count":1046},{"startOffset":31192,"endOffset":31212,"count":2667},{"startOffset":31219,"endOffset":31519,"count":1622},{"startOffset":31247,"endOffset":31256,"count":1621},{"startOffset":31257,"endOffset":31272,"count":1},{"startOffset":31369,"endOffset":31396,"count":0},{"startOffset":31904,"endOffset":31954,"count":0},{"startOffset":31955,"endOffset":31960,"count":0}],"isBlockCoverage":true},{"functionName":"normalize","ranges":[{"startOffset":32031,"endOffset":32606,"count":8},{"startOffset":32117,"endOffset":32128,"count":0},{"startOffset":32418,"endOffset":32512,"count":0},{"startOffset":32546,"endOffset":32558,"count":0},{"startOffset":32582,"endOffset":32594,"count":0}],"isBlockCoverage":true},{"functionName":"isAbsolute","ranges":[{"startOffset":32673,"endOffset":32802,"count":259}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":32871,"endOffset":33285,"count":8},{"startOffset":32920,"endOffset":32931,"count":0},{"startOffset":32990,"endOffset":33197,"count":16},{"startOffset":33126,"endOffset":33183,"count":8},{"startOffset":33234,"endOffset":33245,"count":0}],"isBlockCoverage":true},{"functionName":"relative","ranges":[{"startOffset":33375,"endOffset":35585,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":35590,"endOffset":35666,"count":840}],"isBlockCoverage":true},{"functionName":"dirname","ranges":[{"startOffset":35732,"endOffset":36360,"count":391},{"startOffset":35815,"endOffset":35826,"count":0},{"startOffset":35984,"endOffset":36221,"count":3937},{"startOffset":36039,"endOffset":36123,"count":391},{"startOffset":36123,"endOffset":36215,"count":3546},{"startOffset":36249,"endOffset":36276,"count":0},{"startOffset":36313,"endOffset":36325,"count":0}],"isBlockCoverage":true},{"functionName":"basename","ranges":[{"startOffset":36453,"endOffset":38773,"count":86},{"startOffset":36508,"endOffset":36535,"count":0},{"startOffset":36664,"endOffset":36681,"count":0},{"startOffset":36682,"endOffset":36710,"count":0},{"startOffset":36712,"endOffset":38179,"count":0},{"startOffset":38227,"endOffset":38696,"count":880},{"startOffset":38282,"endOffset":38506,"count":86},{"startOffset":38506,"endOffset":38690,"count":794},{"startOffset":38528,"endOffset":38690,"count":86},{"startOffset":38724,"endOffset":38734,"count":0}],"isBlockCoverage":true},{"functionName":"extname","ranges":[{"startOffset":38839,"endOffset":40497,"count":75},{"startOffset":39172,"endOffset":40118,"count":744},{"startOffset":39252,"endOffset":39498,"count":75},{"startOffset":39472,"endOffset":39498,"count":0},{"startOffset":39498,"endOffset":39521,"count":669},{"startOffset":39521,"endOffset":39678,"count":75},{"startOffset":39678,"endOffset":39708,"count":669},{"startOffset":39708,"endOffset":39908,"count":75},{"startOffset":39837,"endOffset":39900,"count":0},{"startOffset":39908,"endOffset":40112,"count":594},{"startOffset":39935,"endOffset":40112,"count":442},{"startOffset":40357,"endOffset":40389,"count":0},{"startOffset":40390,"endOffset":40428,"count":0},{"startOffset":40431,"endOffset":40455,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":40706,"endOffset":43060,"count":0}],"isBlockCoverage":false}]},{"scriptId":"34","url":"internal/encoding.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15916,"count":1}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":958,"endOffset":1067,"count":0}],"isBlockCoverage":false},{"functionName":"validateEncoder","ranges":[{"startOffset":1069,"endOffset":1194,"count":0}],"isBlockCoverage":false},{"functionName":"validateDecoder","ranges":[{"startOffset":1196,"endOffset":1321,"count":19},{"startOffset":1277,"endOffset":1319,"count":0}],"isBlockCoverage":true},{"functionName":"validateArgument","ranges":[{"startOffset":1323,"endOffset":1533,"count":20},{"startOffset":1470,"endOffset":1531,"count":0}],"isBlockCoverage":true},{"functionName":"trimAsciiWhitespace","ranges":[{"startOffset":8274,"endOffset":8756,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingFromLabel","ranges":[{"startOffset":8758,"endOffset":8937,"count":1},{"startOffset":8869,"endOffset":8936,"count":0}],"isBlockCoverage":true},{"functionName":"TextEncoder","ranges":[{"startOffset":9008,"endOffset":9054,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":9058,"endOffset":9125,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":9129,"endOffset":9221,"count":0}],"isBlockCoverage":false},{"functionName":"encodeInto","ranges":[{"startOffset":9225,"endOffset":9535,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9539,"endOffset":9934,"count":0}],"isBlockCoverage":false},{"functionName":"makeTextDecoderICU","ranges":[{"startOffset":10305,"endOffset":11966,"count":1}],"isBlockCoverage":true},{"functionName":"TextDecoder","ranges":[{"startOffset":10443,"endOffset":11170,"count":1},{"startOffset":10675,"endOffset":10722,"count":0},{"startOffset":10806,"endOffset":10829,"count":0},{"startOffset":10870,"endOffset":10898,"count":0},{"startOffset":11000,"endOffset":11047,"count":0}],"isBlockCoverage":true},{"functionName":"decode","ranges":[{"startOffset":11177,"endOffset":11937,"count":19},{"startOffset":11279,"endOffset":11330,"count":0},{"startOffset":11367,"endOffset":11546,"count":0},{"startOffset":11693,"endOffset":11696,"count":0},{"startOffset":11814,"endOffset":11896,"count":0}],"isBlockCoverage":true},{"functionName":"makeTextDecoderJS","ranges":[{"startOffset":11968,"endOffset":14509,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":14634,"endOffset":14715,"count":0}],"isBlockCoverage":false},{"functionName":"get fatal","ranges":[{"startOffset":14722,"endOffset":14849,"count":0}],"isBlockCoverage":false},{"functionName":"get ignoreBOM","ranges":[{"startOffset":14856,"endOffset":15011,"count":0}],"isBlockCoverage":false},{"functionName":"ObjectGetOwnPropertyDescriptors","ranges":[{"startOffset":15018,"endOffset":15632,"count":0}],"isBlockCoverage":false}]},{"scriptId":"35","url":"timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8324,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1797,"endOffset":1822,"count":1}],"isBlockCoverage":true},{"functionName":"unenroll","ranges":[{"startOffset":2319,"endOffset":3503,"count":38},{"startOffset":2372,"endOffset":2379,"count":0},{"startOffset":2439,"endOffset":2485,"count":0},{"startOffset":2576,"endOffset":2614,"count":0},{"startOffset":2620,"endOffset":2655,"count":0},{"startOffset":3049,"endOffset":3396,"count":8},{"startOffset":3230,"endOffset":3372,"count":4}],"isBlockCoverage":true},{"functionName":"enroll","ranges":[{"startOffset":3710,"endOffset":3963,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":3994,"endOffset":4639,"count":887},{"startOffset":4149,"endOffset":4156,"count":879},{"startOffset":4186,"endOffset":4227,"count":0},{"startOffset":4232,"endOffset":4279,"count":0},{"startOffset":4284,"endOffset":4505,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":4716,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"clearTimeout","ranges":[{"startOffset":4856,"endOffset":5222,"count":218},{"startOffset":4899,"endOffset":4918,"count":68},{"startOffset":4920,"endOffset":4987,"count":38},{"startOffset":4987,"endOffset":5048,"count":180},{"startOffset":5050,"endOffset":5220,"count":0}],"isBlockCoverage":true},{"functionName":"setInterval","ranges":[{"startOffset":5224,"endOffset":5871,"count":0}],"isBlockCoverage":false},{"functionName":"clearInterval","ranges":[{"startOffset":5873,"endOffset":6171,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.close","ranges":[{"startOffset":6199,"endOffset":6250,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.","ranges":[{"startOffset":6292,"endOffset":6453,"count":0}],"isBlockCoverage":false},{"functionName":"setImmediate","ranges":[{"startOffset":6456,"endOffset":6997,"count":95},{"startOffset":6606,"endOffset":6626,"count":35},{"startOffset":6631,"endOffset":6672,"count":60},{"startOffset":6677,"endOffset":6724,"count":0},{"startOffset":6729,"endOffset":6950,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":7076,"endOffset":7212,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":7219,"endOffset":7685,"count":0}],"isBlockCoverage":false}]},{"scriptId":"36","url":"internal/linkedlist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1112,"count":1}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":15,"endOffset":88,"count":0}],"isBlockCoverage":false},{"functionName":"peek","ranges":[{"startOffset":118,"endOffset":210,"count":1145},{"startOffset":171,"endOffset":183,"count":3},{"startOffset":183,"endOffset":209,"count":1142}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":245,"endOffset":472,"count":1834}],"isBlockCoverage":true},{"functionName":"append","ranges":[{"startOffset":528,"endOffset":980,"count":917},{"startOffset":579,"endOffset":596,"count":0}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":982,"endOffset":1042,"count":8}],"isBlockCoverage":true}]},{"scriptId":"37","url":"internal/timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18495,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4398,"endOffset":4423,"count":1}],"isBlockCoverage":true},{"functionName":"initAsyncResource","ranges":[{"startOffset":5366,"endOffset":5644,"count":1012},{"startOffset":5592,"endOffset":5642,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout","ranges":[{"startOffset":5729,"endOffset":6726,"count":917},{"startOffset":5852,"endOffset":5875,"count":38},{"startOffset":5878,"endOffset":6214,"count":879},{"startOffset":5909,"endOffset":6144,"count":0},{"startOffset":6551,"endOffset":6558,"count":0},{"startOffset":6614,"endOffset":6628,"count":887}],"isBlockCoverage":true},{"functionName":"Timeout.","ranges":[{"startOffset":6839,"endOffset":7010,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.refresh","ranges":[{"startOffset":7041,"endOffset":7139,"count":139},{"startOffset":7078,"endOffset":7091,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout.unref","ranges":[{"startOffset":7168,"endOffset":7296,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.ref","ranges":[{"startOffset":7323,"endOffset":7451,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.hasRef","ranges":[{"startOffset":7481,"endOffset":7518,"count":0}],"isBlockCoverage":false},{"functionName":"TimersList","ranges":[{"startOffset":7521,"endOffset":7821,"count":8}],"isBlockCoverage":true},{"functionName":"TimersList.","ranges":[{"startOffset":7937,"endOffset":8108,"count":0}],"isBlockCoverage":false},{"functionName":"ImmediateList","ranges":[{"startOffset":8166,"endOffset":8234,"count":2}],"isBlockCoverage":true},{"functionName":"ImmediateList.append","ranges":[{"startOffset":8413,"endOffset":8580,"count":95},{"startOffset":8456,"endOffset":8525,"count":64},{"startOffset":8525,"endOffset":8558,"count":31}],"isBlockCoverage":true},{"functionName":"ImmediateList.remove","ranges":[{"startOffset":8758,"endOffset":9095,"count":0}],"isBlockCoverage":false},{"functionName":"incRefCount","ranges":[{"startOffset":9098,"endOffset":9174,"count":887},{"startOffset":9151,"endOffset":9172,"count":1}],"isBlockCoverage":true},{"functionName":"decRefCount","ranges":[{"startOffset":9176,"endOffset":9253,"count":8},{"startOffset":9229,"endOffset":9251,"count":1}],"isBlockCoverage":true},{"functionName":"active","ranges":[{"startOffset":9336,"endOffset":9390,"count":0}],"isBlockCoverage":false},{"functionName":"unrefActive","ranges":[{"startOffset":9537,"endOffset":9597,"count":139}],"isBlockCoverage":true},{"functionName":"insertGuarded","ranges":[{"startOffset":9818,"endOffset":10334,"count":139},{"startOffset":9914,"endOffset":9936,"count":0},{"startOffset":9949,"endOffset":10064,"count":0},{"startOffset":10066,"endOffset":10333,"count":0}],"isBlockCoverage":true},{"functionName":"insert","ranges":[{"startOffset":10336,"endOffset":10987,"count":917},{"startOffset":10659,"endOffset":10960,"count":8},{"startOffset":10894,"endOffset":10956,"count":6}],"isBlockCoverage":true},{"functionName":"setUnrefTimeout","ranges":[{"startOffset":10989,"endOffset":11295,"count":30},{"startOffset":11116,"endOffset":11167,"count":0}],"isBlockCoverage":true},{"functionName":"getTimerDuration","ranges":[{"startOffset":11362,"endOffset":11884,"count":60},{"startOffset":11471,"endOffset":11553,"count":0},{"startOffset":11628,"endOffset":11865,"count":0}],"isBlockCoverage":true},{"functionName":"compareTimersLists","ranges":[{"startOffset":11886,"endOffset":12091,"count":545},{"startOffset":11988,"endOffset":12068,"count":0}],"isBlockCoverage":true},{"functionName":"setPosition","ranges":[{"startOffset":12093,"endOffset":12164,"count":291}],"isBlockCoverage":true},{"functionName":"getTimerCallbacks","ranges":[{"startOffset":12166,"endOffset":17263,"count":1}],"isBlockCoverage":true},{"functionName":"processImmediate","ranges":[{"startOffset":12478,"endOffset":14279,"count":31},{"startOffset":12557,"endOffset":12581,"count":0},{"startOffset":12974,"endOffset":14162,"count":95},{"startOffset":13018,"endOffset":13033,"count":64},{"startOffset":13033,"endOffset":13083,"count":31},{"startOffset":13350,"endOffset":13446,"count":0},{"startOffset":13851,"endOffset":13876,"count":35},{"startOffset":13876,"endOffset":13932,"count":60},{"startOffset":14034,"endOffset":14055,"count":0},{"startOffset":14206,"endOffset":14235,"count":0}],"isBlockCoverage":true},{"functionName":"processTimers","ranges":[{"startOffset":14284,"endOffset":14758,"count":266},{"startOffset":14474,"endOffset":14740,"count":532},{"startOffset":14505,"endOffset":14604,"count":266},{"startOffset":14582,"endOffset":14595,"count":0},{"startOffset":14604,"endOffset":14642,"count":266},{"startOffset":14642,"endOffset":14657,"count":0},{"startOffset":14657,"endOffset":14740,"count":266},{"startOffset":14740,"endOffset":14757,"count":0}],"isBlockCoverage":true},{"functionName":"listOnTimeout","ranges":[{"startOffset":14762,"endOffset":17204,"count":266},{"startOffset":14955,"endOffset":16659,"count":1142},{"startOffset":15176,"endOffset":15404,"count":263},{"startOffset":15404,"endOffset":15444,"count":879},{"startOffset":15444,"endOffset":15459,"count":613},{"startOffset":15459,"endOffset":15505,"count":266},{"startOffset":15505,"endOffset":15661,"count":879},{"startOffset":15661,"endOffset":15890,"count":0},{"startOffset":15890,"endOffset":16009,"count":879},{"startOffset":16009,"endOffset":16031,"count":0},{"startOffset":16031,"endOffset":16145,"count":879},{"startOffset":16145,"endOffset":16195,"count":0},{"startOffset":16204,"endOffset":16626,"count":879},{"startOffset":16240,"endOffset":16268,"count":0},{"startOffset":16270,"endOffset":16379,"count":0},{"startOffset":16587,"endOffset":16608,"count":0},{"startOffset":16626,"endOffset":16659,"count":879},{"startOffset":16659,"endOffset":17200,"count":3}],"isBlockCoverage":true},{"functionName":"Immediate","ranges":[{"startOffset":17285,"endOffset":17607,"count":95}],"isBlockCoverage":true},{"functionName":"ref","ranges":[{"startOffset":17611,"endOffset":17784,"count":95},{"startOffset":17732,"endOffset":17757,"count":31}],"isBlockCoverage":true},{"functionName":"unref","ranges":[{"startOffset":17788,"endOffset":17964,"count":0}],"isBlockCoverage":false},{"functionName":"hasRef","ranges":[{"startOffset":17968,"endOffset":18009,"count":0}],"isBlockCoverage":false}]},{"scriptId":"38","url":"internal/priority_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2924,"count":1}],"isBlockCoverage":false},{"functionName":"PriorityQueue","ranges":[{"startOffset":570,"endOffset":811,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":815,"endOffset":855,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":859,"endOffset":1044,"count":8},{"startOffset":995,"endOffset":1012,"count":0}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":1048,"endOffset":1087,"count":532}],"isBlockCoverage":true},{"functionName":"percolateDown","ranges":[{"startOffset":1091,"endOffset":1759,"count":270},{"startOffset":1309,"endOffset":1668,"count":268},{"startOffset":1375,"endOffset":1422,"count":266},{"startOffset":1537,"endOffset":1543,"count":265},{"startOffset":1543,"endOffset":1668,"count":3}],"isBlockCoverage":true},{"functionName":"percolateUp","ranges":[{"startOffset":1763,"endOffset":2254,"count":8},{"startOffset":1941,"endOffset":2163,"count":10},{"startOffset":2029,"endOffset":2035,"count":0}],"isBlockCoverage":true},{"functionName":"removeAt","ranges":[{"startOffset":2258,"endOffset":2591,"count":7},{"startOffset":2454,"endOffset":2505,"count":1},{"startOffset":2515,"endOffset":2537,"count":0}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":2595,"endOffset":2761,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":2765,"endOffset":2920,"count":3},{"startOffset":2867,"endOffset":2874,"count":0}],"isBlockCoverage":true}]},{"scriptId":"39","url":"internal/util/debuglog.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2815,"count":1}],"isBlockCoverage":false},{"functionName":"initializeDebugEnv","ranges":[{"startOffset":500,"endOffset":873,"count":1},{"startOffset":591,"endOffset":790,"count":0}],"isBlockCoverage":true},{"functionName":"emitWarningIfNeeded","ranges":[{"startOffset":947,"endOffset":1272,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":1274,"endOffset":1292,"count":5269}],"isBlockCoverage":true},{"functionName":"debuglogImpl","ranges":[{"startOffset":1294,"endOffset":1859,"count":10},{"startOffset":1369,"endOffset":1831,"count":6},{"startOffset":1388,"endOffset":1784,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":1477,"endOffset":1777,"count":0}],"isBlockCoverage":false},{"functionName":"debuglog","ranges":[{"startOffset":2079,"endOffset":2758,"count":14}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":2110,"endOffset":2206,"count":10}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":2221,"endOffset":2458,"count":10}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":2488,"endOffset":2557,"count":0}],"isBlockCoverage":false},{"functionName":"logger","ranges":[{"startOffset":2576,"endOffset":2603,"count":10}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2653,"endOffset":2687,"count":0}],"isBlockCoverage":false}]},{"scriptId":"40","url":"internal/process/execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6944,"count":1}],"isBlockCoverage":false},{"functionName":"tryGetCwd","ranges":[{"startOffset":526,"endOffset":856,"count":1},{"startOffset":587,"endOffset":854,"count":0}],"isBlockCoverage":true},{"functionName":"evalModule","ranges":[{"startOffset":858,"endOffset":1298,"count":0}],"isBlockCoverage":false},{"functionName":"evalScript","ranges":[{"startOffset":1300,"endOffset":2682,"count":0}],"isBlockCoverage":false},{"functionName":"setUncaughtExceptionCaptureCallback","ranges":[{"startOffset":2759,"endOffset":3453,"count":0}],"isBlockCoverage":false},{"functionName":"hasUncaughtExceptionCaptureCallback","ranges":[{"startOffset":3455,"endOffset":3556,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":3558,"endOffset":3576,"count":0}],"isBlockCoverage":false},{"functionName":"createOnGlobalUncaughtException","ranges":[{"startOffset":4119,"endOffset":6518,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4388,"endOffset":6515,"count":0}],"isBlockCoverage":false},{"functionName":"readStdin","ranges":[{"startOffset":6520,"endOffset":6725,"count":0}],"isBlockCoverage":false}]},{"scriptId":"41","url":"internal/process/warning.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4833,"count":1}],"isBlockCoverage":false},{"functionName":"lazyOption","ranges":[{"startOffset":277,"endOffset":831,"count":0}],"isBlockCoverage":false},{"functionName":"writeOut","ranges":[{"startOffset":932,"endOffset":1054,"count":0}],"isBlockCoverage":false},{"functionName":"writeToFile","ranges":[{"startOffset":1056,"endOffset":1440,"count":0}],"isBlockCoverage":false},{"functionName":"doEmitWarning","ranges":[{"startOffset":1442,"endOffset":1513,"count":0}],"isBlockCoverage":false},{"functionName":"onWarning","ranges":[{"startOffset":1552,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarning","ranges":[{"startOffset":2853,"endOffset":3997,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarningSync","ranges":[{"startOffset":3999,"endOffset":4093,"count":0}],"isBlockCoverage":false},{"functionName":"createWarningObject","ranges":[{"startOffset":4095,"endOffset":4762,"count":0}],"isBlockCoverage":false}]},{"scriptId":"42","url":"internal/bootstrap/switches/is_main_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6397,"count":1}],"isBlockCoverage":true},{"functionName":"process._startProfilerIdleNotifier","ranges":[{"startOffset":513,"endOffset":521,"count":0}],"isBlockCoverage":false},{"functionName":"process._stopProfilerIdleNotifier","ranges":[{"startOffset":559,"endOffset":567,"count":0}],"isBlockCoverage":false},{"functionName":"defineStream","ranges":[{"startOffset":570,"endOffset":717,"count":3}],"isBlockCoverage":true},{"functionName":"createWritableStdioStream","ranges":[{"startOffset":1278,"endOffset":2845,"count":2},{"startOffset":1562,"endOffset":1748,"count":0},{"startOffset":1754,"endOffset":1766,"count":0},{"startOffset":1771,"endOffset":2473,"count":0},{"startOffset":2479,"endOffset":2724,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":2667,"endOffset":2714,"count":0}],"isBlockCoverage":false},{"functionName":"dummyDestroy","ranges":[{"startOffset":2847,"endOffset":3230,"count":0}],"isBlockCoverage":false},{"functionName":"getStdout","ranges":[{"startOffset":3268,"endOffset":3599,"count":66},{"startOffset":3305,"endOffset":3319,"count":65},{"startOffset":3319,"endOffset":3598,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3547,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"getStderr","ranges":[{"startOffset":3601,"endOffset":3932,"count":150},{"startOffset":3638,"endOffset":3652,"count":149},{"startOffset":3652,"endOffset":3931,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3880,"endOffset":3907,"count":0}],"isBlockCoverage":false},{"functionName":"getStdin","ranges":[{"startOffset":3934,"endOffset":6253,"count":0}],"isBlockCoverage":false},{"functionName":"rawMethods.resetStdioForTesting","ranges":[{"startOffset":6316,"endOffset":6395,"count":0}],"isBlockCoverage":false}]},{"scriptId":"43","url":"internal/process/signal.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1124,"count":1}],"isBlockCoverage":false},{"functionName":"isSignal","ranges":[{"startOffset":205,"endOffset":301,"count":5}],"isBlockCoverage":true},{"functionName":"startListeningIfSignal","ranges":[{"startOffset":365,"endOffset":853,"count":5},{"startOffset":426,"endOffset":451,"count":2},{"startOffset":453,"endOffset":851,"count":1},{"startOffset":734,"endOffset":813,"count":0}],"isBlockCoverage":true},{"functionName":"stopListeningIfSignal","ranges":[{"startOffset":855,"endOffset":1050,"count":1},{"startOffset":957,"endOffset":993,"count":0},{"startOffset":995,"endOffset":1048,"count":0}],"isBlockCoverage":true}]},{"scriptId":"44","url":"internal/bootstrap/switches/does_own_process_state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3523,"count":1}],"isBlockCoverage":true},{"functionName":"wrapPosixCredentialSetters","ranges":[{"startOffset":817,"endOffset":2957,"count":1}],"isBlockCoverage":true},{"functionName":"initgroups","ranges":[{"startOffset":1278,"endOffset":1695,"count":0}],"isBlockCoverage":false},{"functionName":"setgroups","ranges":[{"startOffset":1699,"endOffset":2179,"count":0}],"isBlockCoverage":false},{"functionName":"wrapIdSetter","ranges":[{"startOffset":2183,"endOffset":2508,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2232,"endOffset":2503,"count":0}],"isBlockCoverage":false},{"functionName":"validateId","ranges":[{"startOffset":2512,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedChdir","ranges":[{"startOffset":3108,"endOffset":3279,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedUmask","ranges":[{"startOffset":3281,"endOffset":3417,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedCwd","ranges":[{"startOffset":3419,"endOffset":3522,"count":3},{"startOffset":3471,"endOffset":3500,"count":1}],"isBlockCoverage":true}]},{"scriptId":"45","url":"internal/main/run_main_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":632,"count":1}],"isBlockCoverage":true}]},{"scriptId":"46","url":"internal/bootstrap/pre_execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15185,"count":1}],"isBlockCoverage":true},{"functionName":"prepareMainThreadExecution","ranges":[{"startOffset":410,"endOffset":2164,"count":1}],"isBlockCoverage":true},{"functionName":"patchProcessObject","ranges":[{"startOffset":2166,"endOffset":3743,"count":1},{"startOffset":2762,"endOffset":2770,"count":0}],"isBlockCoverage":true},{"functionName":"addReadOnlyProcessAlias","ranges":[{"startOffset":3745,"endOffset":4002,"count":13},{"startOffset":3866,"endOffset":4000,"count":1}],"isBlockCoverage":true},{"functionName":"setupWarningHandler","ranges":[{"startOffset":4004,"endOffset":4233,"count":1}],"isBlockCoverage":true},{"functionName":"setupCoverageHooks","ranges":[{"startOffset":4345,"endOffset":5022,"count":1},{"startOffset":4815,"endOffset":4992,"count":0}],"isBlockCoverage":true},{"functionName":"setupStacktracePrinterOnSigint","ranges":[{"startOffset":5024,"endOffset":5249,"count":1},{"startOffset":5126,"endOffset":5248,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReport","ranges":[{"startOffset":5251,"endOffset":5475,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5433,"endOffset":5467,"count":0}],"isBlockCoverage":false},{"functionName":"setupDebugEnv","ranges":[{"startOffset":5477,"endOffset":5709,"count":1},{"startOffset":5628,"endOffset":5707,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReportSignalHandlers","ranges":[{"startOffset":5771,"endOffset":5906,"count":1}],"isBlockCoverage":true},{"functionName":"initializeHeapSnapshotSignalHandlers","ranges":[{"startOffset":5908,"endOffset":6215,"count":1},{"startOffset":6043,"endOffset":6214,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6175,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"setupTraceCategoryState","ranges":[{"startOffset":6217,"endOffset":6476,"count":1}],"isBlockCoverage":true},{"functionName":"setupInspectorHooks","ranges":[{"startOffset":6478,"endOffset":7059,"count":1}],"isBlockCoverage":true},{"functionName":"initializeDeprecations","ranges":[{"startOffset":7254,"endOffset":9775,"count":1},{"startOffset":7965,"endOffset":8267,"count":16},{"startOffset":8010,"endOffset":8242,"count":0},{"startOffset":8584,"endOffset":8757,"count":0},{"startOffset":8785,"endOffset":9179,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":9428,"endOffset":9464,"count":67}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9470,"endOffset":9512,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9638,"endOffset":9673,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9679,"endOffset":9720,"count":0}],"isBlockCoverage":false},{"functionName":"initializeAbortController","ranges":[{"startOffset":9777,"endOffset":10345,"count":1},{"startOffset":9915,"endOffset":10343,"count":0}],"isBlockCoverage":true},{"functionName":"setupChildProcessIpcChannel","ranges":[{"startOffset":10347,"endOffset":10912,"count":1},{"startOffset":10423,"endOffset":10910,"count":0}],"isBlockCoverage":true},{"functionName":"initializeClusterIPC","ranges":[{"startOffset":10914,"endOffset":11184,"count":1},{"startOffset":11001,"endOffset":11182,"count":0}],"isBlockCoverage":true},{"functionName":"initializePolicy","ranges":[{"startOffset":11186,"endOffset":13010,"count":1},{"startOffset":11312,"endOffset":13008,"count":0}],"isBlockCoverage":true},{"functionName":"initializeWASI","ranges":[{"startOffset":13012,"endOffset":13241,"count":1}],"isBlockCoverage":true},{"functionName":"initializeCJSLoader","ranges":[{"startOffset":13243,"endOffset":13529,"count":1}],"isBlockCoverage":true},{"functionName":"initializeESMLoader","ranges":[{"startOffset":13531,"endOffset":14199,"count":1},{"startOffset":13740,"endOffset":13747,"count":0}],"isBlockCoverage":true},{"functionName":"initializeFrozenIntrinsics","ranges":[{"startOffset":14201,"endOffset":14458,"count":1},{"startOffset":14286,"endOffset":14456,"count":0}],"isBlockCoverage":true},{"functionName":"loadPreloadModules","ranges":[{"startOffset":14460,"endOffset":14807,"count":1},{"startOffset":14654,"endOffset":14805,"count":0}],"isBlockCoverage":true}]},{"scriptId":"47","url":"internal/options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":898,"count":1}],"isBlockCoverage":false},{"functionName":"getOptionValue","ranges":[{"startOffset":175,"endOffset":314,"count":217},{"startOffset":262,"endOffset":289,"count":1},{"startOffset":289,"endOffset":313,"count":216}],"isBlockCoverage":true},{"functionName":"getAllowUnauthorized","ranges":[{"startOffset":316,"endOffset":781,"count":30},{"startOffset":453,"endOffset":479,"count":0},{"startOffset":481,"endOffset":751,"count":0}],"isBlockCoverage":true}]},{"scriptId":"48","url":"internal/inspector_async_hook.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1972,"count":1}],"isBlockCoverage":false},{"functionName":"lazyHookCreation","ranges":[{"startOffset":75,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"enable","ranges":[{"startOffset":1259,"endOffset":1840,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":1842,"endOffset":1928,"count":0}],"isBlockCoverage":false}]},{"scriptId":"49","url":"internal/source_map/source_map_cache.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8419,"count":1}],"isBlockCoverage":false},{"functionName":"ObjectGetValueSafe","ranges":[{"startOffset":305,"endOffset":483,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":665,"endOffset":690,"count":0}],"isBlockCoverage":false},{"functionName":"getSourceMapsEnabled","ranges":[{"startOffset":1236,"endOffset":1740,"count":189},{"startOffset":1309,"endOffset":1710,"count":1},{"startOffset":1402,"endOffset":1706,"count":0}],"isBlockCoverage":true},{"functionName":"maybeCacheSourceMap","ranges":[{"startOffset":1742,"endOffset":2852,"count":103},{"startOffset":1900,"endOffset":1920,"count":0},{"startOffset":1923,"endOffset":1930,"count":0},{"startOffset":1990,"endOffset":2128,"count":0},{"startOffset":2232,"endOffset":2850,"count":0}],"isBlockCoverage":true},{"functionName":"dataFromUrl","ranges":[{"startOffset":2854,"endOffset":3380,"count":0}],"isBlockCoverage":false},{"functionName":"lineLengths","ranges":[{"startOffset":3570,"endOffset":3878,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromFile","ranges":[{"startOffset":3880,"endOffset":4136,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromDataUrl","ranges":[{"startOffset":4230,"endOffset":4867,"count":0}],"isBlockCoverage":false},{"functionName":"sourcesToAbsolute","ranges":[{"startOffset":5052,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"rekeySourceMap","ranges":[{"startOffset":5448,"endOffset":5643,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapCacheToObject","ranges":[{"startOffset":6081,"endOffset":6450,"count":0}],"isBlockCoverage":false},{"functionName":"appendCJSCache","ranges":[{"startOffset":6689,"endOffset":7344,"count":0}],"isBlockCoverage":false},{"functionName":"findSourceMap","ranges":[{"startOffset":7562,"endOffset":8287,"count":0}],"isBlockCoverage":false}]},{"scriptId":"50","url":"fs.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":59762,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3694,"endOffset":3854,"count":0}],"isBlockCoverage":false},{"functionName":"showTruncateDeprecation","ranges":[{"startOffset":4089,"endOffset":4376,"count":0}],"isBlockCoverage":false},{"functionName":"maybeCallback","ranges":[{"startOffset":4378,"endOffset":4494,"count":0}],"isBlockCoverage":false},{"functionName":"makeCallback","ranges":[{"startOffset":4697,"endOffset":4840,"count":0}],"isBlockCoverage":false},{"functionName":"makeStatsCallback","ranges":[{"startOffset":5021,"endOffset":5236,"count":0}],"isBlockCoverage":false},{"functionName":"isFileType","ranges":[{"startOffset":5262,"endOffset":5522,"count":2082},{"startOffset":5461,"endOffset":5481,"count":180}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":5524,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"accessSync","ranges":[{"startOffset":5884,"endOffset":6122,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6124,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6435,"endOffset":6513,"count":0}],"isBlockCoverage":false},{"functionName":"existsSync","ranges":[{"startOffset":6930,"endOffset":7460,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterOpen","ranges":[{"startOffset":7462,"endOffset":7742,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterStat","ranges":[{"startOffset":7744,"endOffset":8245,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":8247,"endOffset":9263,"count":0}],"isBlockCoverage":false},{"functionName":"tryStatSync","ranges":[{"startOffset":9265,"endOffset":9495,"count":88},{"startOffset":9408,"endOffset":9420,"count":0},{"startOffset":9422,"endOffset":9477,"count":0}],"isBlockCoverage":true},{"functionName":"tryCreateBuffer","ranges":[{"startOffset":9497,"endOffset":9808,"count":88},{"startOffset":9615,"endOffset":9667,"count":0},{"startOffset":9754,"endOffset":9766,"count":0},{"startOffset":9768,"endOffset":9785,"count":0}],"isBlockCoverage":true},{"functionName":"tryReadSync","ranges":[{"startOffset":9810,"endOffset":10065,"count":88},{"startOffset":10008,"endOffset":10020,"count":0},{"startOffset":10022,"endOffset":10039,"count":0}],"isBlockCoverage":true},{"functionName":"readFileSync","ranges":[{"startOffset":10067,"endOffset":11450,"count":88},{"startOffset":10236,"endOffset":10242,"count":0},{"startOffset":10382,"endOffset":10385,"count":0},{"startOffset":10515,"endOffset":10538,"count":0},{"startOffset":10790,"endOffset":11144,"count":0},{"startOffset":11204,"endOffset":11300,"count":0},{"startOffset":11322,"endOffset":11362,"count":0},{"startOffset":11388,"endOffset":11431,"count":85}],"isBlockCoverage":true},{"functionName":"defaultCloseCallback","ranges":[{"startOffset":11452,"endOffset":11520,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":11522,"endOffset":11778,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":11780,"endOffset":11923,"count":88}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11925,"endOffset":12502,"count":0}],"isBlockCoverage":false},{"functionName":"openSync","ranges":[{"startOffset":12505,"endOffset":12901,"count":88}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":13008,"endOffset":14506,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":14775,"endOffset":15690,"count":88},{"startOffset":14893,"endOffset":15042,"count":0},{"startOffset":15093,"endOffset":15114,"count":0},{"startOffset":15202,"endOffset":15221,"count":0},{"startOffset":15254,"endOffset":15384,"count":0}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":15692,"endOffset":16122,"count":0}],"isBlockCoverage":false},{"functionName":"readvSync","ranges":[{"startOffset":16265,"endOffset":16575,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":16721,"endOffset":17989,"count":0}],"isBlockCoverage":false},{"functionName":"writeSync","ranges":[{"startOffset":18266,"endOffset":19132,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":19193,"endOffset":19621,"count":0}],"isBlockCoverage":false},{"functionName":"writevSync","ranges":[{"startOffset":19750,"endOffset":20063,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":20065,"endOffset":20446,"count":0}],"isBlockCoverage":false},{"functionName":"renameSync","ranges":[{"startOffset":20448,"endOffset":20795,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":20797,"endOffset":21415,"count":0}],"isBlockCoverage":false},{"functionName":"truncateSync","ranges":[{"startOffset":21417,"endOffset":21820,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":21822,"endOffset":22162,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncateSync","ranges":[{"startOffset":22164,"endOffset":22384,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadRimraf","ranges":[{"startOffset":22387,"endOffset":22506,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":22508,"endOffset":23148,"count":0}],"isBlockCoverage":false},{"functionName":"rmdirSync","ranges":[{"startOffset":23150,"endOffset":23588,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":23590,"endOffset":23928,"count":0}],"isBlockCoverage":false},{"functionName":"rmSync","ranges":[{"startOffset":23930,"endOffset":24100,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":24102,"endOffset":24276,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasyncSync","ranges":[{"startOffset":24278,"endOffset":24428,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":24430,"endOffset":24596,"count":0}],"isBlockCoverage":false},{"functionName":"fsyncSync","ranges":[{"startOffset":24598,"endOffset":24740,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":24742,"endOffset":25523,"count":0}],"isBlockCoverage":false},{"functionName":"mkdirSync","ranges":[{"startOffset":25525,"endOffset":26297,"count":0}],"isBlockCoverage":false},{"functionName":"readdir","ranges":[{"startOffset":26299,"endOffset":26880,"count":0}],"isBlockCoverage":false},{"functionName":"readdirSync","ranges":[{"startOffset":26882,"endOffset":27308,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":27310,"endOffset":27649,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":27651,"endOffset":28026,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":28028,"endOffset":28401,"count":0}],"isBlockCoverage":false},{"functionName":"hasNoEntryError","ranges":[{"startOffset":28403,"endOffset":28625,"count":0}],"isBlockCoverage":false},{"functionName":"fstatSync","ranges":[{"startOffset":28627,"endOffset":28891,"count":0}],"isBlockCoverage":false},{"functionName":"lstatSync","ranges":[{"startOffset":28893,"endOffset":29317,"count":0}],"isBlockCoverage":false},{"functionName":"statSync","ranges":[{"startOffset":29319,"endOffset":29740,"count":116},{"startOffset":29618,"endOffset":29641,"count":0},{"startOffset":29643,"endOffset":29670,"count":0}],"isBlockCoverage":true},{"functionName":"readlink","ranges":[{"startOffset":29742,"endOffset":30090,"count":0}],"isBlockCoverage":false},{"functionName":"readlinkSync","ranges":[{"startOffset":30092,"endOffset":30423,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":30425,"endOffset":32035,"count":0}],"isBlockCoverage":false},{"functionName":"symlinkSync","ranges":[{"startOffset":32037,"endOffset":32694,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":32696,"endOffset":33097,"count":0}],"isBlockCoverage":false},{"functionName":"linkSync","ranges":[{"startOffset":33099,"endOffset":33548,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":33550,"endOffset":33777,"count":0}],"isBlockCoverage":false},{"functionName":"unlinkSync","ranges":[{"startOffset":33779,"endOffset":33965,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":33967,"endOffset":34209,"count":0}],"isBlockCoverage":false},{"functionName":"fchmodSync","ranges":[{"startOffset":34211,"endOffset":34405,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":34407,"endOffset":34844,"count":0}],"isBlockCoverage":false},{"functionName":"lchmodSync","ranges":[{"startOffset":34846,"endOffset":35168,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":35171,"endOffset":35447,"count":0}],"isBlockCoverage":false},{"functionName":"chmodSync","ranges":[{"startOffset":35449,"endOffset":35684,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":35686,"endOffset":36027,"count":0}],"isBlockCoverage":false},{"functionName":"lchownSync","ranges":[{"startOffset":36029,"endOffset":36329,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":36331,"endOffset":36637,"count":0}],"isBlockCoverage":false},{"functionName":"fchownSync","ranges":[{"startOffset":36639,"endOffset":36898,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":36900,"endOffset":37240,"count":0}],"isBlockCoverage":false},{"functionName":"chownSync","ranges":[{"startOffset":37242,"endOffset":37540,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":37542,"endOffset":37883,"count":0}],"isBlockCoverage":false},{"functionName":"utimesSync","ranges":[{"startOffset":37885,"endOffset":38167,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":38169,"endOffset":38477,"count":0}],"isBlockCoverage":false},{"functionName":"futimesSync","ranges":[{"startOffset":38479,"endOffset":38739,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":38741,"endOffset":39087,"count":0}],"isBlockCoverage":false},{"functionName":"lutimesSync","ranges":[{"startOffset":39089,"endOffset":39393,"count":0}],"isBlockCoverage":false},{"functionName":"writeAll","ranges":[{"startOffset":39395,"endOffset":40339,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":40341,"endOffset":41280,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileSync","ranges":[{"startOffset":41282,"endOffset":41992,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":41994,"endOffset":42434,"count":0}],"isBlockCoverage":false},{"functionName":"appendFileSync","ranges":[{"startOffset":42436,"endOffset":42815,"count":0}],"isBlockCoverage":false},{"functionName":"watch","ranges":[{"startOffset":42817,"endOffset":44050,"count":0}],"isBlockCoverage":false},{"functionName":"watchFile","ranges":[{"startOffset":44086,"endOffset":45199,"count":0}],"isBlockCoverage":false},{"functionName":"unwatchFile","ranges":[{"startOffset":45201,"endOffset":45889,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46105,"endOffset":46171,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46196,"endOffset":46374,"count":112},{"startOffset":46263,"endOffset":46354,"count":224},{"startOffset":46325,"endOffset":46348,"count":112},{"startOffset":46354,"endOffset":46373,"count":0}],"isBlockCoverage":true},{"functionName":"encodeRealpathResult","ranges":[{"startOffset":46379,"endOffset":46666,"count":112},{"startOffset":46464,"endOffset":46494,"count":0},{"startOffset":46514,"endOffset":46665,"count":0}],"isBlockCoverage":true},{"functionName":"nextPart","ranges":[{"startOffset":46789,"endOffset":47032,"count":0}],"isBlockCoverage":false},{"functionName":"nextPart","ranges":[{"startOffset":47056,"endOffset":47109,"count":1087}],"isBlockCoverage":true},{"functionName":"realpathSync","ranges":[{"startOffset":47151,"endOffset":51017,"count":199},{"startOffset":47285,"endOffset":47303,"count":0},{"startOffset":47472,"endOffset":47507,"count":87},{"startOffset":47507,"endOffset":48079,"count":112},{"startOffset":48079,"endOffset":48254,"count":0},{"startOffset":48254,"endOffset":48391,"count":112},{"startOffset":48391,"endOffset":50934,"count":1087},{"startOffset":48503,"endOffset":48618,"count":112},{"startOffset":48618,"endOffset":48744,"count":975},{"startOffset":48867,"endOffset":49004,"count":907},{"startOffset":48958,"endOffset":48982,"count":0},{"startOffset":49004,"endOffset":49084,"count":180},{"startOffset":49115,"endOffset":49164,"count":0},{"startOffset":49164,"endOffset":50448,"count":180},{"startOffset":49617,"endOffset":50442,"count":0},{"startOffset":50448,"endOffset":50743,"count":0},{"startOffset":50745,"endOffset":50930,"count":0},{"startOffset":50934,"endOffset":51016,"count":112}],"isBlockCoverage":true},{"functionName":"realpathSync.native","ranges":[{"startOffset":51042,"endOffset":51281,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":51285,"endOffset":54720,"count":0}],"isBlockCoverage":false},{"functionName":"realpath.native","ranges":[{"startOffset":54741,"endOffset":55011,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":55014,"endOffset":55485,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtempSync","ranges":[{"startOffset":55488,"endOffset":55962,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":55965,"endOffset":56519,"count":0}],"isBlockCoverage":false},{"functionName":"copyFileSync","ranges":[{"startOffset":56522,"endOffset":56894,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadStreams","ranges":[{"startOffset":56896,"endOffset":57090,"count":8},{"startOffset":56944,"endOffset":57088,"count":1}],"isBlockCoverage":true},{"functionName":"createReadStream","ranges":[{"startOffset":57092,"endOffset":57197,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteStream","ranges":[{"startOffset":57199,"endOffset":57306,"count":0}],"isBlockCoverage":false},{"functionName":"get ReadStream","ranges":[{"startOffset":58529,"endOffset":58597,"count":2}],"isBlockCoverage":true},{"functionName":"set ReadStream","ranges":[{"startOffset":58602,"endOffset":58649,"count":0}],"isBlockCoverage":false},{"functionName":"get WriteStream","ranges":[{"startOffset":58654,"endOffset":58724,"count":2}],"isBlockCoverage":true},{"functionName":"set WriteStream","ranges":[{"startOffset":58729,"endOffset":58778,"count":0}],"isBlockCoverage":false},{"functionName":"get FileReadStream","ranges":[{"startOffset":58916,"endOffset":58992,"count":2}],"isBlockCoverage":true},{"functionName":"set FileReadStream","ranges":[{"startOffset":58997,"endOffset":59052,"count":0}],"isBlockCoverage":false},{"functionName":"get FileWriteStream","ranges":[{"startOffset":59057,"endOffset":59135,"count":2}],"isBlockCoverage":true},{"functionName":"set FileWriteStream","ranges":[{"startOffset":59140,"endOffset":59197,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":59628,"endOffset":59753,"count":2},{"startOffset":59673,"endOffset":59724,"count":1}],"isBlockCoverage":true}]},{"scriptId":"51","url":"internal/fs/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":21731,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadFs","ranges":[{"startOffset":2496,"endOffset":2575,"count":0}],"isBlockCoverage":false},{"functionName":"assertEncoding","ranges":[{"startOffset":2577,"endOffset":2724,"count":284},{"startOffset":2628,"endOffset":2659,"count":85},{"startOffset":2661,"endOffset":2722,"count":0}],"isBlockCoverage":true},{"functionName":"Dirent","ranges":[{"startOffset":2743,"endOffset":2818,"count":0}],"isBlockCoverage":false},{"functionName":"isDirectory","ranges":[{"startOffset":2822,"endOffset":2883,"count":0}],"isBlockCoverage":false},{"functionName":"isFile","ranges":[{"startOffset":2887,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"isBlockDevice","ranges":[{"startOffset":2948,"endOffset":3013,"count":0}],"isBlockCoverage":false},{"functionName":"isCharacterDevice","ranges":[{"startOffset":3017,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbolicLink","ranges":[{"startOffset":3089,"endOffset":3154,"count":0}],"isBlockCoverage":false},{"functionName":"isFIFO","ranges":[{"startOffset":3158,"endOffset":3215,"count":0}],"isBlockCoverage":false},{"functionName":"isSocket","ranges":[{"startOffset":3219,"endOffset":3280,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats","ranges":[{"startOffset":3325,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats.","ranges":[{"startOffset":3549,"endOffset":3598,"count":0}],"isBlockCoverage":false},{"functionName":"copyObject","ranges":[{"startOffset":3603,"endOffset":3731,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":3781,"endOffset":4388,"count":0}],"isBlockCoverage":false},{"functionName":"getDirents","ranges":[{"startOffset":4390,"endOffset":5485,"count":0}],"isBlockCoverage":false},{"functionName":"getDirent","ranges":[{"startOffset":5487,"endOffset":6209,"count":0}],"isBlockCoverage":false},{"functionName":"getOptions","ranges":[{"startOffset":6211,"endOffset":6853,"count":306},{"startOffset":6306,"endOffset":6344,"count":284},{"startOffset":6346,"endOffset":6378,"count":22},{"startOffset":6378,"endOffset":6415,"count":284},{"startOffset":6415,"endOffset":6533,"count":85},{"startOffset":6533,"endOffset":6655,"count":199},{"startOffset":6572,"endOffset":6655,"count":0},{"startOffset":6655,"endOffset":6769,"count":284},{"startOffset":6769,"endOffset":6833,"count":0},{"startOffset":6833,"endOffset":6852,"count":284}],"isBlockCoverage":true},{"functionName":"handleErrorFromBinding","ranges":[{"startOffset":6855,"endOffset":7384,"count":560},{"startOffset":6925,"endOffset":7060,"count":20},{"startOffset":7060,"endOffset":7092,"count":540},{"startOffset":7092,"endOffset":7382,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7525,"endOffset":8078,"count":429},{"startOffset":7755,"endOffset":7775,"count":0},{"startOffset":7829,"endOffset":7877,"count":0},{"startOffset":7896,"endOffset":8077,"count":0}],"isBlockCoverage":true},{"functionName":"preprocessSymlinkDestination","ranges":[{"startOffset":8082,"endOffset":8766,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase","ranges":[{"startOffset":8799,"endOffset":9106,"count":116}],"isBlockCoverage":true},{"functionName":"StatsBase.isDirectory","ranges":[{"startOffset":9142,"endOffset":9199,"count":103}],"isBlockCoverage":true},{"functionName":"StatsBase.isFile","ranges":[{"startOffset":9231,"endOffset":9288,"count":88}],"isBlockCoverage":true},{"functionName":"StatsBase.isBlockDevice","ranges":[{"startOffset":9327,"endOffset":9384,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isCharacterDevice","ranges":[{"startOffset":9427,"endOffset":9484,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSymbolicLink","ranges":[{"startOffset":9524,"endOffset":9581,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isFIFO","ranges":[{"startOffset":9613,"endOffset":9670,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSocket","ranges":[{"startOffset":9704,"endOffset":9762,"count":0}],"isBlockCoverage":false},{"functionName":"msFromTimeSpec","ranges":[{"startOffset":9887,"endOffset":9969,"count":384}],"isBlockCoverage":true},{"functionName":"nsFromTimeSpecBigInt","ranges":[{"startOffset":9971,"endOffset":10054,"count":0}],"isBlockCoverage":false},{"functionName":"dateFromMs","ranges":[{"startOffset":10403,"endOffset":10467,"count":464}],"isBlockCoverage":true},{"functionName":"BigIntStats","ranges":[{"startOffset":10469,"endOffset":11205,"count":0}],"isBlockCoverage":false},{"functionName":"BigIntStats._checkModeProperty","ranges":[{"startOffset":11363,"endOffset":11609,"count":0}],"isBlockCoverage":false},{"functionName":"Stats","ranges":[{"startOffset":11612,"endOffset":12129,"count":116}],"isBlockCoverage":true},{"functionName":"Stats._checkModeProperty","ranges":[{"startOffset":12470,"endOffset":12700,"count":191},{"startOffset":12507,"endOffset":12585,"count":0},{"startOffset":12587,"endOffset":12654,"count":0}],"isBlockCoverage":true},{"functionName":"getStatsFromBinding","ranges":[{"startOffset":12703,"endOffset":13781,"count":96},{"startOffset":12784,"endOffset":13309,"count":0}],"isBlockCoverage":true},{"functionName":"stringToFlags","ranges":[{"startOffset":13783,"endOffset":14991,"count":107},{"startOffset":13848,"endOffset":13871,"count":0},{"startOffset":13894,"endOffset":13920,"count":0},{"startOffset":13977,"endOffset":13988,"count":0},{"startOffset":14010,"endOffset":14047,"count":0},{"startOffset":14052,"endOffset":14078,"count":0},{"startOffset":14083,"endOffset":14095,"count":0},{"startOffset":14117,"endOffset":14153,"count":0},{"startOffset":14159,"endOffset":14206,"count":0},{"startOffset":14211,"endOffset":14222,"count":0},{"startOffset":14244,"endOffset":14301,"count":0},{"startOffset":14307,"endOffset":14353,"count":0},{"startOffset":14358,"endOffset":14369,"count":0},{"startOffset":14391,"endOffset":14446,"count":0},{"startOffset":14452,"endOffset":14500,"count":0},{"startOffset":14505,"endOffset":14516,"count":0},{"startOffset":14538,"endOffset":14596,"count":0},{"startOffset":14601,"endOffset":14612,"count":0},{"startOffset":14634,"endOffset":14692,"count":0},{"startOffset":14698,"endOffset":14745,"count":0},{"startOffset":14750,"endOffset":14761,"count":0},{"startOffset":14783,"endOffset":14839,"count":0},{"startOffset":14844,"endOffset":14855,"count":0},{"startOffset":14877,"endOffset":14933,"count":0},{"startOffset":14937,"endOffset":14990,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15037,"endOffset":15397,"count":0}],"isBlockCoverage":false},{"functionName":"toUnixTimestamp","ranges":[{"startOffset":15459,"endOffset":15902,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15956,"endOffset":16335,"count":126},{"startOffset":16012,"endOffset":16079,"count":0},{"startOffset":16100,"endOffset":16167,"count":0},{"startOffset":16208,"endOffset":16331,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":16393,"endOffset":16667,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16709,"endOffset":16979,"count":429},{"startOffset":16771,"endOffset":16793,"count":0},{"startOffset":16795,"endOffset":16881,"count":0},{"startOffset":16957,"endOffset":16977,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17024,"endOffset":17159,"count":230}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17207,"endOffset":17538,"count":0}],"isBlockCoverage":false},{"functionName":"warnOnNonPortableTemplate","ranges":[{"startOffset":17579,"endOffset":18037,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18273,"endOffset":18893,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18943,"endOffset":19525,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":19577,"endOffset":20059,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20100,"endOffset":20678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20741,"endOffset":21113,"count":0}],"isBlockCoverage":false}]},{"scriptId":"52","url":"internal/fs/dir.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6714,"count":1}],"isBlockCoverage":false},{"functionName":"Dir","ranges":[{"startOffset":1109,"endOffset":1881,"count":0}],"isBlockCoverage":false},{"functionName":"get path","ranges":[{"startOffset":1885,"endOffset":1928,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":1932,"endOffset":1999,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2003,"endOffset":3375,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":3379,"endOffset":4135,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4139,"endOffset":4865,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":4869,"endOffset":5246,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":5250,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"opendir","ranges":[{"startOffset":5674,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"opendirSync","ranges":[{"startOffset":6301,"endOffset":6658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"53","url":"internal/modules/cjs/helpers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5427,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":681,"endOffset":706,"count":1}],"isBlockCoverage":true},{"functionName":"loadNativeModule","ranges":[{"startOffset":860,"endOffset":1066,"count":141},{"startOffset":964,"endOffset":1064,"count":55}],"isBlockCoverage":true},{"functionName":"makeRequireFunction","ranges":[{"startOffset":1315,"endOffset":3313,"count":84},{"startOffset":1429,"endOffset":2705,"count":0}],"isBlockCoverage":true},{"functionName":"require","ranges":[{"startOffset":1567,"endOffset":2700,"count":0}],"isBlockCoverage":false},{"functionName":"require","ranges":[{"startOffset":2727,"endOffset":2789,"count":217}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":2798,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"paths","ranges":[{"startOffset":2978,"endOffset":3100,"count":0}],"isBlockCoverage":false},{"functionName":"stripBOM","ranges":[{"startOffset":3498,"endOffset":3624,"count":1},{"startOffset":3567,"endOffset":3604,"count":0}],"isBlockCoverage":true},{"functionName":"addBuiltinLibsToObject","ranges":[{"startOffset":3626,"endOffset":5091,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeReferrerURL","ranges":[{"startOffset":5093,"endOffset":5281,"count":103},{"startOffset":5200,"endOffset":5246,"count":84},{"startOffset":5246,"endOffset":5280,"count":19}],"isBlockCoverage":true}]},{"scriptId":"54","url":"url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30124,"count":1}],"isBlockCoverage":false},{"functionName":"Url","ranges":[{"startOffset":1879,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"urlParse","ranges":[{"startOffset":3833,"endOffset":4047,"count":0}],"isBlockCoverage":false},{"functionName":"isIpv6Hostname","ranges":[{"startOffset":4049,"endOffset":4272,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":4296,"endOffset":13617,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname","ranges":[{"startOffset":13620,"endOffset":14345,"count":0}],"isBlockCoverage":false},{"functionName":"autoEscapeStr","ranges":[{"startOffset":15401,"endOffset":16107,"count":0}],"isBlockCoverage":false},{"functionName":"urlFormat","ranges":[{"startOffset":16153,"endOffset":16863,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":17570,"endOffset":20020,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolve","ranges":[{"startOffset":20023,"endOffset":20122,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":20148,"endOffset":20249,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolveObject","ranges":[{"startOffset":20252,"endOffset":20395,"count":0}],"isBlockCoverage":false},{"functionName":"resolveObject","ranges":[{"startOffset":20427,"endOffset":29546,"count":0}],"isBlockCoverage":false},{"functionName":"parseHost","ranges":[{"startOffset":29575,"endOffset":29848,"count":0}],"isBlockCoverage":false}]},{"scriptId":"55","url":"internal/idna.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":264,"count":1}],"isBlockCoverage":false}]},{"scriptId":"56","url":"internal/process/report.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2945,"count":1}],"isBlockCoverage":false},{"functionName":"writeReport","ranges":[{"startOffset":298,"endOffset":805,"count":0}],"isBlockCoverage":false},{"functionName":"getReport","ranges":[{"startOffset":809,"endOffset":1045,"count":0}],"isBlockCoverage":false},{"functionName":"get directory","ranges":[{"startOffset":1049,"endOffset":1100,"count":0}],"isBlockCoverage":false},{"functionName":"set directory","ranges":[{"startOffset":1104,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"get filename","ranges":[{"startOffset":1196,"endOffset":1245,"count":0}],"isBlockCoverage":false},{"functionName":"set filename","ranges":[{"startOffset":1249,"endOffset":1337,"count":0}],"isBlockCoverage":false},{"functionName":"get compact","ranges":[{"startOffset":1341,"endOffset":1388,"count":0}],"isBlockCoverage":false},{"functionName":"set compact","ranges":[{"startOffset":1392,"endOffset":1469,"count":0}],"isBlockCoverage":false},{"functionName":"get signal","ranges":[{"startOffset":1473,"endOffset":1518,"count":0}],"isBlockCoverage":false},{"functionName":"set signal","ranges":[{"startOffset":1522,"endOffset":1659,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnFatalError","ranges":[{"startOffset":1663,"endOffset":1735,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnFatalError","ranges":[{"startOffset":1739,"endOffset":1923,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnSignal","ranges":[{"startOffset":1927,"endOffset":1991,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnSignal","ranges":[{"startOffset":1995,"endOffset":2222,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnUncaughtException","ranges":[{"startOffset":2226,"endOffset":2312,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnUncaughtException","ranges":[{"startOffset":2316,"endOffset":2514,"count":0}],"isBlockCoverage":false},{"functionName":"addSignalHandler","ranges":[{"startOffset":2519,"endOffset":2690,"count":1},{"startOffset":2585,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"removeSignalHandler","ranges":[{"startOffset":2692,"endOffset":2816,"count":0}],"isBlockCoverage":false},{"functionName":"signalHandler","ranges":[{"startOffset":2818,"endOffset":2892,"count":0}],"isBlockCoverage":false}]},{"scriptId":"57","url":"internal/modules/cjs/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":38134,"count":1}],"isBlockCoverage":false},{"functionName":"get hasLoadedAnyUserCJSModule","ranges":[{"startOffset":1880,"endOffset":1949,"count":1}],"isBlockCoverage":true},{"functionName":"stat","ranges":[{"startOffset":4257,"endOffset":4574,"count":392},{"startOffset":4355,"endOffset":4449,"count":381},{"startOffset":4431,"endOffset":4445,"count":174},{"startOffset":4449,"endOffset":4523,"count":218},{"startOffset":4523,"endOffset":4555,"count":207},{"startOffset":4555,"endOffset":4573,"count":218}],"isBlockCoverage":true},{"functionName":"updateChildren","ranges":[{"startOffset":4576,"endOffset":4751,"count":180},{"startOffset":4649,"endOffset":4667,"count":168},{"startOffset":4684,"endOffset":4722,"count":168},{"startOffset":4694,"endOffset":4721,"count":88},{"startOffset":4728,"endOffset":4749,"count":167}],"isBlockCoverage":true},{"functionName":"Module","ranges":[{"startOffset":4753,"endOffset":4990,"count":86}],"isBlockCoverage":true},{"functionName":"wrap","ranges":[{"startOffset":5441,"endOffset":5518,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":5663,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"defineProperty","ranges":[{"startOffset":5790,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5970,"endOffset":5998,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6003,"endOffset":6057,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6107,"endOffset":6143,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6148,"endOffset":6210,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6275,"endOffset":6305,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6376,"endOffset":6401,"count":1}],"isBlockCoverage":true},{"functionName":"readPackage","ranges":[{"startOffset":6749,"endOffset":7559,"count":428},{"startOffset":6929,"endOffset":6945,"count":399},{"startOffset":6945,"endOffset":7043,"count":29},{"startOffset":7043,"endOffset":7049,"count":0},{"startOffset":7050,"endOffset":7065,"count":29},{"startOffset":7093,"endOffset":7159,"count":10},{"startOffset":7159,"endOffset":7442,"count":19},{"startOffset":7442,"endOffset":7557,"count":0}],"isBlockCoverage":true},{"functionName":"readPackageScope","ranges":[{"startOffset":7561,"endOffset":8104,"count":232},{"startOffset":7696,"endOffset":8041,"count":404},{"startOffset":7903,"endOffset":7916,"count":0},{"startOffset":7980,"endOffset":8037,"count":232},{"startOffset":8041,"endOffset":8103,"count":0}],"isBlockCoverage":true},{"functionName":"tryPackage","ranges":[{"startOffset":8106,"endOffset":9407,"count":12},{"startOffset":8228,"endOffset":8309,"count":4},{"startOffset":8309,"endOffset":8403,"count":8},{"startOffset":8403,"endOffset":8447,"count":0},{"startOffset":8448,"endOffset":8515,"count":0},{"startOffset":8541,"endOffset":9388,"count":0},{"startOffset":9388,"endOffset":9406,"count":8}],"isBlockCoverage":true},{"functionName":"tryFile","ranges":[{"startOffset":9748,"endOffset":9958,"count":137},{"startOffset":9836,"endOffset":9843,"count":39},{"startOffset":9843,"endOffset":9867,"count":98},{"startOffset":9867,"endOffset":9877,"count":0},{"startOffset":9879,"endOffset":9922,"count":0},{"startOffset":9922,"endOffset":9957,"count":98}],"isBlockCoverage":true},{"functionName":"toRealPath","ranges":[{"startOffset":9960,"endOffset":10091,"count":124}],"isBlockCoverage":true},{"functionName":"tryExtensions","ranges":[{"startOffset":10166,"endOffset":10372,"count":101},{"startOffset":10248,"endOffset":10354,"count":128},{"startOffset":10320,"endOffset":10350,"count":89},{"startOffset":10354,"endOffset":10371,"count":12}],"isBlockCoverage":true},{"functionName":"findLongestRegisteredExtension","ranges":[{"startOffset":10461,"endOffset":10897,"count":86},{"startOffset":10720,"endOffset":10729,"count":0},{"startOffset":10851,"endOffset":10875,"count":85},{"startOffset":10879,"endOffset":10896,"count":1}],"isBlockCoverage":true},{"functionName":"trySelfParentPath","ranges":[{"startOffset":10899,"endOffset":11188,"count":154},{"startOffset":10951,"endOffset":10964,"count":6},{"startOffset":10964,"endOffset":11022,"count":148},{"startOffset":11022,"endOffset":11186,"count":0}],"isBlockCoverage":true},{"functionName":"trySelf","ranges":[{"startOffset":11190,"endOffset":12039,"count":154},{"startOffset":11249,"endOffset":11262,"count":6},{"startOffset":11262,"endOffset":11332,"count":148},{"startOffset":11332,"endOffset":11337,"count":0},{"startOffset":11350,"endOffset":11378,"count":148},{"startOffset":11380,"endOffset":11393,"count":134},{"startOffset":11393,"endOffset":11430,"count":14},{"startOffset":11430,"endOffset":11443,"count":0},{"startOffset":11443,"endOffset":11490,"count":14},{"startOffset":11490,"endOffset":11516,"count":0},{"startOffset":11516,"endOffset":11682,"count":14},{"startOffset":11578,"endOffset":11653,"count":0},{"startOffset":11682,"endOffset":12037,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExports","ranges":[{"startOffset":12200,"endOffset":12938,"count":115},{"startOffset":12402,"endOffset":12407,"count":103},{"startOffset":12426,"endOffset":12433,"count":103},{"startOffset":12433,"endOffset":12549,"count":12},{"startOffset":12550,"endOffset":12578,"count":12},{"startOffset":12580,"endOffset":12936,"count":1},{"startOffset":12783,"endOffset":12932,"count":0}],"isBlockCoverage":true},{"functionName":"Module._findPath","ranges":[{"startOffset":13004,"endOffset":15631,"count":155},{"startOffset":13114,"endOffset":13137,"count":8},{"startOffset":13137,"endOffset":13200,"count":147},{"startOffset":13177,"endOffset":13200,"count":0},{"startOffset":13276,"endOffset":13286,"count":143},{"startOffset":13287,"endOffset":13307,"count":12},{"startOffset":13372,"endOffset":13385,"count":32},{"startOffset":13385,"endOffset":13508,"count":123},{"startOffset":13532,"endOffset":13669,"count":123},{"startOffset":13669,"endOffset":15612,"count":141},{"startOffset":13767,"endOffset":13787,"count":133},{"startOffset":13789,"endOffset":13798,"count":18},{"startOffset":13798,"endOffset":13826,"count":123},{"startOffset":13826,"endOffset":13956,"count":115},{"startOffset":13927,"endOffset":13950,"count":1},{"startOffset":13956,"endOffset":15263,"count":122},{"startOffset":14107,"endOffset":15040,"count":25},{"startOffset":14174,"endOffset":14234,"count":0},{"startOffset":14308,"endOffset":15032,"count":0},{"startOffset":15063,"endOffset":15257,"count":97},{"startOffset":15263,"endOffset":15283,"count":122},{"startOffset":15283,"endOffset":15294,"count":12},{"startOffset":15296,"endOffset":15512,"count":12},{"startOffset":15406,"endOffset":15444,"count":0},{"startOffset":15512,"endOffset":15608,"count":122},{"startOffset":15612,"endOffset":15630,"count":0}],"isBlockCoverage":true},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":15875,"endOffset":17266,"count":0}],"isBlockCoverage":false},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":17358,"endOffset":18399,"count":92},{"startOffset":17636,"endOffset":17661,"count":0},{"startOffset":17954,"endOffset":18292,"count":6508},{"startOffset":18034,"endOffset":18162,"count":816},{"startOffset":18071,"endOffset":18121,"count":724},{"startOffset":18162,"endOffset":18286,"count":5692},{"startOffset":18182,"endOffset":18286,"count":1980},{"startOffset":18217,"endOffset":18243,"count":1256},{"startOffset":18243,"endOffset":18278,"count":724}],"isBlockCoverage":true},{"functionName":"Module._resolveLookupPaths","ranges":[{"startOffset":18433,"endOffset":19571,"count":154},{"startOffset":18511,"endOffset":18577,"count":0},{"startOffset":18646,"endOffset":18797,"count":135},{"startOffset":18710,"endOffset":18744,"count":87},{"startOffset":18745,"endOffset":18796,"count":0},{"startOffset":18799,"endOffset":19043,"count":19},{"startOffset":18854,"endOffset":18869,"count":13},{"startOffset":18870,"endOffset":18892,"count":13},{"startOffset":18894,"endOffset":18943,"count":13},{"startOffset":19032,"endOffset":19038,"count":0},{"startOffset":19043,"endOffset":19111,"count":135},{"startOffset":19112,"endOffset":19131,"count":135},{"startOffset":19133,"endOffset":19382,"count":0},{"startOffset":19382,"endOffset":19570,"count":135}],"isBlockCoverage":true},{"functionName":"emitCircularRequireWarning","ranges":[{"startOffset":19574,"endOffset":19757,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":19950,"endOffset":20322,"count":0}],"isBlockCoverage":false},{"functionName":"getOwnPropertyDescriptor","ranges":[{"startOffset":20327,"endOffset":20568,"count":0}],"isBlockCoverage":false},{"functionName":"getExportsForCircularRequire","ranges":[{"startOffset":20769,"endOffset":21419,"count":1},{"startOffset":20944,"endOffset":21237,"count":0},{"startOffset":21239,"endOffset":21391,"count":0}],"isBlockCoverage":true},{"functionName":"Module._load","ranges":[{"startOffset":21831,"endOffset":24853,"count":223},{"startOffset":21914,"endOffset":22691,"count":217},{"startOffset":22334,"endOffset":22687,"count":20},{"startOffset":22524,"endOffset":22574,"count":0},{"startOffset":22619,"endOffset":22687,"count":0},{"startOffset":22691,"endOffset":22845,"count":203},{"startOffset":22845,"endOffset":23205,"count":74},{"startOffset":22925,"endOffset":23153,"count":7},{"startOffset":23021,"endOffset":23048,"count":6},{"startOffset":23058,"endOffset":23108,"count":1},{"startOffset":23108,"endOffset":23153,"count":6},{"startOffset":23153,"endOffset":23201,"count":67},{"startOffset":23205,"endOffset":23268,"count":135},{"startOffset":23268,"endOffset":23295,"count":49},{"startOffset":23297,"endOffset":23316,"count":49},{"startOffset":23316,"endOffset":23415,"count":86},{"startOffset":23415,"endOffset":23446,"count":80},{"startOffset":23463,"endOffset":23522,"count":0},{"startOffset":23522,"endOffset":23588,"count":86},{"startOffset":23588,"endOffset":23657,"count":80},{"startOffset":23657,"endOffset":23902,"count":86},{"startOffset":23902,"endOffset":24092,"count":0},{"startOffset":24092,"endOffset":24825,"count":86},{"startOffset":24183,"endOffset":24565,"count":0},{"startOffset":24747,"endOffset":24821,"count":0},{"startOffset":24825,"endOffset":24852,"count":86}],"isBlockCoverage":true},{"functionName":"Module._resolveFilename","ranges":[{"startOffset":24882,"endOffset":27745,"count":203},{"startOffset":24977,"endOffset":25002,"count":49},{"startOffset":25002,"endOffset":25052,"count":154},{"startOffset":25052,"endOffset":25071,"count":0},{"startOffset":25073,"endOffset":26056,"count":0},{"startOffset":26056,"endOffset":26139,"count":154},{"startOffset":26139,"endOffset":26157,"count":148},{"startOffset":26159,"endOffset":26739,"count":148},{"startOffset":26189,"endOffset":26735,"count":0},{"startOffset":26739,"endOffset":26900,"count":154},{"startOffset":26900,"endOffset":27096,"count":0},{"startOffset":27096,"endOffset":27259,"count":154},{"startOffset":27259,"endOffset":27744,"count":0}],"isBlockCoverage":true},{"functionName":"finalizeEsmResolution","ranges":[{"startOffset":27748,"endOffset":28462,"count":1},{"startOffset":27914,"endOffset":28033,"count":0},{"startOffset":28125,"endOffset":28135,"count":0},{"startOffset":28137,"endOffset":28294,"count":0},{"startOffset":28327,"endOffset":28461,"count":0}],"isBlockCoverage":true},{"functionName":"createEsmNotFoundErr","ranges":[{"startOffset":28464,"endOffset":28754,"count":0}],"isBlockCoverage":false},{"functionName":"Module.load","ranges":[{"startOffset":28843,"endOffset":29647,"count":86},{"startOffset":29162,"endOffset":29192,"count":0},{"startOffset":29194,"endOffset":29240,"count":0},{"startOffset":29513,"endOffset":29561,"count":0}],"isBlockCoverage":true},{"functionName":"Module.require","ranges":[{"startOffset":29765,"endOffset":30064,"count":217},{"startOffset":29825,"endOffset":29943,"count":0}],"isBlockCoverage":true},{"functionName":"wrapSafe","ranges":[{"startOffset":30244,"endOffset":31360,"count":84},{"startOffset":30317,"endOffset":30657,"count":0},{"startOffset":30946,"endOffset":31055,"count":0}],"isBlockCoverage":true},{"functionName":"importModuleDynamically","ranges":[{"startOffset":30498,"endOffset":30644,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":31183,"endOffset":31323,"count":0}],"isBlockCoverage":false},{"functionName":"Module._compile","ranges":[{"startOffset":31560,"endOffset":33402,"count":84},{"startOffset":31648,"endOffset":31815,"count":0},{"startOffset":31996,"endOffset":32020,"count":0},{"startOffset":32022,"endOffset":32758,"count":0},{"startOffset":32981,"endOffset":33003,"count":6},{"startOffset":33028,"endOffset":33167,"count":0},{"startOffset":33366,"endOffset":33383,"count":6}],"isBlockCoverage":true},{"functionName":"Module._extensions..js","ranges":[{"startOffset":33461,"endOffset":34235,"count":84},{"startOffset":33522,"endOffset":33918,"count":83},{"startOffset":33680,"endOffset":33914,"count":0},{"startOffset":34052,"endOffset":34068,"count":6},{"startOffset":34070,"endOffset":34135,"count":6},{"startOffset":34135,"endOffset":34195,"count":78}],"isBlockCoverage":true},{"functionName":"Module._extensions..json","ranges":[{"startOffset":34299,"endOffset":34663,"count":1},{"startOffset":34406,"endOffset":34515,"count":0},{"startOffset":34580,"endOffset":34661,"count":0}],"isBlockCoverage":true},{"functionName":"Module._extensions..node","ranges":[{"startOffset":34727,"endOffset":35045,"count":1},{"startOffset":34780,"endOffset":34936,"count":0}],"isBlockCoverage":true},{"functionName":"createRequireFromPath","ranges":[{"startOffset":35048,"endOffset":35473,"count":0}],"isBlockCoverage":false},{"functionName":"createRequire","ranges":[{"startOffset":35758,"endOffset":36311,"count":0}],"isBlockCoverage":false},{"functionName":"Module._initPaths","ranges":[{"startOffset":36372,"endOffset":37280,"count":1},{"startOffset":36413,"endOffset":36438,"count":0},{"startOffset":36490,"endOffset":36513,"count":0},{"startOffset":36721,"endOffset":36763,"count":0},{"startOffset":37030,"endOffset":37159,"count":0}],"isBlockCoverage":true},{"functionName":"pathsFilterCB","ranges":[{"startOffset":37082,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"Module._preloadModules","ranges":[{"startOffset":37308,"endOffset":37890,"count":0}],"isBlockCoverage":false},{"functionName":"syncBuiltinESMExports","ranges":[{"startOffset":37924,"endOffset":38080,"count":0}],"isBlockCoverage":false}]},{"scriptId":"58","url":"vm.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12941,"count":1}],"isBlockCoverage":false},{"functionName":"Script","ranges":[{"startOffset":1992,"endOffset":4152,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":4156,"endOffset":4436,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":4440,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":4850,"endOffset":5021,"count":0}],"isBlockCoverage":false},{"functionName":"validateContext","ranges":[{"startOffset":5025,"endOffset":5244,"count":0}],"isBlockCoverage":false},{"functionName":"getRunInContextArgs","ranges":[{"startOffset":5246,"endOffset":5837,"count":0}],"isBlockCoverage":false},{"functionName":"getContextOptions","ranges":[{"startOffset":5839,"endOffset":6907,"count":0}],"isBlockCoverage":false},{"functionName":"isContext","ranges":[{"startOffset":6909,"endOffset":7091,"count":0}],"isBlockCoverage":false},{"functionName":"createContext","ranges":[{"startOffset":7126,"endOffset":8261,"count":0}],"isBlockCoverage":false},{"functionName":"createScript","ranges":[{"startOffset":8263,"endOffset":8339,"count":0}],"isBlockCoverage":false},{"functionName":"sigintHandlersWrap","ranges":[{"startOffset":8493,"endOffset":8939,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":8941,"endOffset":9338,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":9340,"endOffset":9692,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":9694,"endOffset":9880,"count":0}],"isBlockCoverage":false},{"functionName":"compileFunction","ranges":[{"startOffset":9882,"endOffset":11615,"count":0}],"isBlockCoverage":false},{"functionName":"measureMemory","ranges":[{"startOffset":11892,"endOffset":12454,"count":0}],"isBlockCoverage":false}]},{"scriptId":"59","url":"internal/modules/package_json_reader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":279,"endOffset":946,"count":50},{"startOffset":332,"endOffset":369,"count":13},{"startOffset":369,"endOffset":593,"count":37},{"startOffset":593,"endOffset":896,"count":20},{"startOffset":627,"endOffset":761,"count":1},{"startOffset":686,"endOffset":739,"count":0},{"startOffset":789,"endOffset":892,"count":0},{"startOffset":896,"endOffset":945,"count":37}],"isBlockCoverage":true}]},{"scriptId":"60","url":"internal/process/esm_loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2326,"count":1}],"isBlockCoverage":false},{"functionName":"exports.initializeImportMetaObject","ranges":[{"startOffset":405,"endOffset":701,"count":0}],"isBlockCoverage":false},{"functionName":"exports.importModuleDynamicallyCallback","ranges":[{"startOffset":746,"endOffset":1137,"count":44},{"startOffset":1081,"endOffset":1136,"count":0}],"isBlockCoverage":true},{"functionName":"initializeLoader","ranges":[{"startOffset":1202,"endOffset":1969,"count":1},{"startOffset":1388,"endOffset":1968,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1722,"endOffset":1963,"count":0}],"isBlockCoverage":true},{"functionName":"loadESM","ranges":[{"startOffset":1989,"endOffset":2324,"count":1},{"startOffset":2097,"endOffset":2322,"count":0}],"isBlockCoverage":true}]},{"scriptId":"61","url":"internal/modules/esm/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8625,"count":1}],"isBlockCoverage":false},{"functionName":"Loader","ranges":[{"startOffset":1416,"endOffset":3189,"count":1}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":3193,"endOffset":3816,"count":83},{"startOffset":3298,"endOffset":3337,"count":82},{"startOffset":3514,"endOffset":3617,"count":0},{"startOffset":3689,"endOffset":3796,"count":0}],"isBlockCoverage":true},{"functionName":"getFormat","ranges":[{"startOffset":3820,"endOffset":5128,"count":83},{"startOffset":3977,"endOffset":4084,"count":0},{"startOffset":4153,"endOffset":4410,"count":0},{"startOffset":4447,"endOffset":4562,"count":0},{"startOffset":4594,"endOffset":4622,"count":8},{"startOffset":4622,"endOffset":4666,"count":75},{"startOffset":4666,"endOffset":4835,"count":0},{"startOffset":4835,"endOffset":4927,"count":75},{"startOffset":4928,"endOffset":4977,"count":0},{"startOffset":4984,"endOffset":5104,"count":0},{"startOffset":5104,"endOffset":5127,"count":75}],"isBlockCoverage":true},{"functionName":"eval","ranges":[{"startOffset":5132,"endOffset":5807,"count":0}],"isBlockCoverage":false},{"functionName":"import","ranges":[{"startOffset":5811,"endOffset":5982,"count":45}],"isBlockCoverage":true},{"functionName":"hook","ranges":[{"startOffset":5986,"endOffset":6947,"count":0}],"isBlockCoverage":false},{"functionName":"runGlobalPreloadCode","ranges":[{"startOffset":6951,"endOffset":7755,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleJob","ranges":[{"startOffset":7759,"endOffset":8549,"count":83},{"startOffset":8046,"endOffset":8083,"count":0},{"startOffset":8117,"endOffset":8128,"count":52},{"startOffset":8128,"endOffset":8170,"count":31},{"startOffset":8170,"endOffset":8214,"count":0},{"startOffset":8214,"endOffset":8316,"count":31},{"startOffset":8316,"endOffset":8346,"count":1},{"startOffset":8347,"endOffset":8381,"count":1}],"isBlockCoverage":true}]},{"scriptId":"62","url":"internal/modules/esm/module_map.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":878,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":175,"endOffset":200,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":419,"endOffset":492,"count":83}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":495,"endOffset":771,"count":31},{"startOffset":585,"endOffset":621,"count":0},{"startOffset":623,"endOffset":693,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":774,"endOffset":847,"count":0}],"isBlockCoverage":false}]},{"scriptId":"63","url":"internal/modules/esm/module_job.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5778,"count":1}],"isBlockCoverage":false},{"functionName":"ModuleJob","ranges":[{"startOffset":832,"endOffset":2478,"count":31}],"isBlockCoverage":true},{"functionName":"link","ranges":[{"startOffset":1301,"endOffset":2105,"count":31}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1757,"endOffset":1984,"count":38}],"isBlockCoverage":true},{"functionName":"instantiate","ranges":[{"startOffset":2482,"endOffset":2627,"count":45},{"startOffset":2539,"endOffset":2593,"count":7}],"isBlockCoverage":true},{"functionName":"_instantiate","ranges":[{"startOffset":2631,"endOffset":5498,"count":7},{"startOffset":3105,"endOffset":3282,"count":0},{"startOffset":3339,"endOffset":5251,"count":0},{"startOffset":5298,"endOffset":5494,"count":39}],"isBlockCoverage":true},{"functionName":"addJobsToDependencyGraph","ranges":[{"startOffset":2730,"endOffset":3004,"count":46},{"startOffset":2791,"endOffset":2816,"count":7},{"startOffset":2816,"endOffset":3003,"count":39}],"isBlockCoverage":true},{"functionName":"run","ranges":[{"startOffset":5502,"endOffset":5698,"count":45}],"isBlockCoverage":true}]},{"scriptId":"64","url":"internal/modules/esm/resolve.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":28247,"count":1}],"isBlockCoverage":false},{"functionName":"getConditionsSet","ranges":[{"startOffset":1873,"endOffset":2225,"count":75},{"startOffset":1982,"endOffset":2190,"count":0}],"isBlockCoverage":true},{"functionName":"tryStatSync","ranges":[{"startOffset":2336,"endOffset":2441,"count":116},{"startOffset":2404,"endOffset":2439,"count":20}],"isBlockCoverage":true},{"functionName":"getPackageConfig","ranges":[{"startOffset":2443,"endOffset":3781,"count":261},{"startOffset":2571,"endOffset":2597,"count":240},{"startOffset":2597,"endOffset":2680,"count":21},{"startOffset":2680,"endOffset":2955,"count":13},{"startOffset":2955,"endOffset":3025,"count":8},{"startOffset":3025,"endOffset":3204,"count":0},{"startOffset":3204,"endOffset":3326,"count":8},{"startOffset":3326,"endOffset":3345,"count":0},{"startOffset":3347,"endOffset":3400,"count":8},{"startOffset":3400,"endOffset":3417,"count":0},{"startOffset":3417,"endOffset":3450,"count":8},{"startOffset":3450,"endOffset":3467,"count":0},{"startOffset":3467,"endOffset":3545,"count":8},{"startOffset":3545,"endOffset":3567,"count":6},{"startOffset":3569,"endOffset":3583,"count":6},{"startOffset":3583,"endOffset":3780,"count":8}],"isBlockCoverage":true},{"functionName":"getPackageScopeConfig","ranges":[{"startOffset":3783,"endOffset":4883,"count":84},{"startOffset":3901,"endOffset":4554,"count":250},{"startOffset":4041,"endOffset":4047,"count":0},{"startOffset":4206,"endOffset":4227,"count":84},{"startOffset":4227,"endOffset":4544,"count":166},{"startOffset":4544,"endOffset":4550,"count":0},{"startOffset":4554,"endOffset":4882,"count":0}],"isBlockCoverage":true},{"functionName":"fileExists","ranges":[{"startOffset":5139,"endOffset":5218,"count":13}],"isBlockCoverage":true},{"functionName":"legacyMainResolve","ranges":[{"startOffset":5220,"endOffset":6891,"count":9},{"startOffset":5532,"endOffset":5559,"count":8},{"startOffset":5559,"endOffset":5678,"count":1},{"startOffset":5678,"endOffset":5705,"count":0},{"startOffset":5705,"endOffset":5826,"count":1},{"startOffset":5826,"endOffset":5853,"count":0},{"startOffset":5853,"endOffset":5974,"count":1},{"startOffset":5974,"endOffset":6001,"count":0},{"startOffset":6001,"endOffset":6153,"count":1},{"startOffset":6153,"endOffset":6461,"count":0},{"startOffset":6485,"endOffset":6890,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExtensionsWithTryExactName","ranges":[{"startOffset":6893,"endOffset":7024,"count":0}],"isBlockCoverage":false},{"functionName":"resolveExtensions","ranges":[{"startOffset":7080,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"resolveIndex","ranges":[{"startOffset":7339,"endOffset":7426,"count":0}],"isBlockCoverage":false},{"functionName":"finalizeResolution","ranges":[{"startOffset":7464,"endOffset":8671,"count":75},{"startOffset":7577,"endOffset":7720,"count":0},{"startOffset":7834,"endOffset":8243,"count":0},{"startOffset":8308,"endOffset":8344,"count":0},{"startOffset":8381,"endOffset":8508,"count":0},{"startOffset":8535,"endOffset":8649,"count":0}],"isBlockCoverage":true},{"functionName":"throwImportNotDefined","ranges":[{"startOffset":8673,"endOffset":8888,"count":0}],"isBlockCoverage":false},{"functionName":"throwExportsNotFound","ranges":[{"startOffset":8890,"endOffset":9089,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidSubpath","ranges":[{"startOffset":9091,"endOffset":9441,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidPackageTarget","ranges":[{"startOffset":9443,"endOffset":9825,"count":0}],"isBlockCoverage":false},{"functionName":"resolvePackageTargetString","ranges":[{"startOffset":9926,"endOffset":11589,"count":3},{"startOffset":10065,"endOffset":10076,"count":0},{"startOffset":10077,"endOffset":10113,"count":0},{"startOffset":10119,"endOffset":10192,"count":0},{"startOffset":10242,"endOffset":10782,"count":0},{"startOffset":10869,"endOffset":10942,"count":0},{"startOffset":11165,"endOffset":11238,"count":0},{"startOffset":11278,"endOffset":11588,"count":0}],"isBlockCoverage":true},{"functionName":"isArrayIndex","ranges":[{"startOffset":11644,"endOffset":11784,"count":12},{"startOffset":11736,"endOffset":11781,"count":0}],"isBlockCoverage":true},{"functionName":"resolvePackageTarget","ranges":[{"startOffset":11786,"endOffset":13918,"count":8},{"startOffset":11968,"endOffset":12111,"count":3},{"startOffset":12111,"endOffset":13803,"count":5},{"startOffset":12143,"endOffset":12915,"count":0},{"startOffset":13068,"endOffset":13296,"count":12},{"startOffset":13126,"endOffset":13290,"count":0},{"startOffset":13339,"endOffset":13728,"count":9},{"startOffset":13420,"endOffset":13722,"count":5},{"startOffset":13680,"endOffset":13689,"count":0},{"startOffset":13728,"endOffset":13803,"count":0},{"startOffset":13803,"endOffset":13917,"count":0}],"isBlockCoverage":true},{"functionName":"isConditionalExportsMainSugar","ranges":[{"startOffset":13920,"endOffset":14855,"count":3},{"startOffset":14052,"endOffset":14064,"count":0},{"startOffset":14120,"endOffset":14133,"count":0},{"startOffset":14273,"endOffset":14824,"count":6},{"startOffset":14383,"endOffset":14820,"count":3},{"startOffset":14496,"endOffset":14820,"count":0}],"isBlockCoverage":true},{"functionName":"packageExportsResolve","ranges":[{"startOffset":15040,"endOffset":16923,"count":3},{"startOffset":15252,"endOffset":15279,"count":0},{"startOffset":15579,"endOffset":15638,"count":0},{"startOffset":15680,"endOffset":16922,"count":0}],"isBlockCoverage":true},{"functionName":"packageImportsResolve","ranges":[{"startOffset":16925,"endOffset":18921,"count":0}],"isBlockCoverage":false},{"functionName":"getPackageType","ranges":[{"startOffset":18923,"endOffset":19036,"count":73}],"isBlockCoverage":true},{"functionName":"packageResolve","ranges":[{"startOffset":19149,"endOffset":21981,"count":11},{"startOffset":19350,"endOffset":19578,"count":0},{"startOffset":19640,"endOffset":19692,"count":0},{"startOffset":19835,"endOffset":19952,"count":83},{"startOffset":19896,"endOffset":19948,"count":0},{"startOffset":19979,"endOffset":20098,"count":0},{"startOffset":20159,"endOffset":20212,"count":0},{"startOffset":20426,"endOffset":20472,"count":0},{"startOffset":20473,"endOffset":20506,"count":0},{"startOffset":20508,"endOffset":20641,"count":0},{"startOffset":20816,"endOffset":21772,"count":28},{"startOffset":20998,"endOffset":21275,"count":17},{"startOffset":21075,"endOffset":21112,"count":0},{"startOffset":21275,"endOffset":21421,"count":11},{"startOffset":21421,"endOffset":21454,"count":2},{"startOffset":21462,"endOffset":21581,"count":2},{"startOffset":21581,"endOffset":21682,"count":9},{"startOffset":21682,"endOffset":21772,"count":0},{"startOffset":21772,"endOffset":21980,"count":0}],"isBlockCoverage":true},{"functionName":"isBareSpecifier","ranges":[{"startOffset":21983,"endOffset":22093,"count":0}],"isBlockCoverage":false},{"functionName":"isRelativeSpecifier","ranges":[{"startOffset":22095,"endOffset":22366,"count":75},{"startOffset":22165,"endOffset":22348,"count":63},{"startOffset":22223,"endOffset":22235,"count":54},{"startOffset":22235,"endOffset":22344,"count":9},{"startOffset":22348,"endOffset":22365,"count":12}],"isBlockCoverage":true},{"functionName":"shouldBeTreatedAsRelativeOrAbsolutePath","ranges":[{"startOffset":22368,"endOffset":22551,"count":75},{"startOffset":22454,"endOffset":22467,"count":0},{"startOffset":22496,"endOffset":22508,"count":0}],"isBlockCoverage":true},{"functionName":"moduleResolve","ranges":[{"startOffset":22664,"endOffset":23235,"count":75},{"startOffset":22892,"endOffset":22938,"count":63},{"startOffset":22938,"endOffset":23188,"count":12},{"startOffset":22970,"endOffset":23048,"count":0},{"startOffset":23109,"endOffset":23184,"count":11}],"isBlockCoverage":true},{"functionName":"resolveAsCommonJS","ranges":[{"startOffset":23381,"endOffset":24789,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolve","ranges":[{"startOffset":24791,"endOffset":28097,"count":83},{"startOffset":24923,"endOffset":24942,"count":82},{"startOffset":24944,"endOffset":25547,"count":0},{"startOffset":25640,"endOffset":25694,"count":0},{"startOffset":25699,"endOffset":25707,"count":82},{"startOffset":25721,"endOffset":25751,"count":1},{"startOffset":25757,"endOffset":25783,"count":0},{"startOffset":25797,"endOffset":25827,"count":1},{"startOffset":25828,"endOffset":25858,"count":0},{"startOffset":25864,"endOffset":25913,"count":0},{"startOffset":25966,"endOffset":26022,"count":8},{"startOffset":26022,"endOffset":26039,"count":75},{"startOffset":26039,"endOffset":26087,"count":74},{"startOffset":26089,"endOffset":26177,"count":0},{"startOffset":26177,"endOffset":26235,"count":75},{"startOffset":26235,"endOffset":26762,"count":1},{"startOffset":26719,"endOffset":26758,"count":0},{"startOffset":26762,"endOffset":26891,"count":75},{"startOffset":26891,"endOffset":27695,"count":0},{"startOffset":27695,"endOffset":27710,"count":75},{"startOffset":27710,"endOffset":27733,"count":1},{"startOffset":27734,"endOffset":27753,"count":74},{"startOffset":27755,"endOffset":28066,"count":75},{"startOffset":27995,"endOffset":28000,"count":0},{"startOffset":28066,"endOffset":28096,"count":75}],"isBlockCoverage":true}]},{"scriptId":"65","url":"internal/modules/esm/get_format.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2496,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetFormat","ranges":[{"startOffset":1131,"endOffset":2450,"count":83},{"startOffset":1244,"endOffset":1283,"count":8},{"startOffset":1283,"endOffset":1350,"count":75},{"startOffset":1350,"endOffset":1760,"count":0},{"startOffset":1760,"endOffset":2421,"count":75},{"startOffset":1882,"endOffset":1970,"count":73},{"startOffset":1940,"endOffset":1950,"count":65},{"startOffset":1951,"endOffset":1963,"count":8},{"startOffset":1970,"endOffset":2023,"count":2},{"startOffset":2041,"endOffset":2378,"count":0},{"startOffset":2407,"endOffset":2414,"count":0},{"startOffset":2421,"endOffset":2449,"count":0}],"isBlockCoverage":true}]},{"scriptId":"66","url":"internal/modules/esm/get_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1307,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetSource","ranges":[{"startOffset":609,"endOffset":1261,"count":19},{"startOffset":810,"endOffset":1155,"count":0},{"startOffset":1180,"endOffset":1238,"count":0}],"isBlockCoverage":true}]},{"scriptId":"67","url":"internal/fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20020,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2272,"endOffset":2432,"count":0}],"isBlockCoverage":false},{"functionName":"FileHandle","ranges":[{"startOffset":2480,"endOffset":2657,"count":19},{"startOffset":2594,"endOffset":2598,"count":0}],"isBlockCoverage":true},{"functionName":"getAsyncId","ranges":[{"startOffset":2661,"endOffset":2718,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":2722,"endOffset":2758,"count":57}],"isBlockCoverage":true},{"functionName":"appendFile","ranges":[{"startOffset":2762,"endOffset":2844,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":2848,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":2908,"endOffset":2972,"count":0}],"isBlockCoverage":false},{"functionName":"datasync","ranges":[{"startOffset":2976,"endOffset":3028,"count":0}],"isBlockCoverage":false},{"functionName":"sync","ranges":[{"startOffset":3032,"endOffset":3076,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":3080,"endOffset":3189,"count":0}],"isBlockCoverage":false},{"functionName":"readv","ranges":[{"startOffset":3193,"endOffset":3274,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":3278,"endOffset":3345,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":3349,"endOffset":3409,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":3413,"endOffset":3477,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":3481,"endOffset":3555,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":3559,"endOffset":3670,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":3674,"endOffset":3757,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":3761,"endOffset":3842,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3846,"endOffset":4538,"count":19}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":3854,"endOffset":4538,"count":19},{"startOffset":3888,"endOffset":3926,"count":0},{"startOffset":3957,"endOffset":3998,"count":0},{"startOffset":4192,"endOffset":4501,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4128,"endOffset":4184,"count":19}],"isBlockCoverage":true},{"functionName":".Promise.finally.","ranges":[{"startOffset":4240,"endOffset":4346,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4356,"endOffset":4493,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4542,"endOffset":5011,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5015,"endOffset":5068,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5072,"endOffset":5159,"count":0}],"isBlockCoverage":false},{"functionName":"fsCall","ranges":[{"startOffset":5163,"endOffset":5781,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileHandle","ranges":[{"startOffset":5783,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"readFileHandle","ranges":[{"startOffset":6461,"endOffset":7737,"count":19},{"startOffset":6572,"endOffset":6589,"count":0},{"startOffset":6591,"endOffset":6667,"count":0},{"startOffset":6760,"endOffset":6777,"count":0},{"startOffset":6779,"endOffset":6855,"count":0},{"startOffset":6964,"endOffset":6989,"count":0},{"startOffset":7022,"endOffset":7060,"count":0},{"startOffset":7114,"endOffset":7141,"count":0},{"startOffset":7216,"endOffset":7567,"count":38},{"startOffset":7233,"endOffset":7250,"count":0},{"startOffset":7252,"endOffset":7332,"count":0},{"startOffset":7523,"endOffset":7563,"count":19},{"startOffset":7638,"endOffset":7661,"count":0},{"startOffset":7690,"endOffset":7725,"count":0}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":7890,"endOffset":8111,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":8113,"endOffset":8471,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":8591,"endOffset":8916,"count":19}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":8918,"endOffset":9972,"count":38},{"startOffset":9057,"endOffset":9339,"count":0},{"startOffset":9363,"endOffset":9384,"count":0},{"startOffset":9476,"endOffset":9513,"count":0},{"startOffset":9542,"endOffset":9672,"count":0},{"startOffset":9776,"endOffset":9790,"count":0},{"startOffset":9932,"endOffset":9936,"count":19}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":9974,"endOffset":10294,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":10296,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":11219,"endOffset":11551,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":11553,"endOffset":11859,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":11861,"endOffset":12004,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":12006,"endOffset":12165,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":12167,"endOffset":12364,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":12366,"endOffset":12629,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":12631,"endOffset":12720,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":12722,"endOffset":12803,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":12805,"endOffset":13337,"count":7},{"startOffset":12909,"endOffset":12947,"count":0},{"startOffset":13012,"endOffset":13017,"count":0},{"startOffset":13094,"endOffset":13168,"count":0}],"isBlockCoverage":true},{"functionName":"readdir","ranges":[{"startOffset":13339,"endOffset":13791,"count":0}],"isBlockCoverage":false},{"functionName":"readlink","ranges":[{"startOffset":13793,"endOffset":14036,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":14038,"endOffset":14451,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":14453,"endOffset":14631,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":14633,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":14905,"endOffset":15172,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":15174,"endOffset":15497,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":15499,"endOffset":15637,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":15639,"endOffset":15772,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":15774,"endOffset":15960,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":15962,"endOffset":16200,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":16202,"endOffset":16478,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":16480,"endOffset":16677,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":16679,"endOffset":16952,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":16954,"endOffset":17226,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":17228,"endOffset":17427,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":17429,"endOffset":17706,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":17708,"endOffset":17885,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":17887,"endOffset":18217,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":18219,"endOffset":18938,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":18940,"endOffset":19181,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":19183,"endOffset":19613,"count":19},{"startOffset":19300,"endOffset":19306,"count":0},{"startOffset":19347,"endOffset":19384,"count":0},{"startOffset":19417,"endOffset":19493,"count":0}],"isBlockCoverage":true}]},{"scriptId":"68","url":"internal/fs/rimraf.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7039,"count":1}],"isBlockCoverage":false},{"functionName":"rimraf","ranges":[{"startOffset":1137,"endOffset":1597,"count":0}],"isBlockCoverage":false},{"functionName":"_rimraf","ranges":[{"startOffset":1600,"endOffset":2458,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERM","ranges":[{"startOffset":2461,"endOffset":2896,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdir","ranges":[{"startOffset":2899,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"_rmchildren","ranges":[{"startOffset":3200,"endOffset":3872,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafPromises","ranges":[{"startOffset":3875,"endOffset":4073,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafSync","ranges":[{"startOffset":4076,"endOffset":4781,"count":0}],"isBlockCoverage":false},{"functionName":"_unlinkSync","ranges":[{"startOffset":4784,"endOffset":5267,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdirSync","ranges":[{"startOffset":5270,"endOffset":6540,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERMSync","ranges":[{"startOffset":6543,"endOffset":6979,"count":0}],"isBlockCoverage":false}]},{"scriptId":"69","url":"internal/modules/esm/transform_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":215,"count":1}],"isBlockCoverage":false},{"functionName":"defaultTransformSource","ranges":[{"startOffset":15,"endOffset":157,"count":19}],"isBlockCoverage":true}]},{"scriptId":"70","url":"internal/modules/esm/translators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12048,"count":1}],"isBlockCoverage":false},{"functionName":"lazyTypes","ranges":[{"startOffset":416,"endOffset":528,"count":38},{"startOffset":462,"endOffset":476,"count":37},{"startOffset":476,"endOffset":527,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1202,"endOffset":1227,"count":1}],"isBlockCoverage":true},{"functionName":"initCJSParse","ranges":[{"startOffset":1860,"endOffset":2152,"count":2},{"startOffset":1934,"endOffset":2009,"count":0}],"isBlockCoverage":true},{"functionName":"assertBufferSource","ranges":[{"startOffset":2286,"endOffset":2706,"count":38},{"startOffset":2363,"endOffset":2390,"count":19},{"startOffset":2392,"endOffset":2409,"count":0},{"startOffset":2503,"endOffset":2528,"count":0},{"startOffset":2547,"endOffset":2626,"count":0},{"startOffset":2627,"endOffset":2631,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":2708,"endOffset":2926,"count":19},{"startOffset":2767,"endOffset":2779,"count":0},{"startOffset":2863,"endOffset":2882,"count":1},{"startOffset":2883,"endOffset":2892,"count":18}],"isBlockCoverage":true},{"functionName":"errPath","ranges":[{"startOffset":2928,"endOffset":3073,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":3075,"endOffset":3189,"count":44}],"isBlockCoverage":true},{"functionName":"createImportMetaResolve","ranges":[{"startOffset":3191,"endOffset":3539,"count":0}],"isBlockCoverage":false},{"functionName":"initializeImportMeta","ranges":[{"startOffset":3541,"endOffset":3711,"count":0}],"isBlockCoverage":false},{"functionName":"moduleStrategy","ranges":[{"startOffset":3793,"endOffset":4374,"count":19}],"isBlockCoverage":true},{"functionName":"enrichCJSError","ranges":[{"startOffset":4378,"endOffset":5277,"count":0}],"isBlockCoverage":false},{"functionName":"commonjsStrategy","ranges":[{"startOffset":5435,"endOffset":6741,"count":6},{"startOffset":5609,"endOffset":5672,"count":0},{"startOffset":5691,"endOffset":5712,"count":2},{"startOffset":5837,"endOffset":5859,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5950,"endOffset":6737,"count":6},{"startOffset":6069,"endOffset":6183,"count":0},{"startOffset":6275,"endOffset":6344,"count":0},{"startOffset":6394,"endOffset":6693,"count":14},{"startOffset":6505,"endOffset":6514,"count":0},{"startOffset":6638,"endOffset":6646,"count":0}],"isBlockCoverage":true},{"functionName":"cjsPreparseModuleExports","ranges":[{"startOffset":6745,"endOffset":8189,"count":6},{"startOffset":6848,"endOffset":6973,"count":0},{"startOffset":7272,"endOffset":7280,"count":0},{"startOffset":7362,"endOffset":7367,"count":0},{"startOffset":7375,"endOffset":7424,"count":0},{"startOffset":7585,"endOffset":7682,"count":0},{"startOffset":7719,"endOffset":8152,"count":0}],"isBlockCoverage":true},{"functionName":"builtinStrategy","ranges":[{"startOffset":8313,"endOffset":8701,"count":6},{"startOffset":8574,"endOffset":8626,"count":0}],"isBlockCoverage":true},{"functionName":"jsonStrategy","ranges":[{"startOffset":8765,"endOffset":10884,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10950,"endOffset":12045,"count":0}],"isBlockCoverage":false}]},{"scriptId":"71","url":"internal/modules/esm/create_dynamic_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1756,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":190,"endOffset":215,"count":0}],"isBlockCoverage":false},{"functionName":"createImport","ranges":[{"startOffset":219,"endOffset":409,"count":0}],"isBlockCoverage":false},{"functionName":"createExport","ranges":[{"startOffset":411,"endOffset":612,"count":0}],"isBlockCoverage":false},{"functionName":"createDynamicModule","ranges":[{"startOffset":642,"endOffset":1715,"count":0}],"isBlockCoverage":false}]},{"scriptId":"72","url":"internal/vm/module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12877,"count":1}],"isBlockCoverage":false},{"functionName":"Module","ranges":[{"startOffset":1618,"endOffset":3804,"count":0}],"isBlockCoverage":false},{"functionName":"get identifier","ranges":[{"startOffset":3808,"endOffset":3945,"count":0}],"isBlockCoverage":false},{"functionName":"get context","ranges":[{"startOffset":3949,"endOffset":4082,"count":0}],"isBlockCoverage":false},{"functionName":"get namespace","ranges":[{"startOffset":4086,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":4367,"endOffset":4520,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":4524,"endOffset":4774,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":4778,"endOffset":5257,"count":0}],"isBlockCoverage":false},{"functionName":"evaluate","ranges":[{"startOffset":5261,"endOffset":6213,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6217,"endOffset":6945,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":7092,"endOffset":7128,"count":0}],"isBlockCoverage":false},{"functionName":"SourceTextModule","ranges":[{"startOffset":7133,"endOffset":9559,"count":0}],"isBlockCoverage":false},{"functionName":"get dependencySpecifiers","ranges":[{"startOffset":9563,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":9866,"endOffset":10135,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":10139,"endOffset":10335,"count":0}],"isBlockCoverage":false},{"functionName":"createCachedData","ranges":[{"startOffset":10339,"endOffset":10601,"count":0}],"isBlockCoverage":false},{"functionName":"SyntheticModule","ranges":[{"startOffset":10646,"endOffset":11943,"count":0}],"isBlockCoverage":false},{"functionName":"setExport","ranges":[{"startOffset":11947,"endOffset":12249,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamicallyWrap","ranges":[{"startOffset":12253,"endOffset":12715,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleFromWrap","ranges":[{"startOffset":12837,"endOffset":12872,"count":44}],"isBlockCoverage":true}]},{"scriptId":"73","url":"internal/modules/run_main.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2582,"count":1}],"isBlockCoverage":false},{"functionName":"resolveMainPath","ranges":[{"startOffset":220,"endOffset":658,"count":1},{"startOffset":487,"endOffset":494,"count":0}],"isBlockCoverage":true},{"functionName":"shouldUseESMLoader","ranges":[{"startOffset":660,"endOffset":1215,"count":1},{"startOffset":784,"endOffset":796,"count":0},{"startOffset":944,"endOffset":956,"count":0},{"startOffset":1051,"endOffset":1063,"count":0},{"startOffset":1114,"endOffset":1127,"count":0}],"isBlockCoverage":true},{"functionName":"runMainESM","ranges":[{"startOffset":1217,"endOffset":1552,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1400,"endOffset":1547,"count":1},{"startOffset":1497,"endOffset":1507,"count":0}],"isBlockCoverage":true},{"functionName":"handleMainPromise","ranges":[{"startOffset":1554,"endOffset":1991,"count":1}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":1803,"endOffset":1896,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1953,"endOffset":1987,"count":1}],"isBlockCoverage":true},{"functionName":"executeUserEntryPoint","ranges":[{"startOffset":2177,"endOffset":2512,"count":1},{"startOffset":2387,"endOffset":2394,"count":0},{"startOffset":2400,"endOffset":2510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"74","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3159,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":212,"endOffset":913,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":949,"endOffset":1653,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1686,"endOffset":3156,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2730,"endOffset":2762,"count":3},{"startOffset":2754,"endOffset":2757,"count":2},{"startOffset":2758,"endOffset":2762,"count":1}],"isBlockCoverage":true}]},{"scriptId":"75","url":"internal/deps/cjs-module-lexer/dist/lexer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":33943,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":231,"endOffset":903,"count":6},{"startOffset":261,"endOffset":296,"count":0},{"startOffset":337,"endOffset":352,"count":0},{"startOffset":388,"endOffset":423,"count":1},{"startOffset":447,"endOffset":449,"count":0},{"startOffset":521,"endOffset":668,"count":0},{"startOffset":716,"endOffset":748,"count":0},{"startOffset":761,"endOffset":791,"count":0},{"startOffset":804,"endOffset":863,"count":14}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":903,"endOffset":1004,"count":0}],"isBlockCoverage":false},{"functionName":"C","ranges":[{"startOffset":1004,"endOffset":1078,"count":6},{"startOffset":1055,"endOffset":1077,"count":28254}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":1084,"endOffset":33943,"count":2},{"startOffset":1108,"endOffset":33942,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1114,"endOffset":33938,"count":1},{"startOffset":33782,"endOffset":33851,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":33832,"endOffset":33850,"count":0}],"isBlockCoverage":false}]},{"scriptId":"76","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1},{"startOffset":473,"endOffset":550,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":508,"endOffset":546,"count":0}],"isBlockCoverage":false}]},{"scriptId":"77","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/helpers/createTestServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1096,"count":1}],"isBlockCoverage":true},{"functionName":"getNewPort","ranges":[{"startOffset":343,"endOffset":410,"count":7}],"isBlockCoverage":true},{"functionName":"createTestServers","ranges":[{"startOffset":413,"endOffset":1060,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":559,"endOffset":932,"count":7}],"isBlockCoverage":true},{"functionName":"servers.close","ranges":[{"startOffset":958,"endOffset":1038,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1007,"endOffset":1031,"count":7}],"isBlockCoverage":true}]},{"scriptId":"78","url":"internal/fs/streams.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"ReadStream","ranges":[{"startOffset":702,"endOffset":2789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2928,"endOffset":2963,"count":0}],"isBlockCoverage":false},{"functionName":"_openReadFs","ranges":[{"startOffset":3063,"endOffset":3544,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._read","ranges":[{"startOffset":3575,"endOffset":4888,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._destroy","ranges":[{"startOffset":4923,"endOffset":5210,"count":0}],"isBlockCoverage":false},{"functionName":"closeFsStream","ranges":[{"startOffset":5213,"endOffset":5369,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.close","ranges":[{"startOffset":5400,"endOffset":5486,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5547,"endOffset":5581,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":5609,"endOffset":7859,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._final","ranges":[{"startOffset":8002,"endOffset":8159,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":8192,"endOffset":8228,"count":0}],"isBlockCoverage":false},{"functionName":"_openWriteFs","ranges":[{"startOffset":8331,"endOffset":8764,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._write","ranges":[{"startOffset":8798,"endOffset":9466,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._writev","ranges":[{"startOffset":9502,"endOffset":10392,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.close","ranges":[{"startOffset":10490,"endOffset":10872,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":11035,"endOffset":11069,"count":0}],"isBlockCoverage":false}]},{"scriptId":"79","url":"stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2187,"count":1}],"isBlockCoverage":false},{"functionName":"_uint8ArrayToBuffer","ranges":[{"startOffset":1978,"endOffset":2185,"count":0}],"isBlockCoverage":false}]},{"scriptId":"80","url":"internal/streams/pipeline.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7631,"count":1}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":543,"endOffset":1935,"count":0}],"isBlockCoverage":false},{"functionName":"popCallback","ranges":[{"startOffset":1937,"endOffset":2308,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":2392,"endOffset":2473,"count":0}],"isBlockCoverage":false},{"functionName":"isStream","ranges":[{"startOffset":2475,"endOffset":2546,"count":0}],"isBlockCoverage":false},{"functionName":"isIterable","ranges":[{"startOffset":2548,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"makeAsyncIterable","ranges":[{"startOffset":2873,"endOffset":3149,"count":0}],"isBlockCoverage":false},{"functionName":"fromReadable","ranges":[{"startOffset":3151,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"pump","ranges":[{"startOffset":3317,"endOffset":3794,"count":0}],"isBlockCoverage":false},{"functionName":"pipeline","ranges":[{"startOffset":3796,"endOffset":7602,"count":0}],"isBlockCoverage":false}]},{"scriptId":"81","url":"internal/streams/destroy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3954,"count":1}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":123,"endOffset":1394,"count":155},{"startOffset":227,"endOffset":241,"count":120},{"startOffset":243,"endOffset":264,"count":125},{"startOffset":266,"endOffset":343,"count":30},{"startOffset":302,"endOffset":321,"count":0},{"startOffset":343,"endOffset":356,"count":125},{"startOffset":356,"endOffset":576,"count":0},{"startOffset":576,"endOffset":735,"count":125},{"startOffset":735,"endOffset":764,"count":90},{"startOffset":764,"endOffset":832,"count":125}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":834,"endOffset":1374,"count":125},{"startOffset":858,"endOffset":1096,"count":0},{"startOffset":1109,"endOffset":1139,"count":90},{"startOffset":1217,"endOffset":1239,"count":0},{"startOffset":1254,"endOffset":1314,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorCloseNT","ranges":[{"startOffset":1396,"endOffset":1483,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":1485,"endOffset":1703,"count":125},{"startOffset":1633,"endOffset":1647,"count":90},{"startOffset":1672,"endOffset":1701,"count":35}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":1705,"endOffset":1992,"count":0}],"isBlockCoverage":false},{"functionName":"undestroy","ranges":[{"startOffset":1994,"endOffset":2557,"count":92}],"isBlockCoverage":true},{"functionName":"errorOrDestroy","ranges":[{"startOffset":2559,"endOffset":3458,"count":0}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":3460,"endOffset":3565,"count":0}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":3600,"endOffset":3876,"count":0}],"isBlockCoverage":false}]},{"scriptId":"82","url":"internal/streams/end-of-stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5791,"count":1}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":280,"endOffset":375,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":377,"endOffset":535,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":537,"endOffset":695,"count":0}],"isBlockCoverage":false},{"functionName":"isWritableFinished","ranges":[{"startOffset":697,"endOffset":934,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":936,"endOffset":953,"count":0}],"isBlockCoverage":false},{"functionName":"isReadableEnded","ranges":[{"startOffset":955,"endOffset":1188,"count":0}],"isBlockCoverage":false},{"functionName":"eos","ranges":[{"startOffset":1190,"endOffset":5767,"count":0}],"isBlockCoverage":false}]},{"scriptId":"83","url":"internal/streams/legacy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2081,"count":1}],"isBlockCoverage":false},{"functionName":"Stream","ranges":[{"startOffset":96,"endOffset":144,"count":219}],"isBlockCoverage":true},{"functionName":"Stream.pipe","ranges":[{"startOffset":258,"endOffset":2053,"count":0}],"isBlockCoverage":false}]},{"scriptId":"84","url":"internal/streams/readable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":40444,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1596,"endOffset":1621,"count":1}],"isBlockCoverage":true},{"functionName":"nop","ranges":[{"startOffset":2218,"endOffset":2235,"count":0}],"isBlockCoverage":false},{"functionName":"prependListener","ranges":[{"startOffset":2278,"endOffset":3085,"count":60},{"startOffset":2537,"endOffset":2900,"count":0},{"startOffset":2906,"endOffset":3083,"count":0}],"isBlockCoverage":true},{"functionName":"ReadableState","ranges":[{"startOffset":3087,"endOffset":6664,"count":127},{"startOffset":3486,"endOffset":3529,"count":0},{"startOffset":3729,"endOffset":3814,"count":92},{"startOffset":4062,"endOffset":4098,"count":0},{"startOffset":6476,"endOffset":6662,"count":0}],"isBlockCoverage":true},{"functionName":"Readable","ranges":[{"startOffset":6667,"endOffset":7237,"count":127},{"startOffset":6735,"endOffset":6764,"count":0},{"startOffset":7087,"endOffset":7113,"count":0},{"startOffset":7168,"endOffset":7200,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._destroy","ranges":[{"startOffset":7374,"endOffset":7406,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":7457,"endOffset":7495,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.push","ranges":[{"startOffset":7724,"endOffset":7810,"count":105}],"isBlockCoverage":true},{"functionName":"Readable.unshift","ranges":[{"startOffset":7906,"endOffset":7991,"count":0}],"isBlockCoverage":false},{"functionName":"readableAddChunk","ranges":[{"startOffset":7994,"endOffset":10247,"count":105},{"startOffset":8171,"endOffset":8986,"count":102},{"startOffset":8208,"endOffset":8672,"count":0},{"startOffset":8707,"endOffset":8735,"count":72},{"startOffset":8735,"endOffset":8982,"count":30},{"startOffset":8774,"endOffset":8851,"count":0},{"startOffset":8876,"endOffset":8982,"count":0},{"startOffset":8999,"endOffset":9037,"count":0},{"startOffset":9063,"endOffset":9126,"count":30},{"startOffset":9126,"endOffset":9963,"count":75},{"startOffset":9153,"endOffset":9183,"count":72},{"startOffset":9207,"endOffset":9373,"count":0},{"startOffset":9396,"endOffset":9466,"count":0},{"startOffset":9493,"endOffset":9520,"count":0},{"startOffset":9581,"endOffset":9593,"count":0},{"startOffset":9595,"endOffset":9802,"count":0},{"startOffset":9874,"endOffset":9963,"count":0},{"startOffset":10179,"endOffset":10244,"count":75},{"startOffset":10222,"endOffset":10243,"count":0}],"isBlockCoverage":true},{"functionName":"addChunk","ranges":[{"startOffset":10249,"endOffset":10949,"count":75},{"startOffset":10530,"endOffset":10576,"count":0},{"startOffset":10663,"endOffset":10915,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.isPaused","ranges":[{"startOffset":10981,"endOffset":11093,"count":30}],"isBlockCoverage":true},{"functionName":"Readable.setEncoding","ranges":[{"startOffset":11157,"endOffset":11801,"count":0}],"isBlockCoverage":false},{"functionName":"computeNewHighWaterMark","ranges":[{"startOffset":11862,"endOffset":12227,"count":0}],"isBlockCoverage":false},{"functionName":"howMuchToRead","ranges":[{"startOffset":12340,"endOffset":12734,"count":385},{"startOffset":12388,"endOffset":12426,"count":125},{"startOffset":12432,"endOffset":12441,"count":290},{"startOffset":12441,"endOffset":12470,"count":95},{"startOffset":12470,"endOffset":12479,"count":35},{"startOffset":12479,"endOffset":12652,"count":60},{"startOffset":12588,"endOffset":12623,"count":0},{"startOffset":12652,"endOffset":12727,"count":0},{"startOffset":12728,"endOffset":12731,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.read","ranges":[{"startOffset":12831,"endOffset":17061,"count":385},{"startOffset":13021,"endOffset":13039,"count":125},{"startOffset":13039,"endOffset":13106,"count":260},{"startOffset":13070,"endOffset":13106,"count":0},{"startOffset":13271,"endOffset":13320,"count":0},{"startOffset":13341,"endOffset":13371,"count":125},{"startOffset":13557,"endOffset":13584,"count":260},{"startOffset":13585,"endOffset":13718,"count":105},{"startOffset":13668,"endOffset":13694,"count":0},{"startOffset":13720,"endOffset":13905,"count":0},{"startOffset":14014,"endOffset":14028,"count":350},{"startOffset":14030,"endOffset":14105,"count":60},{"startOffset":14105,"endOffset":15381,"count":325},{"startOffset":15381,"endOffset":15422,"count":0},{"startOffset":15424,"endOffset":15692,"count":325},{"startOffset":15693,"endOffset":15711,"count":200},{"startOffset":15713,"endOffset":15777,"count":125},{"startOffset":15777,"endOffset":16310,"count":200},{"startOffset":16274,"endOffset":16306,"count":0},{"startOffset":16310,"endOffset":16340,"count":325},{"startOffset":16340,"endOffset":16365,"count":35},{"startOffset":16365,"endOffset":16388,"count":290},{"startOffset":16388,"endOffset":16488,"count":325},{"startOffset":16488,"endOffset":16651,"count":0},{"startOffset":16651,"endOffset":16995,"count":325},{"startOffset":16951,"endOffset":16965,"count":95},{"startOffset":16973,"endOffset":16991,"count":0},{"startOffset":16995,"endOffset":17021,"count":325},{"startOffset":17021,"endOffset":17044,"count":0},{"startOffset":17044,"endOffset":17060,"count":325}],"isBlockCoverage":true},{"functionName":"onEofChunk","ranges":[{"startOffset":17064,"endOffset":17884,"count":30},{"startOffset":17143,"endOffset":17150,"count":0},{"startOffset":17172,"endOffset":17346,"count":0},{"startOffset":17388,"endOffset":17590,"count":0}],"isBlockCoverage":true},{"functionName":"emitReadable","ranges":[{"startOffset":18085,"endOffset":18412,"count":0}],"isBlockCoverage":false},{"functionName":"emitReadable_","ranges":[{"startOffset":18414,"endOffset":19050,"count":30},{"startOffset":18969,"endOffset":18988,"count":0},{"startOffset":18989,"endOffset":19031,"count":0}],"isBlockCoverage":true},{"functionName":"maybeReadMore","ranges":[{"startOffset":19400,"endOffset":19556,"count":75}],"isBlockCoverage":true},{"functionName":"maybeReadMore_","ranges":[{"startOffset":19558,"endOffset":21350,"count":75},{"startOffset":21088,"endOffset":21138,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._read","ranges":[{"startOffset":21621,"endOffset":21687,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.pipe","ranges":[{"startOffset":21716,"endOffset":26193,"count":60},{"startOffset":21833,"endOffset":22029,"count":0},{"startOffset":22149,"endOffset":22174,"count":0},{"startOffset":22290,"endOffset":22298,"count":0},{"startOffset":22328,"endOffset":22352,"count":0},{"startOffset":26049,"endOffset":26100,"count":0},{"startOffset":26126,"endOffset":26175,"count":0}],"isBlockCoverage":true},{"functionName":"onunpipe","ranges":[{"startOffset":22422,"endOffset":22648,"count":0}],"isBlockCoverage":false},{"functionName":"onend","ranges":[{"startOffset":22652,"endOffset":22710,"count":30}],"isBlockCoverage":true},{"functionName":"cleanup","ranges":[{"startOffset":22755,"endOffset":23647,"count":0}],"isBlockCoverage":false},{"functionName":"pause","ranges":[{"startOffset":23651,"endOffset":24648,"count":0}],"isBlockCoverage":false},{"functionName":"ondata","ranges":[{"startOffset":24678,"endOffset":24838,"count":72},{"startOffset":24812,"endOffset":24834,"count":0}],"isBlockCoverage":true},{"functionName":"onerror","ranges":[{"startOffset":24960,"endOffset":25375,"count":0}],"isBlockCoverage":false},{"functionName":"onclose","ranges":[{"startOffset":25555,"endOffset":25638,"count":0}],"isBlockCoverage":false},{"functionName":"onfinish","ranges":[{"startOffset":25672,"endOffset":25777,"count":0}],"isBlockCoverage":false},{"functionName":"unpipe","ranges":[{"startOffset":25814,"endOffset":25880,"count":0}],"isBlockCoverage":false},{"functionName":"pipeOnDrain","ranges":[{"startOffset":26196,"endOffset":26870,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.unpipe","ranges":[{"startOffset":26901,"endOffset":27570,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.on","ranges":[{"startOffset":27696,"endOffset":28603,"count":1042},{"startOffset":27828,"endOffset":28160,"count":95},{"startOffset":28160,"endOffset":28586,"count":947},{"startOffset":28189,"endOffset":28586,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeListener","ranges":[{"startOffset":28698,"endOffset":29212,"count":334},{"startOffset":28809,"endOffset":29195,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeAllListeners","ranges":[{"startOffset":29315,"endOffset":29853,"count":0}],"isBlockCoverage":false},{"functionName":"updateReadableListening","ranges":[{"startOffset":29856,"endOffset":30366,"count":0}],"isBlockCoverage":false},{"functionName":"nReadingNextTick","ranges":[{"startOffset":30368,"endOffset":30456,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.resume","ranges":[{"startOffset":30610,"endOffset":30935,"count":95}],"isBlockCoverage":true},{"functionName":"resume","ranges":[{"startOffset":30938,"endOffset":31088,"count":95}],"isBlockCoverage":true},{"functionName":"resume_","ranges":[{"startOffset":31090,"endOffset":31341,"count":95},{"startOffset":31180,"endOffset":31205,"count":35},{"startOffset":31324,"endOffset":31339,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.pause","ranges":[{"startOffset":31370,"endOffset":31637,"count":0}],"isBlockCoverage":false},{"functionName":"flow","ranges":[{"startOffset":31640,"endOffset":31787,"count":125},{"startOffset":31784,"endOffset":31785,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.wrap","ranges":[{"startOffset":31971,"endOffset":33786,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":33831,"endOffset":34212,"count":0}],"isBlockCoverage":false},{"functionName":"createAsyncIterator","ranges":[{"startOffset":34215,"endOffset":35508,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":35706,"endOffset":36095,"count":60}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":36101,"endOffset":36231,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36297,"endOffset":36363,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36422,"endOffset":36504,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36564,"endOffset":36624,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36635,"endOffset":36744,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36798,"endOffset":36852,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36910,"endOffset":36998,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37054,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37188,"endOffset":37322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":37328,"endOffset":37617,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37670,"endOffset":37758,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37877,"endOffset":37922,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37980,"endOffset":38031,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":38037,"endOffset":38086,"count":0}],"isBlockCoverage":false},{"functionName":"fromList","ranges":[{"startOffset":38390,"endOffset":38952,"count":35},{"startOffset":38485,"endOffset":38951,"count":0}],"isBlockCoverage":true},{"functionName":"endReadable","ranges":[{"startOffset":38954,"endOffset":39175,"count":60}],"isBlockCoverage":true},{"functionName":"endReadableNT","ranges":[{"startOffset":39177,"endOffset":40109,"count":60},{"startOffset":39400,"endOffset":39421,"count":30},{"startOffset":39423,"endOffset":40107,"count":30},{"startOffset":39503,"endOffset":39536,"count":0},{"startOffset":39538,"endOffset":39599,"count":0},{"startOffset":39628,"endOffset":40103,"count":0}],"isBlockCoverage":true},{"functionName":"endWritableNT","ranges":[{"startOffset":40111,"endOffset":40278,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.from","ranges":[{"startOffset":40296,"endOffset":40442,"count":0}],"isBlockCoverage":false}]},{"scriptId":"85","url":"internal/streams/buffer_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3798,"count":1}],"isBlockCoverage":false},{"functionName":"BufferList","ranges":[{"startOffset":204,"endOffset":288,"count":127}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":292,"endOffset":479,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":483,"endOffset":641,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":645,"endOffset":872,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":876,"endOffset":944,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":948,"endOffset":1119,"count":0}],"isBlockCoverage":false},{"functionName":"concat","ranges":[{"startOffset":1123,"endOffset":1386,"count":0}],"isBlockCoverage":false},{"functionName":"consume","ranges":[{"startOffset":1470,"endOffset":1924,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":1928,"endOffset":1968,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":1972,"endOffset":2068,"count":0}],"isBlockCoverage":false},{"functionName":"_getString","ranges":[{"startOffset":2143,"endOffset":2738,"count":0}],"isBlockCoverage":false},{"functionName":"_getBuffer","ranges":[{"startOffset":2808,"endOffset":3518,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":3599,"endOffset":3794,"count":0}],"isBlockCoverage":false}]},{"scriptId":"86","url":"internal/streams/state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":881,"count":1}],"isBlockCoverage":false},{"functionName":"highWaterMarkFrom","ranges":[{"startOffset":142,"endOffset":309,"count":219},{"startOffset":240,"endOffset":263,"count":35},{"startOffset":264,"endOffset":306,"count":184},{"startOffset":300,"endOffset":306,"count":0}],"isBlockCoverage":true},{"functionName":"getDefaultHighWaterMark","ranges":[{"startOffset":311,"endOffset":397,"count":184},{"startOffset":378,"endOffset":382,"count":0}],"isBlockCoverage":true},{"functionName":"getHighWaterMark","ranges":[{"startOffset":399,"endOffset":811,"count":219},{"startOffset":546,"endOffset":737,"count":35},{"startOffset":590,"endOffset":706,"count":0},{"startOffset":737,"endOffset":810,"count":184}],"isBlockCoverage":true}]},{"scriptId":"87","url":"internal/streams/writable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":22800,"count":1}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":2223,"endOffset":2240,"count":75}],"isBlockCoverage":true},{"functionName":"WritableState","ranges":[{"startOffset":2242,"endOffset":6406,"count":92},{"startOffset":2637,"endOffset":2680,"count":0},{"startOffset":3231,"endOffset":3267,"count":0}],"isBlockCoverage":true},{"functionName":"resetBuffer","ranges":[{"startOffset":6408,"endOffset":6540,"count":96}],"isBlockCoverage":true},{"functionName":"getBuffer","ranges":[{"startOffset":6578,"endOffset":6652,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6729,"endOffset":6794,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":7121,"endOffset":7335,"count":0}],"isBlockCoverage":false},{"functionName":"realHasInstance","ranges":[{"startOffset":7371,"endOffset":7428,"count":0}],"isBlockCoverage":false},{"functionName":"Writable","ranges":[{"startOffset":7433,"endOffset":8605,"count":92},{"startOffset":8074,"endOffset":8114,"count":0},{"startOffset":8120,"endOffset":8149,"count":0},{"startOffset":8288,"endOffset":8316,"count":0},{"startOffset":8370,"endOffset":8400,"count":0},{"startOffset":8455,"endOffset":8487,"count":0},{"startOffset":8540,"endOffset":8568,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.pipe","ranges":[{"startOffset":8701,"endOffset":8769,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.write","ranges":[{"startOffset":8799,"endOffset":10008,"count":111},{"startOffset":8907,"endOffset":8969,"count":34},{"startOffset":8969,"endOffset":9089,"count":77},{"startOffset":9113,"endOffset":9158,"count":0},{"startOffset":9267,"endOffset":9351,"count":0},{"startOffset":9357,"endOffset":9660,"count":0},{"startOffset":9697,"endOffset":9746,"count":0},{"startOffset":9773,"endOffset":9823,"count":0},{"startOffset":9836,"endOffset":9927,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.cork","ranges":[{"startOffset":10037,"endOffset":10083,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.uncork","ranges":[{"startOffset":10114,"endOffset":10269,"count":0}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":10312,"endOffset":10623,"count":0}],"isBlockCoverage":false},{"functionName":"writeOrBuffer","ranges":[{"startOffset":10813,"endOffset":11804,"count":111},{"startOffset":10911,"endOffset":10914,"count":0},{"startOffset":11133,"endOffset":11156,"count":0},{"startOffset":11178,"endOffset":11193,"count":105},{"startOffset":11194,"endOffset":11210,"count":105},{"startOffset":11212,"endOffset":11444,"count":6},{"startOffset":11295,"endOffset":11319,"count":4},{"startOffset":11321,"endOffset":11360,"count":4},{"startOffset":11404,"endOffset":11440,"count":0},{"startOffset":11444,"endOffset":11635,"count":105}],"isBlockCoverage":true},{"functionName":"doWrite","ranges":[{"startOffset":11806,"endOffset":12184,"count":4},{"startOffset":11992,"endOffset":12041,"count":0},{"startOffset":12065,"endOffset":12160,"count":2}],"isBlockCoverage":true},{"functionName":"onwriteError","ranges":[{"startOffset":12186,"endOffset":12606,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":12608,"endOffset":14202,"count":109},{"startOffset":12766,"endOffset":12840,"count":0},{"startOffset":12958,"endOffset":13469,"count":0},{"startOffset":13530,"endOffset":13571,"count":4},{"startOffset":13587,"endOffset":14143,"count":37},{"startOffset":13886,"endOffset":13933,"count":31},{"startOffset":13935,"endOffset":13986,"count":29},{"startOffset":13986,"endOffset":14137,"count":8},{"startOffset":14143,"endOffset":14196,"count":72}],"isBlockCoverage":true},{"functionName":"afterWriteTick","ranges":[{"startOffset":14204,"endOffset":14343,"count":8}],"isBlockCoverage":true},{"functionName":"afterWrite","ranges":[{"startOffset":14345,"endOffset":14755,"count":80},{"startOffset":14470,"endOffset":14492,"count":76},{"startOffset":14511,"endOffset":14571,"count":0},{"startOffset":14595,"endOffset":14633,"count":109},{"startOffset":14658,"endOffset":14722,"count":0}],"isBlockCoverage":true},{"functionName":"errorBuffer","ranges":[{"startOffset":14827,"endOffset":15148,"count":0}],"isBlockCoverage":false},{"functionName":"clearBuffer","ranges":[{"startOffset":15214,"endOffset":16647,"count":4},{"startOffset":15317,"endOffset":15334,"count":0},{"startOffset":15475,"endOffset":15492,"count":0},{"startOffset":15578,"endOffset":15595,"count":2},{"startOffset":15597,"endOffset":16139,"count":2},{"startOffset":15684,"endOffset":15795,"count":0},{"startOffset":15977,"endOffset":15996,"count":0},{"startOffset":16139,"endOffset":16611,"count":2},{"startOffset":16270,"endOffset":16273,"count":0},{"startOffset":16392,"endOffset":16409,"count":0},{"startOffset":16477,"endOffset":16607,"count":0}],"isBlockCoverage":true},{"functionName":"callback","ranges":[{"startOffset":15686,"endOffset":15795,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._write","ranges":[{"startOffset":16677,"endOffset":16846,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.end","ranges":[{"startOffset":16910,"endOffset":18094,"count":30},{"startOffset":17015,"endOffset":17075,"count":0},{"startOffset":17117,"endOffset":17162,"count":0},{"startOffset":17213,"endOffset":17241,"count":0},{"startOffset":17290,"endOffset":17336,"count":0},{"startOffset":17780,"endOffset":17936,"count":0},{"startOffset":17970,"endOffset":18076,"count":0}],"isBlockCoverage":true},{"functionName":"needFinish","ranges":[{"startOffset":18097,"endOffset":18310,"count":140},{"startOffset":18149,"endOffset":18180,"count":60},{"startOffset":18181,"endOffset":18208,"count":60},{"startOffset":18209,"endOffset":18249,"count":60},{"startOffset":18250,"endOffset":18278,"count":60},{"startOffset":18279,"endOffset":18306,"count":60}],"isBlockCoverage":true},{"functionName":"callFinal","ranges":[{"startOffset":18312,"endOffset":18572,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":18364,"endOffset":18568,"count":30},{"startOffset":18411,"endOffset":18453,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":18574,"endOffset":18922,"count":60},{"startOffset":18635,"endOffset":18656,"count":30},{"startOffset":18658,"endOffset":18920,"count":30},{"startOffset":18839,"endOffset":18916,"count":0}],"isBlockCoverage":true},{"functionName":"finishMaybe","ranges":[{"startOffset":18924,"endOffset":19251,"count":140},{"startOffset":19014,"endOffset":19234,"count":60},{"startOffset":19077,"endOffset":19230,"count":30},{"startOffset":19120,"endOffset":19178,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":19253,"endOffset":19871,"count":30},{"startOffset":19337,"endOffset":19344,"count":0},{"startOffset":19422,"endOffset":19869,"count":0}],"isBlockCoverage":true},{"functionName":"onFinished","ranges":[{"startOffset":19937,"endOffset":20401,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20468,"endOffset":20555,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":20561,"endOffset":20743,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20768,"endOffset":21160,"count":120},{"startOffset":21142,"endOffset":21153,"count":90}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":21166,"endOffset":21300,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":21333,"endOffset":21419,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21454,"endOffset":21542,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21573,"endOffset":21655,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21685,"endOffset":21769,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21803,"endOffset":21961,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21999,"endOffset":22083,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22114,"endOffset":22194,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22225,"endOffset":22302,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.destroy","ranges":[{"startOffset":22378,"endOffset":22589,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._destroy","ranges":[{"startOffset":22677,"endOffset":22709,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.","ranges":[{"startOffset":22760,"endOffset":22798,"count":0}],"isBlockCoverage":false}]},{"scriptId":"88","url":"internal/streams/duplex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3759,"count":1}],"isBlockCoverage":false},{"functionName":"Duplex","ranges":[{"startOffset":1936,"endOffset":2360,"count":92},{"startOffset":2000,"endOffset":2027,"count":0},{"startOffset":2182,"endOffset":2204,"count":2},{"startOffset":2248,"endOffset":2270,"count":0},{"startOffset":2313,"endOffset":2354,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3271,"endOffset":3483,"count":434},{"startOffset":3369,"endOffset":3400,"count":0},{"startOffset":3444,"endOffset":3476,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3489,"endOffset":3750,"count":0}],"isBlockCoverage":false}]},{"scriptId":"89","url":"internal/streams/transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8217,"count":1}],"isBlockCoverage":false},{"functionName":"afterTransform","ranges":[{"startOffset":4032,"endOffset":4550,"count":0}],"isBlockCoverage":false},{"functionName":"Transform","ranges":[{"startOffset":4553,"endOffset":5382,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":5384,"endOffset":5596,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5691,"endOffset":5741,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5838,"endOffset":5890,"count":0}],"isBlockCoverage":false},{"functionName":"Transform.push","ranges":[{"startOffset":5988,"endOffset":6124,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._transform","ranges":[{"startOffset":6607,"endOffset":6696,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._write","ranges":[{"startOffset":6728,"endOffset":7067,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._read","ranges":[{"startOffset":7239,"endOffset":7613,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._destroy","ranges":[{"startOffset":7648,"endOffset":7745,"count":0}],"isBlockCoverage":false},{"functionName":"done","ranges":[{"startOffset":7749,"endOffset":8216,"count":0}],"isBlockCoverage":false}]},{"scriptId":"90","url":"internal/streams/passthrough.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1762,"count":1}],"isBlockCoverage":false},{"functionName":"PassThrough","ranges":[{"startOffset":1529,"endOffset":1671,"count":0}],"isBlockCoverage":false},{"functionName":"PassThrough._transform","ranges":[{"startOffset":1708,"endOffset":1760,"count":0}],"isBlockCoverage":false}]},{"scriptId":"92","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/wrapper.mjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":323,"count":1}],"isBlockCoverage":true}]},{"scriptId":"93","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4076,"count":1}],"isBlockCoverage":true},{"functionName":"persistNode","ranges":[{"startOffset":284,"endOffset":618,"count":27}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":620,"endOffset":2047,"count":181},{"startOffset":671,"endOffset":735,"count":0},{"startOffset":927,"endOffset":944,"count":154},{"startOffset":944,"endOffset":2046,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":856,"endOffset":904,"count":504}],"isBlockCoverage":true},{"functionName":"handleError","ranges":[{"startOffset":1172,"endOffset":1445,"count":27},{"startOffset":1369,"endOffset":1444,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1601,"endOffset":1639,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1669,"endOffset":1760,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1844,"endOffset":1904,"count":50}],"isBlockCoverage":true},{"functionName":"node.close","ranges":[{"startOffset":1923,"endOffset":1991,"count":27}],"isBlockCoverage":true},{"functionName":"canhazdb","ranges":[{"startOffset":2049,"endOffset":4049,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2491,"endOffset":2577,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2673,"endOffset":2727,"count":0}],"isBlockCoverage":false},{"functionName":"syncNodesInfo","ranges":[{"startOffset":2733,"endOffset":3334,"count":7},{"startOffset":2785,"endOffset":2806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2834,"endOffset":3261,"count":27},{"startOffset":3148,"endOffset":3173,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2977,"endOffset":3057,"count":127}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3373,"endOffset":3514,"count":886}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3428,"endOffset":3450,"count":4082}],"isBlockCoverage":true},{"functionName":"context.close","ranges":[{"startOffset":3536,"endOffset":3813,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3700,"endOffset":3742,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3980,"endOffset":4026,"count":17}],"isBlockCoverage":true}]},{"scriptId":"94","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3290,"count":1}],"isBlockCoverage":true},{"functionName":"formatColor","ranges":[{"startOffset":614,"endOffset":938,"count":0}],"isBlockCoverage":false},{"functionName":"padStartAll","ranges":[{"startOffset":940,"endOffset":1063,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":1090,"endOffset":2704,"count":10}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1152,"endOffset":2701,"count":34},{"startOffset":1249,"endOffset":1270,"count":7},{"startOffset":1270,"endOffset":1321,"count":27},{"startOffset":1321,"endOffset":2487,"count":0},{"startOffset":2487,"endOffset":2602,"count":27},{"startOffset":2609,"endOffset":2696,"count":0}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":2706,"endOffset":3035,"count":2}],"isBlockCoverage":true},{"functionName":"log.setLogger","ranges":[{"startOffset":3053,"endOffset":3091,"count":0}],"isBlockCoverage":false},{"functionName":"log.setLogLevel","ranges":[{"startOffset":3112,"endOffset":3213,"count":1}],"isBlockCoverage":true}]},{"scriptId":"95","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/prepareOptions.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1328,"count":1}],"isBlockCoverage":true},{"functionName":"prepareOptions","ranges":[{"startOffset":91,"endOffset":1295,"count":7},{"startOffset":201,"endOffset":206,"count":0},{"startOffset":254,"endOffset":287,"count":0},{"startOffset":288,"endOffset":304,"count":0},{"startOffset":378,"endOffset":622,"count":0},{"startOffset":763,"endOffset":1152,"count":0},{"startOffset":1205,"endOffset":1273,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":575,"endOffset":616,"count":0}],"isBlockCoverage":false}]},{"scriptId":"96","url":"dns.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9368,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":2019,"endOffset":2220,"count":30},{"startOffset":2066,"endOffset":2146,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupall","ranges":[{"startOffset":2223,"endOffset":2587,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2658,"endOffset":4319,"count":30},{"startOffset":2854,"endOffset":2927,"count":0},{"startOffset":2968,"endOffset":3013,"count":0},{"startOffset":3055,"endOffset":3106,"count":0},{"startOffset":3339,"endOffset":3378,"count":0},{"startOffset":3450,"endOffset":3658,"count":0},{"startOffset":3721,"endOffset":3937,"count":0},{"startOffset":4079,"endOffset":4092,"count":0},{"startOffset":4207,"endOffset":4303,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupservice","ranges":[{"startOffset":4448,"endOffset":4629,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":4632,"endOffset":5263,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":5401,"endOffset":5667,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":5669,"endOffset":6415,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":5704,"endOffset":6334,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":7404,"endOffset":7865,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolverSetServers","ranges":[{"startOffset":7867,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9174,"endOffset":9359,"count":2},{"startOffset":9211,"endOffset":9330,"count":1}],"isBlockCoverage":true}]},{"scriptId":"97","url":"internal/net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1694,"count":1}],"isBlockCoverage":false},{"functionName":"isIPv4","ranges":[{"startOffset":974,"endOffset":1022,"count":150}],"isBlockCoverage":true},{"functionName":"isIPv6","ranges":[{"startOffset":1024,"endOffset":1072,"count":90}],"isBlockCoverage":true},{"functionName":"isIP","ranges":[{"startOffset":1074,"endOffset":1160,"count":150},{"startOffset":1110,"endOffset":1119,"count":60},{"startOffset":1119,"endOffset":1137,"count":90},{"startOffset":1137,"endOffset":1146,"count":0},{"startOffset":1146,"endOffset":1159,"count":90}],"isBlockCoverage":true},{"functionName":"makeSyncWrite","ranges":[{"startOffset":1162,"endOffset":1576,"count":0}],"isBlockCoverage":false}]},{"scriptId":"98","url":"internal/dns/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4700,"count":1}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":610,"endOffset":770,"count":1}],"isBlockCoverage":true},{"functionName":"Resolver","ranges":[{"startOffset":848,"endOffset":977,"count":1}],"isBlockCoverage":true},{"functionName":"cancel","ranges":[{"startOffset":981,"endOffset":1022,"count":0}],"isBlockCoverage":false},{"functionName":"getServers","ranges":[{"startOffset":1026,"endOffset":1273,"count":0}],"isBlockCoverage":false},{"functionName":"setServers","ranges":[{"startOffset":1277,"endOffset":3072,"count":0}],"isBlockCoverage":false},{"functionName":"setLocalAddress","ranges":[{"startOffset":3076,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultResolver","ranges":[{"startOffset":3703,"endOffset":3762,"count":1}],"isBlockCoverage":true},{"functionName":"setDefaultResolver","ranges":[{"startOffset":3764,"endOffset":3835,"count":0}],"isBlockCoverage":false},{"functionName":"bindDefaultResolver","ranges":[{"startOffset":3837,"endOffset":3978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3907,"endOffset":3974,"count":30}],"isBlockCoverage":true},{"functionName":"validateHints","ranges":[{"startOffset":3980,"endOffset":4135,"count":30},{"startOffset":4075,"endOffset":4133,"count":0}],"isBlockCoverage":true},{"functionName":"emitInvalidHostnameWarning","ranges":[{"startOffset":4181,"endOffset":4531,"count":0}],"isBlockCoverage":false}]},{"scriptId":"99","url":"internal/dns/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6786,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":733,"endOffset":982,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupall","ranges":[{"startOffset":984,"endOffset":1359,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupPromise","ranges":[{"startOffset":1361,"endOffset":2205,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2207,"endOffset":2864,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupservice","ranges":[{"startOffset":2867,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupServicePromise","ranges":[{"startOffset":3052,"endOffset":3463,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":3465,"endOffset":3749,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":3752,"endOffset":4019,"count":0}],"isBlockCoverage":false},{"functionName":"createResolverPromise","ranges":[{"startOffset":4021,"endOffset":4489,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":4491,"endOffset":4786,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":4526,"endOffset":4704,"count":0}],"isBlockCoverage":false},{"functionName":"Resolver","ranges":[{"startOffset":4905,"endOffset":5034,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":6261,"endOffset":6671,"count":0}],"isBlockCoverage":false}]},{"scriptId":"100","url":"os.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8688,"count":1}],"isBlockCoverage":false},{"functionName":"getCheckedFunction","ranges":[{"startOffset":1911,"endOffset":2152,"count":3}],"isBlockCoverage":true},{"functionName":"checkError","ranges":[{"startOffset":1970,"endOffset":2148,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease","ranges":[{"startOffset":2459,"endOffset":2472,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType","ranges":[{"startOffset":2521,"endOffset":2531,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion","ranges":[{"startOffset":2583,"endOffset":2596,"count":0}],"isBlockCoverage":false},{"functionName":"getFreeMem.","ranges":[{"startOffset":2631,"endOffset":2649,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname.","ranges":[{"startOffset":2684,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion.","ranges":[{"startOffset":2739,"endOffset":2759,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType.","ranges":[{"startOffset":2792,"endOffset":2809,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease.","ranges":[{"startOffset":2845,"endOffset":2865,"count":0}],"isBlockCoverage":false},{"functionName":"getHomeDirectory.","ranges":[{"startOffset":2905,"endOffset":2929,"count":0}],"isBlockCoverage":false},{"functionName":"getTotalMem.","ranges":[{"startOffset":2964,"endOffset":2983,"count":0}],"isBlockCoverage":false},{"functionName":"getUptime.","ranges":[{"startOffset":3016,"endOffset":3033,"count":0}],"isBlockCoverage":false},{"functionName":"loadavg","ranges":[{"startOffset":3171,"endOffset":3271,"count":0}],"isBlockCoverage":false},{"functionName":"cpus","ranges":[{"startOffset":3546,"endOffset":3958,"count":0}],"isBlockCoverage":false},{"functionName":"arch","ranges":[{"startOffset":3989,"endOffset":4031,"count":0}],"isBlockCoverage":false},{"functionName":"arch.","ranges":[{"startOffset":4058,"endOffset":4076,"count":0}],"isBlockCoverage":false},{"functionName":"platform","ranges":[{"startOffset":4108,"endOffset":4158,"count":0}],"isBlockCoverage":false},{"functionName":"platform.","ranges":[{"startOffset":4189,"endOffset":4211,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir","ranges":[{"startOffset":4243,"endOffset":4760,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir.","ranges":[{"startOffset":4789,"endOffset":4803,"count":0}],"isBlockCoverage":false},{"functionName":"endianness","ranges":[{"startOffset":4840,"endOffset":4887,"count":0}],"isBlockCoverage":false},{"functionName":"endianness.","ranges":[{"startOffset":4920,"endOffset":4937,"count":0}],"isBlockCoverage":false},{"functionName":"countBinaryOnes","ranges":[{"startOffset":5025,"endOffset":5278,"count":0}],"isBlockCoverage":false},{"functionName":"getCIDR","ranges":[{"startOffset":5280,"endOffset":6000,"count":0}],"isBlockCoverage":false},{"functionName":"networkInterfaces","ranges":[{"startOffset":6204,"endOffset":6881,"count":0}],"isBlockCoverage":false},{"functionName":"setPriority","ranges":[{"startOffset":6961,"endOffset":7250,"count":0}],"isBlockCoverage":false},{"functionName":"getPriority","ranges":[{"startOffset":7304,"endOffset":7559,"count":0}],"isBlockCoverage":false},{"functionName":"userInfo","ranges":[{"startOffset":7869,"endOffset":8095,"count":0}],"isBlockCoverage":false}]},{"scriptId":"101","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/createHandler.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1181,"count":1}],"isBlockCoverage":true},{"functionName":"createHandler","ranges":[{"startOffset":193,"endOffset":1149,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":319,"endOffset":1145,"count":37},{"startOffset":669,"endOffset":747,"count":0},{"startOffset":793,"endOffset":805,"count":33},{"startOffset":806,"endOffset":818,"count":4},{"startOffset":919,"endOffset":997,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1075,"endOffset":1139,"count":0}],"isBlockCoverage":false}]},{"scriptId":"102","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/waitUntil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":63,"endOffset":190,"count":886},{"startOffset":121,"endOffset":179,"count":879},{"startOffset":179,"endOffset":189,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":138,"endOffset":161,"count":879}],"isBlockCoverage":true}]},{"scriptId":"103","url":"util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8146,"count":1}],"isBlockCoverage":false},{"functionName":"isBoolean","ranges":[{"startOffset":2097,"endOffset":2159,"count":0}],"isBlockCoverage":false},{"functionName":"isNull","ranges":[{"startOffset":2161,"endOffset":2208,"count":0}],"isBlockCoverage":false},{"functionName":"isNullOrUndefined","ranges":[{"startOffset":2210,"endOffset":2289,"count":0}],"isBlockCoverage":false},{"functionName":"isNumber","ranges":[{"startOffset":2291,"endOffset":2351,"count":0}],"isBlockCoverage":false},{"functionName":"isString","ranges":[{"startOffset":2353,"endOffset":2413,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbol","ranges":[{"startOffset":2415,"endOffset":2475,"count":0}],"isBlockCoverage":false},{"functionName":"isUndefined","ranges":[{"startOffset":2477,"endOffset":2534,"count":0}],"isBlockCoverage":false},{"functionName":"isObject","ranges":[{"startOffset":2536,"endOffset":2612,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":2614,"endOffset":2717,"count":0}],"isBlockCoverage":false},{"functionName":"isFunction","ranges":[{"startOffset":2719,"endOffset":2783,"count":0}],"isBlockCoverage":false},{"functionName":"isPrimitive","ranges":[{"startOffset":2785,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":2906,"endOffset":2965,"count":0}],"isBlockCoverage":false},{"functionName":"timestamp","ranges":[{"startOffset":3104,"endOffset":3334,"count":0}],"isBlockCoverage":false},{"functionName":"log","ranges":[{"startOffset":3420,"endOffset":3573,"count":0}],"isBlockCoverage":false},{"functionName":"inherits","ranges":[{"startOffset":4309,"endOffset":4925,"count":0}],"isBlockCoverage":false},{"functionName":"_extend","ranges":[{"startOffset":4927,"endOffset":5215,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5263,"endOffset":5688,"count":0}],"isBlockCoverage":false},{"functionName":"callbackify","ranges":[{"startOffset":5692,"endOffset":7073,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7075,"endOffset":7291,"count":0}],"isBlockCoverage":false},{"functionName":"isDeepStrictEqual","ranges":[{"startOffset":7692,"endOffset":7897,"count":0}],"isBlockCoverage":false}]},{"scriptId":"104","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/replaceErrors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":283,"count":1}],"isBlockCoverage":true},{"functionName":"replaceErrors","ranges":[{"startOffset":0,"endOffset":251,"count":216},{"startOffset":68,"endOffset":232,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":139,"endOffset":207,"count":0}],"isBlockCoverage":false}]},{"scriptId":"105","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":307,"endOffset":546,"count":37},{"startOffset":434,"endOffset":451,"count":0}],"isBlockCoverage":true}]},{"scriptId":"106","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/formatDate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":146,"count":1}],"isBlockCoverage":true},{"functionName":"formatDate","ranges":[{"startOffset":0,"endOffset":117,"count":34}],"isBlockCoverage":true}]},{"scriptId":"107","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1239,"count":1}],"isBlockCoverage":true},{"functionName":"createTest","ranges":[{"startOffset":131,"endOffset":187,"count":3}],"isBlockCoverage":true},{"functionName":"createTest.skip","ranges":[{"startOffset":206,"endOffset":270,"count":0}],"isBlockCoverage":false},{"functionName":"createTest.only","ranges":[{"startOffset":290,"endOffset":354,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":444,"endOffset":1236,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":513,"endOffset":710,"count":3},{"startOffset":548,"endOffset":570,"count":0},{"startOffset":572,"endOffset":603,"count":0},{"startOffset":634,"endOffset":665,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":800,"endOffset":1232,"count":1},{"startOffset":895,"endOffset":935,"count":0},{"startOffset":982,"endOffset":1078,"count":0},{"startOffset":1115,"endOffset":1228,"count":0}],"isBlockCoverage":true}]},{"scriptId":"108","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/colorette/index.cjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2168,"count":1}],"isBlockCoverage":true},{"functionName":"raw","ranges":[{"startOffset":255,"endOffset":468,"count":41}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":299,"endOffset":468,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":483,"endOffset":626,"count":39}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":692,"endOffset":705,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":714,"endOffset":742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"109","url":"tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5057,"count":1}],"isBlockCoverage":false},{"functionName":"isatty","ranges":[{"startOffset":1534,"endOffset":1640,"count":2}],"isBlockCoverage":true},{"functionName":"ReadStream","ranges":[{"startOffset":1642,"endOffset":2126,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.setRawMode","ranges":[{"startOffset":2275,"endOffset":2491,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":2494,"endOffset":3460,"count":2},{"startOffset":2563,"endOffset":2590,"count":0},{"startOffset":2627,"endOffset":2656,"count":0},{"startOffset":2745,"endOffset":2790,"count":0}],"isBlockCoverage":true},{"functionName":"WriteStream._refreshSize","ranges":[{"startOffset":3751,"endOffset":4179,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.cursorTo","ranges":[{"startOffset":4235,"endOffset":4375,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.moveCursor","ranges":[{"startOffset":4412,"endOffset":4558,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearLine","ranges":[{"startOffset":4594,"endOffset":4733,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearScreenDown","ranges":[{"startOffset":4775,"endOffset":4910,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.getWindowSize","ranges":[{"startOffset":4950,"endOffset":5000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"110","url":"net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47106,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1448,"endOffset":1473,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3388,"endOffset":3406,"count":0}],"isBlockCoverage":false},{"functionName":"getFlags","ranges":[{"startOffset":3408,"endOffset":3502,"count":7},{"startOffset":3465,"endOffset":3495,"count":0}],"isBlockCoverage":true},{"functionName":"createHandle","ranges":[{"startOffset":3504,"endOffset":3885,"count":0}],"isBlockCoverage":false},{"functionName":"getNewAsyncId","ranges":[{"startOffset":3888,"endOffset":4026,"count":191},{"startOffset":3983,"endOffset":4001,"count":0}],"isBlockCoverage":true},{"functionName":"isPipeName","ranges":[{"startOffset":4029,"endOffset":4112,"count":7},{"startOffset":4085,"endOffset":4109,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":4114,"endOffset":4218,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":4441,"endOffset":4732,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeArgs","ranges":[{"startOffset":5227,"endOffset":5953,"count":67},{"startOffset":5295,"endOffset":5376,"count":0},{"startOffset":5453,"endOffset":5469,"count":60},{"startOffset":5471,"endOffset":5524,"count":60},{"startOffset":5524,"endOffset":5772,"count":7},{"startOffset":5552,"endOffset":5607,"count":0},{"startOffset":5699,"endOffset":5729,"count":0},{"startOffset":5731,"endOffset":5768,"count":0},{"startOffset":5846,"endOffset":5868,"count":7},{"startOffset":5868,"endOffset":5900,"count":60}],"isBlockCoverage":true},{"functionName":"initSocketHandle","ranges":[{"startOffset":6025,"endOffset":6628,"count":92},{"startOffset":6381,"endOffset":6622,"count":0}],"isBlockCoverage":true},{"functionName":"Socket","ranges":[{"startOffset":6763,"endOffset":10585,"count":92},{"startOffset":6823,"endOffset":6850,"count":0},{"startOffset":7400,"endOffset":7426,"count":0},{"startOffset":8078,"endOffset":9811,"count":0},{"startOffset":10167,"endOffset":10432,"count":90},{"startOffset":10200,"endOffset":10369,"count":0},{"startOffset":10401,"endOffset":10428,"count":30}],"isBlockCoverage":true},{"functionName":"_unrefTimer","ranges":[{"startOffset":10758,"endOffset":10888,"count":373},{"startOffset":10831,"endOffset":10886,"count":512},{"startOffset":10860,"endOffset":10882,"count":139}],"isBlockCoverage":true},{"functionName":"Socket._final","ranges":[{"startOffset":11008,"endOffset":11656,"count":30},{"startOffset":11122,"endOffset":11223,"count":0},{"startOffset":11250,"endOffset":11262,"count":0},{"startOffset":11540,"endOffset":11574,"count":0},{"startOffset":11601,"endOffset":11654,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11196,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"afterShutdown","ranges":[{"startOffset":11660,"endOffset":12039,"count":30},{"startOffset":11913,"endOffset":11920,"count":0},{"startOffset":11943,"endOffset":11964,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterFIN","ranges":[{"startOffset":12246,"endOffset":12702,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._onTimeout","ranges":[{"startOffset":12784,"endOffset":13288,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setNoDelay","ranges":[{"startOffset":13322,"endOffset":13771,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setKeepAlive","ranges":[{"startOffset":13807,"endOffset":14054,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":14085,"endOffset":14129,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14196,"endOffset":14240,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14300,"endOffset":14356,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14447,"endOffset":14762,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14831,"endOffset":14911,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14979,"endOffset":15024,"count":174}],"isBlockCoverage":true},{"functionName":"tryReadStart","ranges":[{"startOffset":15031,"endOffset":15277,"count":60},{"startOffset":15231,"endOffset":15275,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._read","ranges":[{"startOffset":15369,"endOffset":15598,"count":192},{"startOffset":15424,"endOffset":15440,"count":162},{"startOffset":15442,"endOffset":15534,"count":30},{"startOffset":15534,"endOffset":15596,"count":162},{"startOffset":15567,"endOffset":15596,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15509,"endOffset":15528,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.end","ranges":[{"startOffset":15625,"endOffset":15777,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.pause","ranges":[{"startOffset":15806,"endOffset":16140,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.resume","ranges":[{"startOffset":16170,"endOffset":16354,"count":60},{"startOffset":16203,"endOffset":16222,"count":0},{"startOffset":16223,"endOffset":16238,"count":0},{"startOffset":16239,"endOffset":16269,"count":0},{"startOffset":16271,"endOffset":16300,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.read","ranges":[{"startOffset":16382,"endOffset":16568,"count":312},{"startOffset":16416,"endOffset":16435,"count":0},{"startOffset":16436,"endOffset":16451,"count":0},{"startOffset":16452,"endOffset":16482,"count":0},{"startOffset":16484,"endOffset":16513,"count":0}],"isBlockCoverage":true},{"functionName":"onReadableStreamEnd","ranges":[{"startOffset":16615,"endOffset":16900,"count":30},{"startOffset":16749,"endOffset":16806,"count":0},{"startOffset":16810,"endOffset":16898,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.destroySoon","ranges":[{"startOffset":16934,"endOffset":17081,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._destroy","ranges":[{"startOffset":17113,"endOffset":18067,"count":90},{"startOffset":17236,"endOffset":17272,"count":120},{"startOffset":17410,"endOffset":17416,"count":0},{"startOffset":17817,"endOffset":17888,"count":0},{"startOffset":17910,"endOffset":18065,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17629,"endOffset":17708,"count":90}],"isBlockCoverage":true},{"functionName":"Socket._getpeername","ranges":[{"startOffset":18102,"endOffset":18393,"count":0}],"isBlockCoverage":false},{"functionName":"protoGetter","ranges":[{"startOffset":18396,"endOffset":18556,"count":8}],"isBlockCoverage":true},{"functionName":"bytesRead","ranges":[{"startOffset":18583,"endOffset":18674,"count":0}],"isBlockCoverage":false},{"functionName":"remoteAddress","ranges":[{"startOffset":18707,"endOffset":18773,"count":0}],"isBlockCoverage":false},{"functionName":"remoteFamily","ranges":[{"startOffset":18805,"endOffset":18869,"count":0}],"isBlockCoverage":false},{"functionName":"remotePort","ranges":[{"startOffset":18899,"endOffset":18959,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._getsockname","ranges":[{"startOffset":18996,"endOffset":19281,"count":0}],"isBlockCoverage":false},{"functionName":"localAddress","ranges":[{"startOffset":19313,"endOffset":19378,"count":0}],"isBlockCoverage":false},{"functionName":"localPort","ranges":[{"startOffset":19408,"endOffset":19467,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.","ranges":[{"startOffset":19509,"endOffset":19556,"count":72}],"isBlockCoverage":true},{"functionName":"Socket._writeGeneric","ranges":[{"startOffset":19592,"endOffset":20353,"count":109},{"startOffset":19814,"endOffset":20007,"count":0},{"startOffset":20088,"endOffset":20144,"count":0},{"startOffset":20198,"endOffset":20234,"count":2},{"startOffset":20234,"endOffset":20291,"count":107},{"startOffset":20313,"endOffset":20351,"count":72}],"isBlockCoverage":true},{"functionName":"connect","ranges":[{"startOffset":19909,"endOffset":19989,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._writev","ranges":[{"startOffset":20384,"endOffset":20452,"count":2}],"isBlockCoverage":true},{"functionName":"Socket._write","ranges":[{"startOffset":20482,"endOffset":20563,"count":107}],"isBlockCoverage":true},{"functionName":"_bytesDispatched","ranges":[{"startOffset":20756,"endOffset":20860,"count":0}],"isBlockCoverage":false},{"functionName":"bytesWritten","ranges":[{"startOffset":20892,"endOffset":21821,"count":0}],"isBlockCoverage":false},{"functionName":"checkBindError","ranges":[{"startOffset":21826,"endOffset":22625,"count":0}],"isBlockCoverage":false},{"functionName":"internalConnect","ranges":[{"startOffset":22628,"endOffset":24333,"count":30},{"startOffset":22883,"endOffset":23509,"count":0},{"startOffset":23829,"endOffset":23893,"count":0},{"startOffset":23897,"endOffset":24070,"count":0},{"startOffset":24083,"endOffset":24331,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.connect","ranges":[{"startOffset":24363,"endOffset":25667,"count":30},{"startOffset":24707,"endOffset":24739,"count":0},{"startOffset":24741,"endOffset":24772,"count":0},{"startOffset":24933,"endOffset":24969,"count":0},{"startOffset":24993,"endOffset":25077,"count":0},{"startOffset":25181,"endOffset":25315,"count":0},{"startOffset":25459,"endOffset":25602,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndConnect","ranges":[{"startOffset":25671,"endOffset":28698,"count":30},{"startOffset":25789,"endOffset":25803,"count":0},{"startOffset":25851,"endOffset":25873,"count":0},{"startOffset":25875,"endOffset":25932,"count":0},{"startOffset":25950,"endOffset":25982,"count":0},{"startOffset":25984,"endOffset":26067,"count":0},{"startOffset":26139,"endOffset":26166,"count":0},{"startOffset":26168,"endOffset":26294,"count":0},{"startOffset":26438,"endOffset":26742,"count":0},{"startOffset":26765,"endOffset":26804,"count":0},{"startOffset":26810,"endOffset":26922,"count":0},{"startOffset":26950,"endOffset":26971,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":26512,"endOffset":26724,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":27405,"endOffset":28694,"count":30}],"isBlockCoverage":true},{"functionName":"emitLookup","ranges":[{"startOffset":27444,"endOffset":28688,"count":30},{"startOffset":27732,"endOffset":27739,"count":0},{"startOffset":27756,"endOffset":28051,"count":0},{"startOffset":28072,"endOffset":28180,"count":0},{"startOffset":28208,"endOffset":28228,"count":0},{"startOffset":28230,"endOffset":28469,"count":0}],"isBlockCoverage":true},{"functionName":"connectErrorNT","ranges":[{"startOffset":28701,"endOffset":28760,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":28786,"endOffset":28973,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":29002,"endOffset":29195,"count":0}],"isBlockCoverage":false},{"functionName":"afterConnect","ranges":[{"startOffset":29199,"endOffset":30447,"count":30},{"startOffset":29369,"endOffset":29386,"count":0},{"startOffset":29552,"endOffset":29601,"count":0},{"startOffset":29638,"endOffset":29663,"count":0},{"startOffset":29919,"endOffset":30445,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":30450,"endOffset":31779,"count":7},{"startOffset":30534,"endOffset":30581,"count":0},{"startOffset":30648,"endOffset":30752,"count":0},{"startOffset":30953,"endOffset":31030,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":31123,"endOffset":31230,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":31363,"endOffset":31397,"count":0}],"isBlockCoverage":false},{"functionName":"toNumber","ranges":[{"startOffset":31890,"endOffset":31955,"count":14},{"startOffset":31945,"endOffset":31952,"count":0}],"isBlockCoverage":true},{"functionName":"createServerHandle","ranges":[{"startOffset":32023,"endOffset":33475,"count":7},{"startOffset":32239,"endOffset":32249,"count":0},{"startOffset":32251,"endOffset":32562,"count":0},{"startOffset":32584,"endOffset":32605,"count":0},{"startOffset":32607,"endOffset":32857,"count":0},{"startOffset":32945,"endOffset":32952,"count":0},{"startOffset":32953,"endOffset":32961,"count":0},{"startOffset":32994,"endOffset":33002,"count":0},{"startOffset":33023,"endOffset":33260,"count":0},{"startOffset":33344,"endOffset":33397,"count":0},{"startOffset":33414,"endOffset":33455,"count":0}],"isBlockCoverage":true},{"functionName":"setupListenHandle","ranges":[{"startOffset":33477,"endOffset":35828,"count":7},{"startOffset":33782,"endOffset":33842,"count":0},{"startOffset":34154,"endOffset":34246,"count":0},{"startOffset":34360,"endOffset":34425,"count":0},{"startOffset":34461,"endOffset":34608,"count":0},{"startOffset":35043,"endOffset":35401,"count":0},{"startOffset":35631,"endOffset":35644,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":35895,"endOffset":35957,"count":0}],"isBlockCoverage":false},{"functionName":"emitListeningNT","ranges":[{"startOffset":35960,"endOffset":36075,"count":7}],"isBlockCoverage":true},{"functionName":"listenInCluster","ranges":[{"startOffset":36078,"endOffset":37296,"count":7},{"startOffset":36254,"endOffset":36283,"count":1},{"startOffset":36308,"endOffset":36320,"count":0},{"startOffset":36566,"endOffset":37295,"count":0}],"isBlockCoverage":true},{"functionName":"listenOnMasterHandle","ranges":[{"startOffset":36811,"endOffset":37294,"count":0}],"isBlockCoverage":false},{"functionName":"Server.listen","ranges":[{"startOffset":37325,"endOffset":40823,"count":7},{"startOffset":37467,"endOffset":37515,"count":0},{"startOffset":37536,"endOffset":37573,"count":0},{"startOffset":37692,"endOffset":37702,"count":0},{"startOffset":37736,"endOffset":37746,"count":0},{"startOffset":37979,"endOffset":38142,"count":0},{"startOffset":38247,"endOffset":38265,"count":0},{"startOffset":38267,"endOffset":38363,"count":0},{"startOffset":38721,"endOffset":38741,"count":0},{"startOffset":38775,"endOffset":38802,"count":0},{"startOffset":39026,"endOffset":39061,"count":0},{"startOffset":39232,"endOffset":39357,"count":0},{"startOffset":39630,"endOffset":39798,"count":0},{"startOffset":39800,"endOffset":40621,"count":0},{"startOffset":40624,"endOffset":40822,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndListen","ranges":[{"startOffset":40826,"endOffset":41238,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":41301,"endOffset":41344,"count":0}],"isBlockCoverage":false},{"functionName":"Server.address","ranges":[{"startOffset":41419,"endOffset":41708,"count":0}],"isBlockCoverage":false},{"functionName":"onconnection","ranges":[{"startOffset":41711,"endOffset":42372,"count":30},{"startOffset":41852,"endOffset":41924,"count":0},{"startOffset":41952,"endOffset":41995,"count":0},{"startOffset":41997,"endOffset":42040,"count":0}],"isBlockCoverage":true},{"functionName":"Server.getConnections","ranges":[{"startOffset":42409,"endOffset":43162,"count":0}],"isBlockCoverage":false},{"functionName":"Server.close","ranges":[{"startOffset":43191,"endOffset":44058,"count":7},{"startOffset":43238,"endOffset":43413,"count":0},{"startOffset":43519,"endOffset":43997,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":43290,"endOffset":43358,"count":0}],"isBlockCoverage":false},{"functionName":"onWorkerClose","ranges":[{"startOffset":43584,"endOffset":43693,"count":0}],"isBlockCoverage":false},{"functionName":"Server._emitCloseIfDrained","ranges":[{"startOffset":44100,"endOffset":44486,"count":37},{"startOffset":44172,"endOffset":44192,"count":7},{"startOffset":44194,"endOffset":44306,"count":30},{"startOffset":44306,"endOffset":44485,"count":7}],"isBlockCoverage":true},{"functionName":"emitCloseNT","ranges":[{"startOffset":44490,"endOffset":44573,"count":7}],"isBlockCoverage":true},{"functionName":"Server.","ranges":[{"startOffset":44632,"endOffset":44794,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":44997,"endOffset":45033,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":45037,"endOffset":45078,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":45138,"endOffset":45169,"count":2729}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":45173,"endOffset":45209,"count":182}],"isBlockCoverage":true},{"functionName":"Server._setupWorker","ranges":[{"startOffset":45247,"endOffset":45473,"count":0}],"isBlockCoverage":false},{"functionName":"Server.ref","ranges":[{"startOffset":45499,"endOffset":45597,"count":0}],"isBlockCoverage":false},{"functionName":"Server.unref","ranges":[{"startOffset":45625,"endOffset":45724,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":45866,"endOffset":46535,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":46574,"endOffset":46815,"count":0}],"isBlockCoverage":false}]},{"scriptId":"111","url":"internal/stream_base_commons.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7120,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":987,"endOffset":1012,"count":1}],"isBlockCoverage":true},{"functionName":"handleWriteReq","ranges":[{"startOffset":1131,"endOffset":1986,"count":107},{"startOffset":1231,"endOffset":1398,"count":0},{"startOffset":1403,"endOffset":1417,"count":0},{"startOffset":1422,"endOffset":1486,"count":0},{"startOffset":1574,"endOffset":1636,"count":0},{"startOffset":1641,"endOffset":1653,"count":0},{"startOffset":1658,"endOffset":1671,"count":0},{"startOffset":1676,"endOffset":1691,"count":0},{"startOffset":1696,"endOffset":1760,"count":0},{"startOffset":1765,"endOffset":1980,"count":0}],"isBlockCoverage":true},{"functionName":"onWriteComplete","ranges":[{"startOffset":1988,"endOffset":2498,"count":72},{"startOffset":2141,"endOffset":2230,"count":0},{"startOffset":2250,"endOffset":2366,"count":0}],"isBlockCoverage":true},{"functionName":"createWriteWrap","ranges":[{"startOffset":2500,"endOffset":2701,"count":109}],"isBlockCoverage":true},{"functionName":"writevGeneric","ranges":[{"startOffset":2703,"endOffset":3344,"count":2},{"startOffset":2860,"endOffset":2957,"count":0},{"startOffset":3049,"endOffset":3162,"count":4}],"isBlockCoverage":true},{"functionName":"writeGeneric","ranges":[{"startOffset":3346,"endOffset":3553,"count":107}],"isBlockCoverage":true},{"functionName":"afterWriteDispatched","ranges":[{"startOffset":3555,"endOffset":3864,"count":109},{"startOffset":3728,"endOffset":3793,"count":0},{"startOffset":3813,"endOffset":3828,"count":37},{"startOffset":3828,"endOffset":3862,"count":72}],"isBlockCoverage":true},{"functionName":"onStreamRead","ranges":[{"startOffset":3866,"endOffset":5991,"count":102},{"startOffset":4060,"endOffset":4080,"count":72},{"startOffset":4082,"endOffset":4818,"count":72},{"startOffset":4167,"endOffset":4426,"count":0},{"startOffset":4610,"endOffset":4797,"count":0},{"startOffset":4818,"endOffset":4839,"count":30},{"startOffset":4839,"endOffset":4856,"count":0},{"startOffset":4856,"endOffset":4882,"count":30},{"startOffset":4882,"endOffset":5071,"count":0},{"startOffset":5071,"endOffset":5156,"count":30},{"startOffset":5156,"endOffset":5223,"count":0},{"startOffset":5223,"endOffset":5989,"count":30},{"startOffset":5268,"endOffset":5308,"count":0},{"startOffset":5594,"endOffset":5801,"count":0}],"isBlockCoverage":true},{"functionName":"setStreamTimeout","ranges":[{"startOffset":5993,"endOffset":6895,"count":60},{"startOffset":6064,"endOffset":6076,"count":0},{"startOffset":6382,"endOffset":6567,"count":30},{"startOffset":6468,"endOffset":6509,"count":0},{"startOffset":6567,"endOffset":6878,"count":30},{"startOffset":6672,"endOffset":6703,"count":0},{"startOffset":6789,"endOffset":6830,"count":0}],"isBlockCoverage":true}]},{"scriptId":"112","url":"internal/dtrace.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":568,"count":1}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_REQUEST","ranges":[{"startOffset":97,"endOffset":105,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_RESPONSE","ranges":[{"startOffset":139,"endOffset":147,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_REQUEST","ranges":[{"startOffset":180,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_RESPONSE","ranges":[{"startOffset":222,"endOffset":230,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_NET_SERVER_CONNECTION","ranges":[{"startOffset":265,"endOffset":273,"count":30}],"isBlockCoverage":true},{"functionName":"DTRACE_NET_STREAM_END","ranges":[{"startOffset":301,"endOffset":309,"count":30}],"isBlockCoverage":true}]},{"scriptId":"113","url":"internal/tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6292,"count":1}],"isBlockCoverage":false},{"functionName":"warnOnDeactivatedColors","ranges":[{"startOffset":2451,"endOffset":2903,"count":0}],"isBlockCoverage":false},{"functionName":"getColorDepth","ranges":[{"startOffset":3061,"endOffset":5813,"count":34},{"startOffset":3265,"endOffset":3623,"count":0},{"startOffset":3964,"endOffset":3990,"count":0},{"startOffset":4028,"endOffset":4570,"count":0},{"startOffset":4588,"endOffset":4616,"count":0},{"startOffset":4632,"endOffset":4816,"count":0},{"startOffset":4851,"endOffset":4956,"count":0},{"startOffset":4992,"endOffset":5161,"count":0},{"startOffset":5166,"endOffset":5183,"count":0},{"startOffset":5188,"endOffset":5228,"count":0},{"startOffset":5233,"endOffset":5280,"count":0},{"startOffset":5322,"endOffset":5350,"count":0},{"startOffset":5380,"endOffset":5812,"count":0}],"isBlockCoverage":true},{"functionName":"hasColors","ranges":[{"startOffset":5815,"endOffset":6239,"count":0}],"isBlockCoverage":false}]},{"scriptId":"114","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/runner.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5423,"count":1}],"isBlockCoverage":true},{"functionName":"indent","ranges":[{"startOffset":154,"endOffset":297,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":299,"endOffset":468,"count":3}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":348,"endOffset":410,"count":24}],"isBlockCoverage":true},{"functionName":"getLogData","ranges":[{"startOffset":448,"endOffset":461,"count":3}],"isBlockCoverage":true},{"functionName":"runner","ranges":[{"startOffset":470,"endOffset":5396,"count":1},{"startOffset":615,"endOffset":619,"count":0}],"isBlockCoverage":true},{"functionName":"testRunner","ranges":[{"startOffset":858,"endOffset":4788,"count":3}],"isBlockCoverage":true},{"functionName":"createAssert","ranges":[{"startOffset":1181,"endOffset":2522,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1264,"endOffset":2515,"count":21},{"startOffset":1465,"endOffset":1509,"count":0},{"startOffset":1770,"endOffset":1787,"count":0},{"startOffset":1802,"endOffset":2489,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":2528,"endOffset":3324,"count":21},{"startOffset":2603,"endOffset":2628,"count":18},{"startOffset":2628,"endOffset":2738,"count":3},{"startOffset":2738,"endOffset":3104,"count":0},{"startOffset":3104,"endOffset":3177,"count":3},{"startOffset":3177,"endOffset":3237,"count":0},{"startOffset":3237,"endOffset":3323,"count":3}],"isBlockCoverage":true},{"functionName":"plan","ranges":[{"startOffset":3348,"endOffset":3410,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3602,"endOffset":3650,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4972,"endOffset":5023,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5062,"endOffset":5070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5095,"endOffset":5392,"count":1}],"isBlockCoverage":true}]},{"scriptId":"115","url":"assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30746,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadComparison","ranges":[{"startOffset":2200,"endOffset":2384,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":2964,"endOffset":2996,"count":0}],"isBlockCoverage":false},{"functionName":"innerFail","ranges":[{"startOffset":3550,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"fail","ranges":[{"startOffset":3847,"endOffset":4826,"count":0}],"isBlockCoverage":false},{"functionName":"findColumn","ranges":[{"startOffset":4942,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"getCode","ranges":[{"startOffset":5884,"endOffset":7528,"count":0}],"isBlockCoverage":false},{"functionName":"parseCode","ranges":[{"startOffset":7530,"endOffset":9132,"count":0}],"isBlockCoverage":false},{"functionName":"getErrMessage","ranges":[{"startOffset":9134,"endOffset":11930,"count":0}],"isBlockCoverage":false},{"functionName":"innerOk","ranges":[{"startOffset":11932,"endOffset":12539,"count":4},{"startOffset":11993,"endOffset":12537,"count":0}],"isBlockCoverage":true},{"functionName":"ok","ranges":[{"startOffset":12672,"endOffset":12733,"count":4}],"isBlockCoverage":true},{"functionName":"equal","ranges":[{"startOffset":12992,"endOffset":13363,"count":0}],"isBlockCoverage":false},{"functionName":"notEqual","ranges":[{"startOffset":13582,"endOffset":13957,"count":0}],"isBlockCoverage":false},{"functionName":"deepEqual","ranges":[{"startOffset":14157,"endOffset":14521,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepEqual","ranges":[{"startOffset":14727,"endOffset":15099,"count":0}],"isBlockCoverage":false},{"functionName":"deepStrictEqual","ranges":[{"startOffset":15342,"endOffset":15730,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepStrictEqual","ranges":[{"startOffset":15979,"endOffset":16375,"count":0}],"isBlockCoverage":false},{"functionName":"strictEqual","ranges":[{"startOffset":16580,"endOffset":16892,"count":17},{"startOffset":16658,"endOffset":16717,"count":0},{"startOffset":16753,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"notStrictEqual","ranges":[{"startOffset":17104,"endOffset":17424,"count":0}],"isBlockCoverage":false},{"functionName":"Comparison","ranges":[{"startOffset":17448,"endOffset":17821,"count":0}],"isBlockCoverage":false},{"functionName":"compareExceptionKey","ranges":[{"startOffset":17825,"endOffset":18542,"count":0}],"isBlockCoverage":false},{"functionName":"expectedException","ranges":[{"startOffset":18544,"endOffset":21902,"count":0}],"isBlockCoverage":false},{"functionName":"getActual","ranges":[{"startOffset":21904,"endOffset":22110,"count":0}],"isBlockCoverage":false},{"functionName":"checkIsPromise","ranges":[{"startOffset":22112,"endOffset":22476,"count":0}],"isBlockCoverage":false},{"functionName":"waitForActual","ranges":[{"startOffset":22478,"endOffset":23192,"count":0}],"isBlockCoverage":false},{"functionName":"expectsError","ranges":[{"startOffset":23194,"endOffset":24808,"count":0}],"isBlockCoverage":false},{"functionName":"hasMatchingError","ranges":[{"startOffset":24810,"endOffset":25407,"count":0}],"isBlockCoverage":false},{"functionName":"expectsNoError","ranges":[{"startOffset":25409,"endOffset":26059,"count":0}],"isBlockCoverage":false},{"functionName":"throws","ranges":[{"startOffset":26217,"endOffset":26311,"count":0}],"isBlockCoverage":false},{"functionName":"rejects","ranges":[{"startOffset":26490,"endOffset":26602,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotThrow","ranges":[{"startOffset":26764,"endOffset":26858,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotReject","ranges":[{"startOffset":27024,"endOffset":27136,"count":0}],"isBlockCoverage":false},{"functionName":"ifError","ranges":[{"startOffset":27264,"endOffset":28633,"count":0}],"isBlockCoverage":false},{"functionName":"internalMatch","ranges":[{"startOffset":28636,"endOffset":29708,"count":0}],"isBlockCoverage":false},{"functionName":"match","ranges":[{"startOffset":29904,"endOffset":29996,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotMatch","ranges":[{"startOffset":30204,"endOffset":30310,"count":0}],"isBlockCoverage":false},{"functionName":"strict","ranges":[{"startOffset":30442,"endOffset":30511,"count":0}],"isBlockCoverage":false}]},{"scriptId":"116","url":"internal/assert/assertion_error.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":17019,"count":1}],"isBlockCoverage":false},{"functionName":"copyError","ranges":[{"startOffset":1418,"endOffset":1694,"count":0}],"isBlockCoverage":false},{"functionName":"inspectValue","ranges":[{"startOffset":1696,"endOffset":2303,"count":0}],"isBlockCoverage":false},{"functionName":"createErrDiff","ranges":[{"startOffset":2305,"endOffset":10859,"count":0}],"isBlockCoverage":false},{"functionName":"AssertionError","ranges":[{"startOffset":10900,"endOffset":15822,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":15826,"endOffset":15901,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15905,"endOffset":16982,"count":0}],"isBlockCoverage":false}]},{"scriptId":"117","url":"internal/assert/calltracker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2344,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":395,"endOffset":422,"count":0}],"isBlockCoverage":false},{"functionName":"calls","ranges":[{"startOffset":426,"endOffset":1443,"count":0}],"isBlockCoverage":false},{"functionName":"report","ranges":[{"startOffset":1447,"endOffset":2078,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":2082,"endOffset":2310,"count":0}],"isBlockCoverage":false}]},{"scriptId":"118","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/concurrun/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1562,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":17,"endOffset":1561,"count":1},{"startOffset":112,"endOffset":187,"count":0},{"startOffset":234,"endOffset":240,"count":0}],"isBlockCoverage":true},{"functionName":"getRate","ranges":[{"startOffset":243,"endOffset":304,"count":9}],"isBlockCoverage":true},{"functionName":"runNext","ranges":[{"startOffset":400,"endOffset":879,"count":9}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":543,"endOffset":862,"count":9},{"startOffset":598,"endOffset":667,"count":0},{"startOffset":711,"endOffset":727,"count":4},{"startOffset":728,"endOffset":848,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":892,"endOffset":1558,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":923,"endOffset":1551,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1061,"endOffset":1515,"count":3},{"startOffset":1111,"endOffset":1178,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1225,"endOffset":1498,"count":3}],"isBlockCoverage":true}]},{"scriptId":"119","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/righto/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15767,"count":1},{"startOffset":137,"endOffset":159,"count":0},{"startOffset":15701,"endOffset":15741,"count":18}],"isBlockCoverage":true},{"functionName":"isRighto","ranges":[{"startOffset":162,"endOffset":265,"count":21},{"startOffset":219,"endOffset":262,"count":17}],"isBlockCoverage":true},{"functionName":"isThenable","ranges":[{"startOffset":267,"endOffset":354,"count":6},{"startOffset":336,"endOffset":351,"count":3}],"isBlockCoverage":true},{"functionName":"isResolvable","ranges":[{"startOffset":356,"endOffset":424,"count":6},{"startOffset":405,"endOffset":421,"count":3}],"isBlockCoverage":true},{"functionName":"isTake","ranges":[{"startOffset":426,"endOffset":505,"count":3},{"startOffset":484,"endOffset":502,"count":0}],"isBlockCoverage":true},{"functionName":"getCallLine","ranges":[{"startOffset":576,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"takeWrap","ranges":[{"startOffset":847,"endOffset":904,"count":0}],"isBlockCoverage":false},{"functionName":"take","ranges":[{"startOffset":906,"endOffset":1253,"count":0}],"isBlockCoverage":false},{"functionName":"resolveDependency","ranges":[{"startOffset":1255,"endOffset":1826,"count":3},{"startOffset":1319,"endOffset":1363,"count":0},{"startOffset":1421,"endOffset":1566,"count":0},{"startOffset":1567,"endOffset":1597,"count":0},{"startOffset":1598,"endOffset":1626,"count":0},{"startOffset":1627,"endOffset":1656,"count":0},{"startOffset":1662,"endOffset":1825,"count":0}],"isBlockCoverage":true},{"functionName":"traceGet","ranges":[{"startOffset":1828,"endOffset":2088,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2090,"endOffset":2393,"count":0}],"isBlockCoverage":false},{"functionName":"noOp","ranges":[{"startOffset":2406,"endOffset":2418,"count":0}],"isBlockCoverage":false},{"functionName":"proxy","ranges":[{"startOffset":2421,"endOffset":3114,"count":0}],"isBlockCoverage":false},{"functionName":"createIterator","ranges":[{"startOffset":3116,"endOffset":4145,"count":0}],"isBlockCoverage":false},{"functionName":"addTracing","ranges":[{"startOffset":4147,"endOffset":5488,"count":0}],"isBlockCoverage":false},{"functionName":"errorOut","ranges":[{"startOffset":5490,"endOffset":5766,"count":0}],"isBlockCoverage":false},{"functionName":"debugResolve","ranges":[{"startOffset":5768,"endOffset":6045,"count":0}],"isBlockCoverage":false},{"functionName":"resolveWithDependencies","ranges":[{"startOffset":6047,"endOffset":7514,"count":4},{"startOffset":6144,"endOffset":6346,"count":0},{"startOffset":6988,"endOffset":7042,"count":0},{"startOffset":7155,"endOffset":7191,"count":0},{"startOffset":7204,"endOffset":7249,"count":3},{"startOffset":7262,"endOffset":7316,"count":0},{"startOffset":7329,"endOffset":7392,"count":1},{"startOffset":7405,"endOffset":7496,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6381,"endOffset":6589,"count":6},{"startOffset":6422,"endOffset":6449,"count":3},{"startOffset":6450,"endOffset":6518,"count":0}],"isBlockCoverage":true},{"functionName":"complete","ranges":[{"startOffset":6601,"endOffset":6965,"count":4},{"startOffset":6644,"endOffset":6660,"count":0},{"startOffset":6661,"endOffset":6716,"count":0}],"isBlockCoverage":true},{"functionName":"resolveDependencies","ranges":[{"startOffset":7516,"endOffset":8287,"count":4},{"startOffset":7662,"endOffset":7697,"count":0},{"startOffset":8070,"endOffset":8285,"count":6},{"startOffset":8106,"endOffset":8125,"count":3},{"startOffset":8126,"endOffset":8285,"count":3}],"isBlockCoverage":true},{"functionName":"dependencyResolved","ranges":[{"startOffset":7703,"endOffset":8028,"count":6},{"startOffset":7776,"endOffset":7807,"count":0},{"startOffset":7826,"endOffset":7904,"count":0},{"startOffset":7974,"endOffset":8022,"count":4}],"isBlockCoverage":true},{"functionName":"resolver","ranges":[{"startOffset":8289,"endOffset":9506,"count":4},{"startOffset":8407,"endOffset":8439,"count":0},{"startOffset":8467,"endOffset":8570,"count":0},{"startOffset":8610,"endOffset":8673,"count":0},{"startOffset":8698,"endOffset":8784,"count":0},{"startOffset":8912,"endOffset":8951,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8813,"endOffset":8883,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8839,"endOffset":8876,"count":4}],"isBlockCoverage":true},{"functionName":"dependenciesResolved","ranges":[{"startOffset":8973,"endOffset":9285,"count":4},{"startOffset":9046,"endOffset":9235,"count":0}],"isBlockCoverage":true},{"functionName":"thenMethod","ranges":[{"startOffset":9509,"endOffset":9685,"count":0}],"isBlockCoverage":false},{"functionName":"catchMethod","ranges":[{"startOffset":9687,"endOffset":9834,"count":0}],"isBlockCoverage":false},{"functionName":"finallyMethod","ranges":[{"startOffset":9836,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"righto","ranges":[{"startOffset":9985,"endOffset":10814,"count":4},{"startOffset":10097,"endOffset":10166,"count":0},{"startOffset":10188,"endOffset":10206,"count":0},{"startOffset":10207,"endOffset":10288,"count":0},{"startOffset":10745,"endOffset":10791,"count":0}],"isBlockCoverage":true},{"functionName":"righto.sync","ranges":[{"startOffset":10830,"endOffset":11156,"count":0}],"isBlockCoverage":false},{"functionName":"righto.all","ranges":[{"startOffset":11172,"endOffset":11622,"count":1},{"startOffset":11239,"endOffset":11279,"count":0},{"startOffset":11489,"endOffset":11593,"count":0}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":11285,"endOffset":11465,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11345,"endOffset":11442,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11513,"endOffset":11579,"count":0}],"isBlockCoverage":false},{"functionName":"righto.reduce","ranges":[{"startOffset":11641,"endOffset":12347,"count":0}],"isBlockCoverage":false},{"functionName":"righto.from","ranges":[{"startOffset":12364,"endOffset":12716,"count":0}],"isBlockCoverage":false},{"functionName":"righto.mate","ranges":[{"startOffset":12733,"endOffset":12915,"count":0}],"isBlockCoverage":false},{"functionName":"righto.take","ranges":[{"startOffset":12932,"endOffset":13086,"count":0}],"isBlockCoverage":false},{"functionName":"righto.after","ranges":[{"startOffset":13104,"endOffset":13352,"count":0}],"isBlockCoverage":false},{"functionName":"righto.resolve","ranges":[{"startOffset":13372,"endOffset":14272,"count":0}],"isBlockCoverage":false},{"functionName":"righto.value","ranges":[{"startOffset":14324,"endOffset":14459,"count":0}],"isBlockCoverage":false},{"functionName":"righto.surely","ranges":[{"startOffset":14478,"endOffset":14711,"count":0}],"isBlockCoverage":false},{"functionName":"righto.handle","ranges":[{"startOffset":14730,"endOffset":15022,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fail","ranges":[{"startOffset":15039,"endOffset":15134,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fork","ranges":[{"startOffset":15151,"endOffset":15383,"count":0}],"isBlockCoverage":false},{"functionName":"righto.proxy","ranges":[{"startOffset":15498,"endOffset":15676,"count":0}],"isBlockCoverage":false}]},{"scriptId":"120","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/abbott/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":757,"count":1}],"isBlockCoverage":true},{"functionName":"checkIfPromise","ranges":[{"startOffset":0,"endOffset":221,"count":0}],"isBlockCoverage":false},{"functionName":"abbott","ranges":[{"startOffset":240,"endOffset":756,"count":0}],"isBlockCoverage":false}]},{"scriptId":"121","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/setimmediate/setImmediate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6473,"count":1},{"startOffset":6447,"endOffset":6453,"count":0},{"startOffset":6463,"endOffset":6469,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1,"endOffset":6386,"count":1},{"startOffset":103,"endOffset":5529,"count":0},{"startOffset":5555,"endOffset":5577,"count":0},{"startOffset":5578,"endOffset":5588,"count":0},{"startOffset":5589,"endOffset":5597,"count":0},{"startOffset":5722,"endOffset":6385,"count":0}],"isBlockCoverage":true},{"functionName":"setImmediate","ranges":[{"startOffset":290,"endOffset":853,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":859,"endOffset":936,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":942,"endOffset":1442,"count":0}],"isBlockCoverage":false},{"functionName":"runIfPresent","ranges":[{"startOffset":1448,"endOffset":2272,"count":0}],"isBlockCoverage":false},{"functionName":"installNextTickImplementation","ranges":[{"startOffset":2278,"endOffset":2453,"count":0}],"isBlockCoverage":false},{"functionName":"canUsePostMessage","ranges":[{"startOffset":2459,"endOffset":3131,"count":0}],"isBlockCoverage":false},{"functionName":"installPostMessageImplementation","ranges":[{"startOffset":3137,"endOffset":4126,"count":0}],"isBlockCoverage":false},{"functionName":"installMessageChannelImplementation","ranges":[{"startOffset":4132,"endOffset":4470,"count":0}],"isBlockCoverage":false},{"functionName":"installReadyStateChangeImplementation","ranges":[{"startOffset":4476,"endOffset":5181,"count":0}],"isBlockCoverage":false},{"functionName":"installSetTimeoutImplementation","ranges":[{"startOffset":5187,"endOffset":5344,"count":0}],"isBlockCoverage":false}]},{"scriptId":"122","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1765,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":146,"endOffset":186,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":257,"endOffset":298,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":369,"endOffset":410,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":481,"endOffset":522,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":594,"endOffset":636,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":712,"endOffset":758,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":835,"endOffset":882,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":960,"endOffset":1008,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1082,"endOffset":1126,"count":2}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":1670,"endOffset":1765,"count":9},{"startOffset":1744,"endOffset":1762,"count":0}],"isBlockCoverage":true}]},{"scriptId":"123","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3618,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v1","ranges":[{"startOffset":627,"endOffset":3570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"124","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/rng.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":549,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":162,"endOffset":257,"count":1},{"startOffset":230,"endOffset":235,"count":0}],"isBlockCoverage":true},{"functionName":"rng","ranges":[{"startOffset":370,"endOffset":549,"count":10},{"startOffset":426,"endOffset":496,"count":1}],"isBlockCoverage":true}]},{"scriptId":"125","url":"crypto.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7347,"count":1}],"isBlockCoverage":false},{"functionName":"createHash","ranges":[{"startOffset":3138,"endOffset":3220,"count":7}],"isBlockCoverage":true},{"functionName":"createCipher","ranges":[{"startOffset":3222,"endOffset":3322,"count":0}],"isBlockCoverage":false},{"functionName":"createCipheriv","ranges":[{"startOffset":3324,"endOffset":3426,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipher","ranges":[{"startOffset":3428,"endOffset":3532,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipheriv","ranges":[{"startOffset":3534,"endOffset":3640,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellman","ranges":[{"startOffset":3642,"endOffset":3798,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellmanGroup","ranges":[{"startOffset":3800,"endOffset":3882,"count":0}],"isBlockCoverage":false},{"functionName":"createECDH","ranges":[{"startOffset":3884,"endOffset":3940,"count":0}],"isBlockCoverage":false},{"functionName":"createHmac","ranges":[{"startOffset":3942,"endOffset":4024,"count":0}],"isBlockCoverage":false},{"functionName":"createSign","ranges":[{"startOffset":4026,"endOffset":4108,"count":0}],"isBlockCoverage":false},{"functionName":"createVerify","ranges":[{"startOffset":4110,"endOffset":4196,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsDisabled","ranges":[{"startOffset":5216,"endOffset":5289,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsForced","ranges":[{"startOffset":5291,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsDisabled","ranges":[{"startOffset":5381,"endOffset":5423,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsForced","ranges":[{"startOffset":5425,"endOffset":5465,"count":0}],"isBlockCoverage":false}]},{"scriptId":"126","url":"internal/crypto/random.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9108,"count":1}],"isBlockCoverage":false},{"functionName":"assertOffset","ranges":[{"startOffset":751,"endOffset":1117,"count":1},{"startOffset":986,"endOffset":1068,"count":0}],"isBlockCoverage":true},{"functionName":"assertSize","ranges":[{"startOffset":1119,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"randomBytes","ranges":[{"startOffset":1582,"endOffset":2136,"count":0}],"isBlockCoverage":false},{"functionName":"randomFillSync","ranges":[{"startOffset":2138,"endOffset":2613,"count":1},{"startOffset":2218,"endOffset":2290,"count":0},{"startOffset":2336,"endOffset":2340,"count":0},{"startOffset":2473,"endOffset":2550,"count":0}],"isBlockCoverage":true},{"functionName":"randomFill","ranges":[{"startOffset":2615,"endOffset":3592,"count":0}],"isBlockCoverage":false},{"functionName":"randomInt","ranges":[{"startOffset":3830,"endOffset":5710,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":5712,"endOffset":5779,"count":1},{"startOffset":5754,"endOffset":5763,"count":0}],"isBlockCoverage":true},{"functionName":"getBufferedUUID","ranges":[{"startOffset":6241,"endOffset":6598,"count":0}],"isBlockCoverage":false},{"functionName":"randomUUID","ranges":[{"startOffset":6600,"endOffset":9010,"count":0}],"isBlockCoverage":false}]},{"scriptId":"127","url":"internal/crypto/pbkdf2.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2373,"count":1}],"isBlockCoverage":false},{"functionName":"pbkdf2","ranges":[{"startOffset":471,"endOffset":1342,"count":0}],"isBlockCoverage":false},{"functionName":"pbkdf2Sync","ranges":[{"startOffset":1344,"endOffset":1755,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":1757,"endOffset":2160,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":2162,"endOffset":2326,"count":0}],"isBlockCoverage":false}]},{"scriptId":"128","url":"internal/crypto/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2336,"count":1}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":704,"endOffset":765,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultEncoding","ranges":[{"startOffset":767,"endOffset":826,"count":7}],"isBlockCoverage":true},{"functionName":"toBuf","ranges":[{"startOffset":1001,"endOffset":1180,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1214,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1291,"endOffset":1333,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1367,"endOffset":1409,"count":0}],"isBlockCoverage":false},{"functionName":"setEngine","ranges":[{"startOffset":1413,"endOffset":1779,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1824,"endOffset":2172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"129","url":"internal/crypto/scrypt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3695,"count":1}],"isBlockCoverage":false},{"functionName":"scrypt","ranges":[{"startOffset":587,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"scryptSync","ranges":[{"startOffset":1426,"endOffset":1851,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1853,"endOffset":2095,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":2097,"endOffset":3652,"count":0}],"isBlockCoverage":false}]},{"scriptId":"130","url":"internal/crypto/keygen.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10082,"count":1}],"isBlockCoverage":false},{"functionName":"wrapKey","ranges":[{"startOffset":954,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPair","ranges":[{"startOffset":1084,"endOffset":1739,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPairSync","ranges":[{"startOffset":1865,"endOffset":1979,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1981,"endOffset":2324,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":2326,"endOffset":3450,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":3452,"endOffset":10021,"count":0}],"isBlockCoverage":false}]},{"scriptId":"131","url":"internal/crypto/keys.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1513,"endOffset":3483,"count":1}],"isBlockCoverage":true},{"functionName":"KeyObject","ranges":[{"startOffset":1623,"endOffset":2139,"count":0}],"isBlockCoverage":false},{"functionName":"get type","ranges":[{"startOffset":2145,"endOffset":2192,"count":0}],"isBlockCoverage":false},{"functionName":"SecretKeyObject","ranges":[{"startOffset":2246,"endOffset":2304,"count":0}],"isBlockCoverage":false},{"functionName":"get symmetricKeySize","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2396,"endOffset":2449,"count":0}],"isBlockCoverage":false},{"functionName":"get asymmetricKeyType","ranges":[{"startOffset":2567,"endOffset":2719,"count":0}],"isBlockCoverage":false},{"functionName":"PublicKeyObject","ranges":[{"startOffset":2783,"endOffset":2841,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2847,"endOffset":3031,"count":0}],"isBlockCoverage":false},{"functionName":"PrivateKeyObject","ranges":[{"startOffset":3096,"endOffset":3155,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":3161,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormat","ranges":[{"startOffset":3487,"endOffset":3814,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyType","ranges":[{"startOffset":3816,"endOffset":4668,"count":0}],"isBlockCoverage":false},{"functionName":"option","ranges":[{"startOffset":4670,"endOffset":4766,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormatAndType","ranges":[{"startOffset":4768,"endOffset":5362,"count":0}],"isBlockCoverage":false},{"functionName":"isStringOrBuffer","ranges":[{"startOffset":5364,"endOffset":5458,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":5460,"endOffset":6760,"count":0}],"isBlockCoverage":false},{"functionName":"parsePublicKeyEncoding","ranges":[{"startOffset":6959,"endOffset":7095,"count":0}],"isBlockCoverage":false},{"functionName":"parsePrivateKeyEncoding","ranges":[{"startOffset":7295,"endOffset":7411,"count":0}],"isBlockCoverage":false},{"functionName":"getKeyObjectHandle","ranges":[{"startOffset":7413,"endOffset":7975,"count":0}],"isBlockCoverage":false},{"functionName":"prepareAsymmetricKey","ranges":[{"startOffset":7977,"endOffset":9223,"count":0}],"isBlockCoverage":false},{"functionName":"preparePrivateKey","ranges":[{"startOffset":9225,"endOffset":9313,"count":0}],"isBlockCoverage":false},{"functionName":"preparePublicOrPrivateKey","ranges":[{"startOffset":9315,"endOffset":9410,"count":0}],"isBlockCoverage":false},{"functionName":"prepareSecretKey","ranges":[{"startOffset":9412,"endOffset":9903,"count":0}],"isBlockCoverage":false},{"functionName":"createSecretKey","ranges":[{"startOffset":9905,"endOffset":10190,"count":0}],"isBlockCoverage":false},{"functionName":"createPublicKey","ranges":[{"startOffset":10192,"endOffset":10429,"count":0}],"isBlockCoverage":false},{"functionName":"createPrivateKey","ranges":[{"startOffset":10431,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"isKeyObject","ranges":[{"startOffset":10702,"endOffset":10766,"count":0}],"isBlockCoverage":false}]},{"scriptId":"132","url":"internal/crypto/diffiehellman.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8338,"count":1}],"isBlockCoverage":false},{"functionName":"DiffieHellman","ranges":[{"startOffset":970,"endOffset":2743,"count":0}],"isBlockCoverage":false},{"functionName":"DiffieHellmanGroup","ranges":[{"startOffset":2746,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"dhGenerateKeys","ranges":[{"startOffset":3161,"endOffset":3323,"count":0}],"isBlockCoverage":false},{"functionName":"dhComputeSecret","ranges":[{"startOffset":3437,"endOffset":3761,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrime","ranges":[{"startOffset":3860,"endOffset":4016,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetGenerator","ranges":[{"startOffset":4127,"endOffset":4299,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPublicKey","ranges":[{"startOffset":4410,"endOffset":4570,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrivateKey","ranges":[{"startOffset":4684,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"setPublicKey","ranges":[{"startOffset":4888,"endOffset":5042,"count":0}],"isBlockCoverage":false},{"functionName":"setPrivateKey","ranges":[{"startOffset":5086,"endOffset":5242,"count":0}],"isBlockCoverage":false},{"functionName":"ECDH","ranges":[{"startOffset":5246,"endOffset":5400,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeys","ranges":[{"startOffset":5711,"endOffset":5833,"count":0}],"isBlockCoverage":false},{"functionName":"getPublicKey","ranges":[{"startOffset":5866,"endOffset":6064,"count":0}],"isBlockCoverage":false},{"functionName":"convertKey","ranges":[{"startOffset":6085,"endOffset":6603,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":6606,"endOffset":6741,"count":0}],"isBlockCoverage":false},{"functionName":"getFormat","ranges":[{"startOffset":6743,"endOffset":7066,"count":0}],"isBlockCoverage":false},{"functionName":"diffieHellman","ranges":[{"startOffset":7136,"endOffset":8251,"count":0}],"isBlockCoverage":false}]},{"scriptId":"133","url":"internal/crypto/cipher.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8473,"count":1}],"isBlockCoverage":false},{"functionName":"rsaFunctionFor","ranges":[{"startOffset":1054,"endOffset":1914,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1122,"endOffset":1911,"count":0}],"isBlockCoverage":false},{"functionName":"getDecoder","ranges":[{"startOffset":2415,"endOffset":2732,"count":0}],"isBlockCoverage":false},{"functionName":"getUIntOption","ranges":[{"startOffset":2734,"endOffset":2955,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherBase","ranges":[{"startOffset":2957,"endOffset":3366,"count":0}],"isBlockCoverage":false},{"functionName":"createCipher","ranges":[{"startOffset":3368,"endOffset":3590,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherWithIV","ranges":[{"startOffset":3592,"endOffset":3851,"count":0}],"isBlockCoverage":false},{"functionName":"Cipher","ranges":[{"startOffset":3853,"endOffset":4043,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":4186,"endOffset":4302,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":4331,"endOffset":4469,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":4498,"endOffset":5148,"count":0}],"isBlockCoverage":false},{"functionName":"final","ranges":[{"startOffset":5177,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"setAutoPadding","ranges":[{"startOffset":5518,"endOffset":5665,"count":0}],"isBlockCoverage":false},{"functionName":"getAuthTag","ranges":[{"startOffset":5698,"endOffset":5858,"count":0}],"isBlockCoverage":false},{"functionName":"setAuthTag","ranges":[{"startOffset":5862,"endOffset":6205,"count":0}],"isBlockCoverage":false},{"functionName":"setAAD","ranges":[{"startOffset":6233,"endOffset":6660,"count":0}],"isBlockCoverage":false},{"functionName":"Cipheriv","ranges":[{"startOffset":6663,"endOffset":6862,"count":0}],"isBlockCoverage":false},{"functionName":"addCipherPrototypeFunctions","ranges":[{"startOffset":6864,"endOffset":7455,"count":3},{"startOffset":7260,"endOffset":7333,"count":1},{"startOffset":7333,"endOffset":7395,"count":2}],"isBlockCoverage":true},{"functionName":"Decipher","ranges":[{"startOffset":7611,"endOffset":7808,"count":0}],"isBlockCoverage":false},{"functionName":"Decipheriv","ranges":[{"startOffset":7965,"endOffset":8171,"count":0}],"isBlockCoverage":false}]},{"scriptId":"134","url":"internal/streams/lazy_transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1669,"count":1}],"isBlockCoverage":false},{"functionName":"LazyTransform","ranges":[{"startOffset":468,"endOffset":530,"count":7}],"isBlockCoverage":true},{"functionName":"makeGetter","ranges":[{"startOffset":662,"endOffset":970,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":699,"endOffset":967,"count":0}],"isBlockCoverage":false},{"functionName":"makeSetter","ranges":[{"startOffset":972,"endOffset":1167,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1009,"endOffset":1164,"count":0}],"isBlockCoverage":false}]},{"scriptId":"135","url":"internal/crypto/sig.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5946,"count":1}],"isBlockCoverage":false},{"functionName":"Sign","ranges":[{"startOffset":729,"endOffset":977,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":1100,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1219,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"getPadding","ranges":[{"startOffset":1583,"endOffset":1658,"count":0}],"isBlockCoverage":false},{"functionName":"getSaltLength","ranges":[{"startOffset":1660,"endOffset":1741,"count":0}],"isBlockCoverage":false},{"functionName":"getDSASignatureEncoding","ranges":[{"startOffset":1743,"endOffset":2087,"count":0}],"isBlockCoverage":false},{"functionName":"getIntOption","ranges":[{"startOffset":2089,"endOffset":2321,"count":0}],"isBlockCoverage":false},{"functionName":"sign","ranges":[{"startOffset":2345,"endOffset":3008,"count":0}],"isBlockCoverage":false},{"functionName":"signOneShot","ranges":[{"startOffset":3011,"endOffset":3809,"count":0}],"isBlockCoverage":false},{"functionName":"Verify","ranges":[{"startOffset":3811,"endOffset":4067,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":4295,"endOffset":4929,"count":0}],"isBlockCoverage":false},{"functionName":"verifyOneShot","ranges":[{"startOffset":4932,"endOffset":5873,"count":0}],"isBlockCoverage":false}]},{"scriptId":"136","url":"internal/crypto/hash.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3801,"count":1}],"isBlockCoverage":false},{"functionName":"Hash","ranges":[{"startOffset":764,"endOffset":1272,"count":7},{"startOffset":835,"endOffset":871,"count":0},{"startOffset":998,"endOffset":1017,"count":0},{"startOffset":1018,"endOffset":1044,"count":0},{"startOffset":1090,"endOffset":1137,"count":0}],"isBlockCoverage":true},{"functionName":"copy","ranges":[{"startOffset":1403,"endOffset":1571,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":1602,"endOffset":1707,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":1734,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1841,"endOffset":2353,"count":7},{"startOffset":1982,"endOffset":2020,"count":0},{"startOffset":2097,"endOffset":2243,"count":0},{"startOffset":2294,"endOffset":2336,"count":0}],"isBlockCoverage":true},{"functionName":"digest","ranges":[{"startOffset":2381,"endOffset":2726,"count":7},{"startOffset":2474,"endOffset":2512,"count":0},{"startOffset":2547,"endOffset":2570,"count":0}],"isBlockCoverage":true},{"functionName":"Hmac","ranges":[{"startOffset":2730,"endOffset":3058,"count":0}],"isBlockCoverage":false},{"functionName":"digest","ranges":[{"startOffset":3239,"endOffset":3658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"137","url":"internal/crypto/certificate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1119,"count":1}],"isBlockCoverage":false},{"functionName":"verifySpkac","ranges":[{"startOffset":247,"endOffset":345,"count":0}],"isBlockCoverage":false},{"functionName":"exportPublicKey","ranges":[{"startOffset":347,"endOffset":476,"count":0}],"isBlockCoverage":false},{"functionName":"exportChallenge","ranges":[{"startOffset":478,"endOffset":607,"count":0}],"isBlockCoverage":false},{"functionName":"Certificate","ranges":[{"startOffset":695,"endOffset":789,"count":0}],"isBlockCoverage":false}]},{"scriptId":"138","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/stringify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1667,"count":1},{"startOffset":442,"endOffset":499,"count":256}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":501,"endOffset":1612,"count":10},{"startOffset":1537,"endOffset":1594,"count":0}],"isBlockCoverage":true}]},{"scriptId":"139","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/validate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":410,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":168,"endOffset":263,"count":1},{"startOffset":242,"endOffset":260,"count":0}],"isBlockCoverage":true},{"functionName":"validate","ranges":[{"startOffset":265,"endOffset":356,"count":10}],"isBlockCoverage":true}]},{"scriptId":"140","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/regex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true}]},{"scriptId":"141","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v3.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":414,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":218,"endOffset":313,"count":2},{"startOffset":292,"endOffset":310,"count":0}],"isBlockCoverage":true}]},{"scriptId":"142","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v35.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2008,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":275,"endOffset":370,"count":2},{"startOffset":349,"endOffset":367,"count":0}],"isBlockCoverage":true},{"functionName":"stringToBytes","ranges":[{"startOffset":372,"endOffset":580,"count":0}],"isBlockCoverage":false},{"functionName":"_default","ranges":[{"startOffset":725,"endOffset":2008,"count":2}],"isBlockCoverage":true},{"functionName":"generateUUID","ranges":[{"startOffset":772,"endOffset":1736,"count":0}],"isBlockCoverage":false}]},{"scriptId":"143","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1380,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":271,"endOffset":1329,"count":0}],"isBlockCoverage":false}]},{"scriptId":"144","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/md5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":550,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"md5","ranges":[{"startOffset":262,"endOffset":501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"145","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v4.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":860,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v4","ranges":[{"startOffset":330,"endOffset":812,"count":10},{"startOffset":646,"endOffset":769,"count":0}],"isBlockCoverage":true}]},{"scriptId":"146","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":417,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":220,"endOffset":315,"count":2},{"startOffset":294,"endOffset":312,"count":0}],"isBlockCoverage":true}]},{"scriptId":"147","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/sha1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":553,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"sha1","ranges":[{"startOffset":262,"endOffset":503,"count":0}],"isBlockCoverage":false}]},{"scriptId":"148","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/nil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":188,"count":1}],"isBlockCoverage":true}]},{"scriptId":"149","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"version","ranges":[{"startOffset":271,"endOffset":421,"count":0}],"isBlockCoverage":false}]},{"scriptId":"150","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6073,"count":1},{"startOffset":1532,"endOffset":1764,"count":44},{"startOffset":2057,"endOffset":2352,"count":8},{"startOffset":2386,"endOffset":2752,"count":8},{"startOffset":5968,"endOffset":5971,"count":0}],"isBlockCoverage":true},{"functionName":"applyOptions","ranges":[{"startOffset":430,"endOffset":809,"count":2},{"startOffset":477,"endOffset":558,"count":1},{"startOffset":560,"endOffset":638,"count":0},{"startOffset":729,"endOffset":732,"count":0},{"startOffset":778,"endOffset":790,"count":1},{"startOffset":791,"endOffset":806,"count":1}],"isBlockCoverage":true},{"functionName":"ChalkClass","ranges":[{"startOffset":832,"endOffset":941,"count":0}],"isBlockCoverage":false},{"functionName":"chalkFactory","ranges":[{"startOffset":966,"endOffset":1408,"count":2}],"isBlockCoverage":true},{"functionName":"chalk.template","ranges":[{"startOffset":1048,"endOffset":1106,"count":0}],"isBlockCoverage":false},{"functionName":"chalk.template.constructor","ranges":[{"startOffset":1235,"endOffset":1340,"count":0}],"isBlockCoverage":false},{"functionName":"Chalk","ranges":[{"startOffset":1411,"endOffset":1469,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1559,"endOffset":1758,"count":4}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1786,"endOffset":1933,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2080,"endOffset":2346,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2476,"endOffset":2746,"count":0}],"isBlockCoverage":false},{"functionName":"Object.defineProperties","ranges":[{"startOffset":2792,"endOffset":2800,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2848,"endOffset":2892,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":2896,"endOffset":2946,"count":0}],"isBlockCoverage":false},{"functionName":"createStyler","ranges":[{"startOffset":2976,"endOffset":3250,"count":4},{"startOffset":3101,"endOffset":3184,"count":0}],"isBlockCoverage":true},{"functionName":"createBuilder","ranges":[{"startOffset":3275,"endOffset":4073,"count":4}],"isBlockCoverage":true},{"functionName":"builder","ranges":[{"startOffset":3323,"endOffset":3790,"count":0}],"isBlockCoverage":false},{"functionName":"applyStyle","ranges":[{"startOffset":4095,"endOffset":5135,"count":0}],"isBlockCoverage":false},{"functionName":"chalkTag","ranges":[{"startOffset":5169,"endOffset":5764,"count":0}],"isBlockCoverage":false}]},{"scriptId":"151","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ansi-styles/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4139,"count":1}],"isBlockCoverage":true},{"functionName":"wrapAnsi16","ranges":[{"startOffset":34,"endOffset":129,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi256","ranges":[{"startOffset":152,"endOffset":255,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi16m","ranges":[{"startOffset":278,"endOffset":402,"count":0}],"isBlockCoverage":false},{"functionName":"ansi2ansi","ranges":[{"startOffset":423,"endOffset":429,"count":0}],"isBlockCoverage":false},{"functionName":"rgb2rgb","ranges":[{"startOffset":447,"endOffset":469,"count":0}],"isBlockCoverage":false},{"functionName":"setLazyProperty","ranges":[{"startOffset":496,"endOffset":786,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":575,"endOffset":737,"count":0}],"isBlockCoverage":false},{"functionName":"makeDynamicStyles","ranges":[{"startOffset":879,"endOffset":1400,"count":0}],"isBlockCoverage":false},{"functionName":"assembleStyles","ranges":[{"startOffset":1403,"endOffset":4021,"count":5},{"startOffset":2869,"endOffset":3201,"count":15},{"startOffset":2929,"endOffset":3108,"count":220}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3401,"endOffset":3464,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3509,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3619,"endOffset":3678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3722,"endOffset":3784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3831,"endOffset":3895,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3942,"endOffset":4000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"152","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/supports-color/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2748,"count":1},{"startOffset":250,"endOffset":270,"count":0},{"startOffset":374,"endOffset":394,"count":0},{"startOffset":422,"endOffset":646,"count":0}],"isBlockCoverage":true},{"functionName":"translateLevel","ranges":[{"startOffset":648,"endOffset":806,"count":2},{"startOffset":699,"endOffset":719,"count":0}],"isBlockCoverage":true},{"functionName":"supportsColor","ranges":[{"startOffset":808,"endOffset":2439,"count":2},{"startOffset":881,"endOffset":897,"count":0},{"startOffset":985,"endOffset":1001,"count":0},{"startOffset":1030,"endOffset":1046,"count":0},{"startOffset":1080,"endOffset":1107,"count":0},{"startOffset":1109,"endOffset":1125,"count":0},{"startOffset":1184,"endOffset":1202,"count":0},{"startOffset":1239,"endOffset":1594,"count":0},{"startOffset":1614,"endOffset":1794,"count":0},{"startOffset":1828,"endOffset":1909,"count":0},{"startOffset":1963,"endOffset":2438,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1706,"endOffset":1725,"count":0}],"isBlockCoverage":false},{"functionName":"getSupportLevel","ranges":[{"startOffset":2441,"endOffset":2570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"153","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/has-flag/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":330,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":32,"endOffset":328,"count":16},{"startOffset":102,"endOffset":106,"count":0},{"startOffset":128,"endOffset":133,"count":0},{"startOffset":262,"endOffset":325,"count":0}],"isBlockCoverage":true}]},{"scriptId":"154","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1035,"count":1}],"isBlockCoverage":true},{"functionName":"stringReplaceAll","ranges":[{"startOffset":40,"endOffset":505,"count":0}],"isBlockCoverage":false},{"functionName":"stringEncaseCRLFWithFirstIndex","ranges":[{"startOffset":547,"endOffset":959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"155","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":107,"count":1}],"isBlockCoverage":true}]},{"scriptId":"156","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createClient.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3821,"count":1}],"isBlockCoverage":true},{"functionName":"proxyEventEmitter","ranges":[{"startOffset":119,"endOffset":396,"count":30}],"isBlockCoverage":true},{"functionName":"sourceEmitter.emit","ranges":[{"startOffset":270,"endOffset":393,"count":487}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":426,"endOffset":553,"count":30},{"startOffset":484,"endOffset":542,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":501,"endOffset":524,"count":0}],"isBlockCoverage":false},{"functionName":"createClient","ranges":[{"startOffset":557,"endOffset":3788,"count":30}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":803,"endOffset":1116,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":875,"endOffset":1086,"count":37},{"startOffset":1019,"endOffset":1080,"count":0}],"isBlockCoverage":true},{"functionName":"reconnect","ranges":[{"startOffset":1142,"endOffset":1330,"count":0}],"isBlockCoverage":false},{"functionName":"makeConnection","ranges":[{"startOffset":1334,"endOffset":2387,"count":30},{"startOffset":1414,"endOffset":1445,"count":0},{"startOffset":1552,"endOffset":1641,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1714,"endOffset":1843,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1771,"endOffset":1812,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1870,"endOffset":2111,"count":30},{"startOffset":1929,"endOffset":1975,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2002,"endOffset":2080,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2138,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"waitUntilConnected","ranges":[{"startOffset":2412,"endOffset":2547,"count":37},{"startOffset":2472,"endOffset":2511,"count":32},{"startOffset":2511,"endOffset":2546,"count":5}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":2551,"endOffset":2951,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2644,"endOffset":2945,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2692,"endOffset":2888,"count":37},{"startOffset":2724,"endOffset":2807,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":3165,"endOffset":3770,"count":30},{"startOffset":3220,"endOffset":3269,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3326,"endOffset":3355,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3384,"endOffset":3762,"count":30},{"startOffset":3452,"endOffset":3479,"count":0},{"startOffset":3509,"endOffset":3587,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3618,"endOffset":3656,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3688,"endOffset":3726,"count":0}],"isBlockCoverage":false}]},{"scriptId":"157","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ndjson-fe/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":799,"count":1}],"isBlockCoverage":true},{"functionName":"ndJsonFe","ranges":[{"startOffset":41,"endOffset":770,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":148,"endOffset":616,"count":72}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":222,"endOffset":610,"count":146},{"startOffset":262,"endOffset":269,"count":72},{"startOffset":269,"endOffset":343,"count":74},{"startOffset":343,"endOffset":546,"count":0},{"startOffset":546,"endOffset":609,"count":74}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":678,"endOffset":715,"count":72}],"isBlockCoverage":true},{"functionName":"end","ranges":[{"startOffset":728,"endOffset":757,"count":30}],"isBlockCoverage":true}]},{"scriptId":"158","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1397,"count":1}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":40,"endOffset":1364,"count":7},{"startOffset":1025,"endOffset":1063,"count":0}],"isBlockCoverage":true},{"functionName":"wrapper","ranges":[{"startOffset":107,"endOffset":946,"count":30}],"isBlockCoverage":true},{"functionName":"next","ranges":[{"startOffset":209,"endOffset":659,"count":37},{"startOffset":562,"endOffset":653,"count":0}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":320,"endOffset":419,"count":0}],"isBlockCoverage":false},{"functionName":"reply","ranges":[{"startOffset":438,"endOffset":541,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":603,"endOffset":643,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":710,"endOffset":916,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":1103,"endOffset":1151,"count":7}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":1165,"endOffset":1357,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1197,"endOffset":1324,"count":30},{"startOffset":1261,"endOffset":1316,"count":0}],"isBlockCoverage":true}]},{"scriptId":"159","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/driver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5128,"count":1}],"isBlockCoverage":true},{"functionName":"createEjdbDriver","ranges":[{"startOffset":208,"endOffset":5093,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":356,"endOffset":471,"count":0}],"isBlockCoverage":false},{"functionName":"getDatabaseConnection","ranges":[{"startOffset":477,"endOffset":920,"count":65},{"startOffset":548,"endOffset":653,"count":0},{"startOffset":690,"endOffset":737,"count":57},{"startOffset":737,"endOffset":919,"count":8}],"isBlockCoverage":true},{"functionName":"count","ranges":[{"startOffset":924,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":1428,"endOffset":1949,"count":35},{"startOffset":1510,"endOffset":1615,"count":0},{"startOffset":1632,"endOffset":1657,"count":0},{"startOffset":1659,"endOffset":1691,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1926,"endOffset":1943,"count":3}],"isBlockCoverage":true},{"functionName":"post","ranges":[{"startOffset":1953,"endOffset":2477,"count":30},{"startOffset":2017,"endOffset":2122,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2288,"endOffset":2373,"count":90}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":2481,"endOffset":3299,"count":0}],"isBlockCoverage":false},{"functionName":"patch","ranges":[{"startOffset":3303,"endOffset":4174,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":4178,"endOffset":4722,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":4726,"endOffset":4769,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4773,"endOffset":4994,"count":7},{"startOffset":4861,"endOffset":4968,"count":8}],"isBlockCoverage":true}]},{"scriptId":"160","url":"fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":73,"count":1}],"isBlockCoverage":false}]},{"scriptId":"161","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18975,"count":1},{"startOffset":1537,"endOffset":1670,"count":0}],"isBlockCoverage":true},{"functionName":"escapeUnicode","ranges":[{"startOffset":1894,"endOffset":2085,"count":0}],"isBlockCoverage":false},{"functionName":"jsonParseAndEscapeIfNeeded","ranges":[{"startOffset":2087,"endOffset":2243,"count":3},{"startOffset":2176,"endOffset":2241,"count":0}],"isBlockCoverage":true},{"functionName":"isNotFound","ranges":[{"startOffset":2426,"endOffset":2543,"count":0}],"isBlockCoverage":false},{"functionName":"isInvalidQuery","ranges":[{"startOffset":2682,"endOffset":2803,"count":0}],"isBlockCoverage":false},{"functionName":"get json","ranges":[{"startOffset":2892,"endOffset":3072,"count":3},{"startOffset":2933,"endOffset":2965,"count":0}],"isBlockCoverage":true},{"functionName":"JBDOC","ranges":[{"startOffset":3173,"endOffset":3261,"count":3}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":3265,"endOffset":3374,"count":0}],"isBlockCoverage":false},{"functionName":"get _impl","ranges":[{"startOffset":3458,"endOffset":3502,"count":140}],"isBlockCoverage":true},{"functionName":"get writable","ranges":[{"startOffset":3506,"endOffset":3572,"count":0}],"isBlockCoverage":false},{"functionName":"JBDOCStream","ranges":[{"startOffset":3636,"endOffset":4033,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4001,"endOffset":4027,"count":0}],"isBlockCoverage":false},{"functionName":"abort","ranges":[{"startOffset":4037,"endOffset":4251,"count":35}],"isBlockCoverage":true},{"functionName":"_destroy","ranges":[{"startOffset":4287,"endOffset":4482,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4410,"endOffset":4451,"count":35}],"isBlockCoverage":true},{"functionName":"_read","ranges":[{"startOffset":4486,"endOffset":5092,"count":38},{"startOffset":4521,"endOffset":4542,"count":0},{"startOffset":4599,"endOffset":5088,"count":0}],"isBlockCoverage":true},{"functionName":"_doResume","ranges":[{"startOffset":5096,"endOffset":5213,"count":73},{"startOffset":5132,"endOffset":5209,"count":35}],"isBlockCoverage":true},{"functionName":"_doPause","ranges":[{"startOffset":5217,"endOffset":5332,"count":0}],"isBlockCoverage":false},{"functionName":"addStreamResult","ranges":[{"startOffset":5394,"endOffset":6409,"count":38},{"startOffset":5472,"endOffset":5489,"count":0},{"startOffset":5508,"endOffset":5546,"count":0},{"startOffset":5548,"endOffset":5631,"count":0},{"startOffset":5694,"endOffset":5702,"count":35},{"startOffset":5704,"endOffset":6251,"count":3},{"startOffset":5760,"endOffset":5971,"count":0},{"startOffset":6004,"endOffset":6078,"count":0},{"startOffset":6205,"endOffset":6241,"count":0},{"startOffset":6267,"endOffset":6407,"count":35},{"startOffset":6328,"endOffset":6366,"count":0}],"isBlockCoverage":true},{"functionName":"get _impl","ranges":[{"startOffset":6449,"endOffset":6492,"count":229}],"isBlockCoverage":true},{"functionName":"get limit","ranges":[{"startOffset":6546,"endOffset":6602,"count":0}],"isBlockCoverage":false},{"functionName":"JQL","ranges":[{"startOffset":6700,"endOffset":6866,"count":35}],"isBlockCoverage":true},{"functionName":"stream","ranges":[{"startOffset":7031,"endOffset":7095,"count":35}],"isBlockCoverage":true},{"functionName":"completionPromise","ranges":[{"startOffset":7194,"endOffset":7461,"count":0}],"isBlockCoverage":false},{"functionName":"scalarInt","ranges":[{"startOffset":7642,"endOffset":7899,"count":0}],"isBlockCoverage":false},{"functionName":"list","ranges":[{"startOffset":8065,"endOffset":8336,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8159,"endOffset":8330,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8206,"endOffset":8228,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8256,"endOffset":8274,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8302,"endOffset":8322,"count":0}],"isBlockCoverage":false},{"functionName":"firstN","ranges":[{"startOffset":8502,"endOffset":8909,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":9112,"endOffset":9196,"count":0}],"isBlockCoverage":false},{"functionName":"setJSON","ranges":[{"startOffset":9351,"endOffset":9565,"count":0}],"isBlockCoverage":false},{"functionName":"setRegexp","ranges":[{"startOffset":9729,"endOffset":10117,"count":0}],"isBlockCoverage":false},{"functionName":"setNumber","ranges":[{"startOffset":10271,"endOffset":10530,"count":0}],"isBlockCoverage":false},{"functionName":"setBoolean","ranges":[{"startOffset":10686,"endOffset":10831,"count":0}],"isBlockCoverage":false},{"functionName":"setString","ranges":[{"startOffset":10985,"endOffset":11211,"count":54},{"startOffset":11104,"endOffset":11139,"count":0}],"isBlockCoverage":true},{"functionName":"setNull","ranges":[{"startOffset":11334,"endOffset":11470,"count":0}],"isBlockCoverage":false},{"functionName":"_isInteger","ranges":[{"startOffset":11474,"endOffset":11531,"count":0}],"isBlockCoverage":false},{"functionName":"_checkPlaceholder","ranges":[{"startOffset":11535,"endOffset":11744,"count":54},{"startOffset":11625,"endOffset":11642,"count":0},{"startOffset":11644,"endOffset":11740,"count":0}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11976,"endOffset":12996,"count":8}],"isBlockCoverage":true},{"functionName":"toArgs","ranges":[{"startOffset":12023,"endOffset":12906,"count":8},{"startOffset":12119,"endOffset":12152,"count":0},{"startOffset":12181,"endOffset":12214,"count":0},{"startOffset":12282,"endOffset":12305,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12980,"endOffset":12990,"count":8}],"isBlockCoverage":true},{"functionName":"EJDB2","ranges":[{"startOffset":13000,"endOffset":13061,"count":8}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":13137,"endOffset":13181,"count":8}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":13470,"endOffset":13627,"count":30},{"startOffset":13532,"endOffset":13574,"count":0}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":13842,"endOffset":13926,"count":0}],"isBlockCoverage":false},{"functionName":"patchOrPut","ranges":[{"startOffset":14188,"endOffset":14284,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14482,"endOffset":14597,"count":0}],"isBlockCoverage":false},{"functionName":"getOrNull","ranges":[{"startOffset":14875,"endOffset":15080,"count":0}],"isBlockCoverage":false},{"functionName":"info","ranges":[{"startOffset":15175,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":15428,"endOffset":15496,"count":0}],"isBlockCoverage":false},{"functionName":"renameCollection","ranges":[{"startOffset":15697,"endOffset":15836,"count":0}],"isBlockCoverage":false},{"functionName":"ensureStringIndex","ranges":[{"startOffset":16077,"endOffset":16208,"count":90},{"startOffset":16184,"endOffset":16190,"count":0}],"isBlockCoverage":true},{"functionName":"removeStringIndex","ranges":[{"startOffset":16392,"endOffset":16522,"count":0}],"isBlockCoverage":false},{"functionName":"ensureIntIndex","ranges":[{"startOffset":16764,"endOffset":16892,"count":0}],"isBlockCoverage":false},{"functionName":"removeIntIndex","ranges":[{"startOffset":17076,"endOffset":17203,"count":0}],"isBlockCoverage":false},{"functionName":"ensureFloatIndex","ranges":[{"startOffset":17452,"endOffset":17582,"count":0}],"isBlockCoverage":false},{"functionName":"removeFloatIndex","ranges":[{"startOffset":17766,"endOffset":17895,"count":0}],"isBlockCoverage":false},{"functionName":"removeCollection","ranges":[{"startOffset":18013,"endOffset":18089,"count":0}],"isBlockCoverage":false},{"functionName":"createQuery","ranges":[{"startOffset":18369,"endOffset":18450,"count":35}],"isBlockCoverage":true},{"functionName":"onlineBackup","ranges":[{"startOffset":18859,"endOffset":18934,"count":0}],"isBlockCoverage":false}]},{"scriptId":"162","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1982,"count":1}],"isBlockCoverage":true}]},{"scriptId":"163","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/re.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6662,"count":1}],"isBlockCoverage":true},{"functionName":"createToken","ranges":[{"startOffset":276,"endOffset":447,"count":40},{"startOffset":427,"endOffset":432,"count":4},{"startOffset":433,"endOffset":444,"count":36}],"isBlockCoverage":true}]},{"scriptId":"164","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":468,"count":1},{"startOffset":233,"endOffset":281,"count":0}],"isBlockCoverage":true}]},{"scriptId":"165","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/debug.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":226,"count":1},{"startOffset":91,"endOffset":138,"count":0},{"startOffset":141,"endOffset":188,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":143,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"debug","ranges":[{"startOffset":193,"endOffset":201,"count":59}],"isBlockCoverage":true}]},{"scriptId":"166","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/semver.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7985,"count":1}],"isBlockCoverage":true},{"functionName":"SemVer","ranges":[{"startOffset":303,"endOffset":2193,"count":4},{"startOffset":408,"endOffset":613,"count":2},{"startOffset":558,"endOffset":607,"count":0},{"startOffset":613,"endOffset":716,"count":2},{"startOffset":652,"endOffset":716,"count":0},{"startOffset":716,"endOffset":755,"count":2},{"startOffset":755,"endOffset":855,"count":0},{"startOffset":855,"endOffset":1194,"count":2},{"startOffset":1194,"endOffset":1207,"count":0},{"startOffset":1208,"endOffset":1220,"count":2},{"startOffset":1235,"endOffset":1299,"count":0},{"startOffset":1299,"endOffset":1484,"count":2},{"startOffset":1486,"endOffset":1544,"count":0},{"startOffset":1544,"endOffset":1601,"count":2},{"startOffset":1603,"endOffset":1661,"count":0},{"startOffset":1661,"endOffset":1718,"count":2},{"startOffset":1720,"endOffset":1778,"count":0},{"startOffset":1778,"endOffset":1873,"count":2},{"startOffset":1873,"endOffset":2125,"count":0},{"startOffset":2125,"endOffset":2149,"count":2},{"startOffset":2149,"endOffset":2166,"count":0},{"startOffset":2167,"endOffset":2171,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1925,"endOffset":2118,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":2197,"endOffset":2393,"count":2},{"startOffset":2304,"endOffset":2365,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2397,"endOffset":2438,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":2442,"endOffset":2832,"count":1},{"startOffset":2559,"endOffset":2702,"count":0},{"startOffset":2744,"endOffset":2766,"count":0},{"startOffset":2803,"endOffset":2828,"count":0}],"isBlockCoverage":true},{"functionName":"compareMain","ranges":[{"startOffset":2836,"endOffset":3127,"count":1},{"startOffset":2894,"endOffset":2947,"count":0},{"startOffset":3012,"endOffset":3064,"count":0},{"startOffset":3065,"endOffset":3117,"count":0}],"isBlockCoverage":true},{"functionName":"comparePre","ranges":[{"startOffset":3131,"endOffset":3982,"count":0}],"isBlockCoverage":false},{"functionName":"compareBuild","ranges":[{"startOffset":3986,"endOffset":4528,"count":0}],"isBlockCoverage":false},{"functionName":"inc","ranges":[{"startOffset":4681,"endOffset":7957,"count":0}],"isBlockCoverage":false}]},{"scriptId":"167","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/parse-options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":401,"count":1}],"isBlockCoverage":true},{"functionName":"parseOptions","ranges":[{"startOffset":186,"endOffset":370,"count":6},{"startOffset":208,"endOffset":212,"count":2},{"startOffset":215,"endOffset":370,"count":4},{"startOffset":245,"endOffset":262,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":279,"endOffset":294,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":303,"endOffset":365,"count":0}],"isBlockCoverage":false}]},{"scriptId":"168","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/identifiers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":409,"count":1}],"isBlockCoverage":true},{"functionName":"compareIdentifiers","ranges":[{"startOffset":54,"endOffset":278,"count":1},{"startOffset":195,"endOffset":198,"count":0},{"startOffset":221,"endOffset":225,"count":0},{"startOffset":248,"endOffset":251,"count":0},{"startOffset":264,"endOffset":268,"count":0}],"isBlockCoverage":true},{"functionName":"rcompareIdentifiers","ranges":[{"startOffset":308,"endOffset":342,"count":0}],"isBlockCoverage":false}]},{"scriptId":"169","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":660,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":215,"endOffset":635,"count":0}],"isBlockCoverage":false}]},{"scriptId":"170","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":162,"count":1}],"isBlockCoverage":true},{"functionName":"valid","ranges":[{"startOffset":47,"endOffset":138,"count":0}],"isBlockCoverage":false}]},{"scriptId":"171","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/clean.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":191,"count":1}],"isBlockCoverage":true},{"functionName":"clean","ranges":[{"startOffset":47,"endOffset":167,"count":0}],"isBlockCoverage":false}]},{"scriptId":"172","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/inc.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":336,"count":1}],"isBlockCoverage":true},{"functionName":"inc","ranges":[{"startOffset":57,"endOffset":314,"count":0}],"isBlockCoverage":false}]},{"scriptId":"173","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/diff.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":634,"count":1}],"isBlockCoverage":true},{"functionName":"diff","ranges":[{"startOffset":74,"endOffset":611,"count":0}],"isBlockCoverage":false}]},{"scriptId":"174","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/eq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":112,"count":1}],"isBlockCoverage":true},{"functionName":"eq","ranges":[{"startOffset":48,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"175","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":156,"count":1}],"isBlockCoverage":true},{"functionName":"compare","ranges":[{"startOffset":60,"endOffset":129,"count":1}],"isBlockCoverage":true}]},{"scriptId":"176","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/major.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"major","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"177","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/minor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"minor","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"178","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/patch.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"179","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/prerelease.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"prerelease","ranges":[{"startOffset":52,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"180","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rcompare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"rcompare","ranges":[{"startOffset":54,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"181","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-loose.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"compareLoose","ranges":[{"startOffset":58,"endOffset":87,"count":0}],"isBlockCoverage":false}]},{"scriptId":"182","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-build.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true},{"functionName":"compareBuild","ranges":[{"startOffset":65,"endOffset":236,"count":0}],"isBlockCoverage":false}]},{"scriptId":"183","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/sort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":147,"count":1}],"isBlockCoverage":true},{"functionName":"sort","ranges":[{"startOffset":61,"endOffset":124,"count":0}],"isBlockCoverage":false}]},{"scriptId":"184","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rsort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":149,"count":1}],"isBlockCoverage":true},{"functionName":"rsort","ranges":[{"startOffset":62,"endOffset":125,"count":0}],"isBlockCoverage":false}]},{"scriptId":"185","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"gt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"186","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"lt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"187","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/neq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":114,"count":1}],"isBlockCoverage":true},{"functionName":"neq","ranges":[{"startOffset":49,"endOffset":92,"count":0}],"isBlockCoverage":false}]},{"scriptId":"188","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"gte","ranges":[{"startOffset":49,"endOffset":91,"count":1}],"isBlockCoverage":true}]},{"scriptId":"189","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"lte","ranges":[{"startOffset":49,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"190","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/cmp.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":907,"count":1}],"isBlockCoverage":true},{"functionName":"cmp","ranges":[{"startOffset":181,"endOffset":885,"count":1},{"startOffset":224,"endOffset":366,"count":0},{"startOffset":372,"endOffset":514,"count":0},{"startOffset":520,"endOffset":528,"count":0},{"startOffset":533,"endOffset":542,"count":0},{"startOffset":547,"endOffset":586,"count":0},{"startOffset":592,"endOffset":632,"count":0},{"startOffset":638,"endOffset":676,"count":0},{"startOffset":728,"endOffset":766,"count":0},{"startOffset":772,"endOffset":812,"count":0},{"startOffset":818,"endOffset":879,"count":0}],"isBlockCoverage":true}]},{"scriptId":"191","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/coerce.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1497,"count":1}],"isBlockCoverage":true},{"functionName":"coerce","ranges":[{"startOffset":135,"endOffset":1472,"count":0}],"isBlockCoverage":false}]},{"scriptId":"192","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/comparator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3606,"count":1}],"isBlockCoverage":true},{"functionName":"get ANY","ranges":[{"startOffset":100,"endOffset":131,"count":2}],"isBlockCoverage":true},{"functionName":"Comparator","ranges":[{"startOffset":134,"endOffset":635,"count":1},{"startOffset":237,"endOffset":357,"count":0},{"startOffset":509,"endOffset":538,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":639,"endOffset":1135,"count":1},{"startOffset":687,"endOffset":710,"count":0},{"startOffset":771,"endOffset":835,"count":0},{"startOffset":883,"endOffset":887,"count":0},{"startOffset":919,"endOffset":951,"count":0},{"startOffset":1030,"endOffset":1061,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":1139,"endOffset":1178,"count":1}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":1182,"endOffset":1562,"count":1},{"startOffset":1306,"endOffset":1331,"count":0},{"startOffset":1370,"endOffset":1491,"count":0}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":1566,"endOffset":3322,"count":0}],"isBlockCoverage":false}]},{"scriptId":"193","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/range.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13989,"count":1}],"isBlockCoverage":true},{"functionName":"Range","ranges":[{"startOffset":55,"endOffset":1826,"count":1},{"startOffset":155,"endOffset":379,"count":0},{"startOffset":418,"endOffset":562,"count":0},{"startOffset":1162,"endOffset":1229,"count":0},{"startOffset":1330,"endOffset":1803,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":857,"endOffset":895,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1120,"endOffset":1133,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1456,"endOffset":1477,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":1830,"endOffset":1996,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1879,"endOffset":1937,"count":1}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2000,"endOffset":2039,"count":0}],"isBlockCoverage":false},{"functionName":"parseRange","ranges":[{"startOffset":2043,"endOffset":4217,"count":1},{"startOffset":2364,"endOffset":2377,"count":0},{"startOffset":2481,"endOffset":2505,"count":0},{"startOffset":3187,"endOffset":3210,"count":0},{"startOffset":3559,"endOffset":3589,"count":0},{"startOffset":3992,"endOffset":4005,"count":0},{"startOffset":4075,"endOffset":4094,"count":0},{"startOffset":4102,"endOffset":4121,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3287,"endOffset":3330,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3416,"endOffset":3455,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3561,"endOffset":3589,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3592,"endOffset":3602,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3615,"endOffset":3657,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":4221,"endOffset":4851,"count":0}],"isBlockCoverage":false},{"functionName":"test","ranges":[{"startOffset":4919,"endOffset":5301,"count":1},{"startOffset":4954,"endOffset":4980,"count":0},{"startOffset":5093,"endOffset":5134,"count":0},{"startOffset":5280,"endOffset":5300,"count":0}],"isBlockCoverage":true},{"functionName":"isNullSet","ranges":[{"startOffset":5710,"endOffset":5737,"count":1}],"isBlockCoverage":true},{"functionName":"isAny","ranges":[{"startOffset":5752,"endOffset":5771,"count":0}],"isBlockCoverage":false},{"functionName":"isSatisfiable","ranges":[{"startOffset":5893,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"parseComparator","ranges":[{"startOffset":6469,"endOffset":6782,"count":1}],"isBlockCoverage":true},{"functionName":"isX","ranges":[{"startOffset":6796,"endOffset":6847,"count":3}],"isBlockCoverage":true},{"functionName":"replaceTildes","ranges":[{"startOffset":7152,"endOffset":7267,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7202,"endOffset":7256,"count":1}],"isBlockCoverage":true},{"functionName":"replaceTilde","ranges":[{"startOffset":7290,"endOffset":7964,"count":1},{"startOffset":7337,"endOffset":7355,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7395,"endOffset":7961,"count":0}],"isBlockCoverage":false},{"functionName":"replaceCarets","ranges":[{"startOffset":8195,"endOffset":8310,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8245,"endOffset":8299,"count":1}],"isBlockCoverage":true},{"functionName":"replaceCaret","ranges":[{"startOffset":8333,"endOffset":9635,"count":1},{"startOffset":8412,"endOffset":8430,"count":0},{"startOffset":8483,"endOffset":8489,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8520,"endOffset":9632,"count":0}],"isBlockCoverage":false},{"functionName":"replaceXRanges","ranges":[{"startOffset":9660,"endOffset":9821,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9753,"endOffset":9808,"count":1}],"isBlockCoverage":true},{"functionName":"replaceXRange","ranges":[{"startOffset":9845,"endOffset":11535,"count":1},{"startOffset":9913,"endOffset":9932,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9973,"endOffset":11532,"count":1},{"startOffset":10173,"endOffset":10180,"count":0},{"startOffset":10182,"endOffset":10205,"count":0},{"startOffset":10370,"endOffset":10376,"count":0},{"startOffset":10395,"endOffset":10572,"count":0},{"startOffset":10596,"endOffset":11330,"count":0},{"startOffset":11344,"endOffset":11398,"count":0},{"startOffset":11412,"endOffset":11479,"count":0}],"isBlockCoverage":true},{"functionName":"replaceStars","ranges":[{"startOffset":11681,"endOffset":11856,"count":1}],"isBlockCoverage":true},{"functionName":"replaceGTE0","ranges":[{"startOffset":11878,"endOffset":12028,"count":1},{"startOffset":12000,"endOffset":12011,"count":0}],"isBlockCoverage":true},{"functionName":"hyphenReplace","ranges":[{"startOffset":12270,"endOffset":12946,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12279,"endOffset":12946,"count":0}],"isBlockCoverage":false},{"functionName":"testSet","ranges":[{"startOffset":12964,"endOffset":13988,"count":1},{"startOffset":13065,"endOffset":13091,"count":0},{"startOffset":13129,"endOffset":13158,"count":0},{"startOffset":13160,"endOffset":13971,"count":0}],"isBlockCoverage":true}]},{"scriptId":"194","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/lru-cache/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8186,"count":1}],"isBlockCoverage":true},{"functionName":"naiveLength","ranges":[{"startOffset":510,"endOffset":517,"count":1}],"isBlockCoverage":true},{"functionName":"LRUCache","ranges":[{"startOffset":853,"endOffset":1751,"count":1},{"startOffset":920,"endOffset":946,"count":0},{"startOffset":972,"endOffset":984,"count":0},{"startOffset":1069,"endOffset":1125,"count":0},{"startOffset":1235,"endOffset":1246,"count":0},{"startOffset":1350,"endOffset":1363,"count":0},{"startOffset":1439,"endOffset":1476,"count":0},{"startOffset":1484,"endOffset":1530,"count":0}],"isBlockCoverage":true},{"functionName":"set max","ranges":[{"startOffset":1799,"endOffset":1969,"count":0}],"isBlockCoverage":false},{"functionName":"get max","ranges":[{"startOffset":1972,"endOffset":2009,"count":0}],"isBlockCoverage":false},{"functionName":"set allowStale","ranges":[{"startOffset":2013,"endOffset":2083,"count":0}],"isBlockCoverage":false},{"functionName":"get allowStale","ranges":[{"startOffset":2086,"endOffset":2138,"count":0}],"isBlockCoverage":false},{"functionName":"set maxAge","ranges":[{"startOffset":2142,"endOffset":2300,"count":0}],"isBlockCoverage":false},{"functionName":"get maxAge","ranges":[{"startOffset":2303,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"set lengthCalculator","ranges":[{"startOffset":2408,"endOffset":2765,"count":0}],"isBlockCoverage":false},{"functionName":"get lengthCalculator","ranges":[{"startOffset":2768,"endOffset":2826,"count":0}],"isBlockCoverage":false},{"functionName":"get length","ranges":[{"startOffset":2830,"endOffset":2867,"count":0}],"isBlockCoverage":false},{"functionName":"get itemCount","ranges":[{"startOffset":2870,"endOffset":2919,"count":0}],"isBlockCoverage":false},{"functionName":"rforEach","ranges":[{"startOffset":2923,"endOffset":3138,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":3142,"endOffset":3356,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":3360,"endOffset":3425,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":3429,"endOffset":3498,"count":0}],"isBlockCoverage":false},{"functionName":"reset","ranges":[{"startOffset":3502,"endOffset":3858,"count":1},{"startOffset":3535,"endOffset":3560,"count":0},{"startOffset":3561,"endOffset":3593,"count":0},{"startOffset":3595,"endOffset":3673,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3626,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"dump","ranges":[{"startOffset":3862,"endOffset":4064,"count":0}],"isBlockCoverage":false},{"functionName":"dumpLru","ranges":[{"startOffset":4068,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":4114,"endOffset":5376,"count":1},{"startOffset":4194,"endOffset":4223,"count":0},{"startOffset":4231,"endOffset":4277,"count":0},{"startOffset":4302,"endOffset":4314,"count":0},{"startOffset":4402,"endOffset":4996,"count":0},{"startOffset":5145,"endOffset":5231,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":5380,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5517,"endOffset":5564,"count":1}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":5568,"endOffset":5617,"count":0}],"isBlockCoverage":false},{"functionName":"pop","ranges":[{"startOffset":5621,"endOffset":5746,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":5750,"endOffset":5801,"count":0}],"isBlockCoverage":false},{"functionName":"load","ranges":[{"startOffset":5805,"endOffset":6378,"count":0}],"isBlockCoverage":false},{"functionName":"prune","ranges":[{"startOffset":6382,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6475,"endOffset":6871,"count":1},{"startOffset":6547,"endOffset":6869,"count":0}],"isBlockCoverage":true},{"functionName":"isStale","ranges":[{"startOffset":6889,"endOffset":7094,"count":0}],"isBlockCoverage":false},{"functionName":"trim","ranges":[{"startOffset":7109,"endOffset":7497,"count":1},{"startOffset":7151,"endOffset":7495,"count":0}],"isBlockCoverage":true},{"functionName":"del","ranges":[{"startOffset":7511,"endOffset":7738,"count":0}],"isBlockCoverage":false},{"functionName":"Entry","ranges":[{"startOffset":7756,"endOffset":7923,"count":1}],"isBlockCoverage":true},{"functionName":"forEachStep","ranges":[{"startOffset":7947,"endOffset":8158,"count":0}],"isBlockCoverage":false}]},{"scriptId":"195","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/yallist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8411,"count":1},{"startOffset":8397,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"Yallist","ranges":[{"startOffset":85,"endOffset":517,"count":1},{"startOffset":163,"endOffset":193,"count":0},{"startOffset":263,"endOffset":300,"count":0},{"startOffset":302,"endOffset":371,"count":0},{"startOffset":403,"endOffset":500,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":321,"endOffset":366,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.removeNode","ranges":[{"startOffset":550,"endOffset":1001,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshiftNode","ranges":[{"startOffset":1035,"endOffset":1334,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.pushNode","ranges":[{"startOffset":1365,"endOffset":1664,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.push","ranges":[{"startOffset":1691,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshift","ranges":[{"startOffset":1844,"endOffset":1970,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.pop","ranges":[{"startOffset":1996,"endOffset":2224,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.shift","ranges":[{"startOffset":2252,"endOffset":2480,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEach","ranges":[{"startOffset":2510,"endOffset":2691,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEachReverse","ranges":[{"startOffset":2728,"endOffset":2923,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.get","ranges":[{"startOffset":2949,"endOffset":3182,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.getReverse","ranges":[{"startOffset":3215,"endOffset":3448,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.map","ranges":[{"startOffset":3474,"endOffset":3690,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.mapReverse","ranges":[{"startOffset":3723,"endOffset":3939,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduce","ranges":[{"startOffset":3968,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduceReverse","ranges":[{"startOffset":4399,"endOffset":4808,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArray","ranges":[{"startOffset":4838,"endOffset":5018,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArrayReverse","ranges":[{"startOffset":5055,"endOffset":5235,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.slice","ranges":[{"startOffset":5263,"endOffset":5790,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.sliceReverse","ranges":[{"startOffset":5825,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.splice","ranges":[{"startOffset":6391,"endOffset":7034,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reverse","ranges":[{"startOffset":7064,"endOffset":7322,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":7324,"endOffset":7643,"count":0}],"isBlockCoverage":false},{"functionName":"push","ranges":[{"startOffset":7645,"endOffset":7793,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":7795,"endOffset":7946,"count":1}],"isBlockCoverage":true},{"functionName":"Node","ranges":[{"startOffset":7948,"endOffset":8300,"count":1},{"startOffset":8021,"endOffset":8071,"count":0},{"startOffset":8126,"endOffset":8173,"count":0},{"startOffset":8219,"endOffset":8266,"count":0}],"isBlockCoverage":true}]},{"scriptId":"196","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/iterator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":207,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":30,"endOffset":206,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.","ranges":[{"startOffset":90,"endOffset":204,"count":0}],"isBlockCoverage":false}]},{"scriptId":"197","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/satisfies.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":233,"count":1}],"isBlockCoverage":true},{"functionName":"satisfies","ranges":[{"startOffset":60,"endOffset":205,"count":1},{"startOffset":141,"endOffset":174,"count":0}],"isBlockCoverage":true}]},{"scriptId":"198","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/to-comparators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":268,"count":1}],"isBlockCoverage":true},{"functionName":"toComparators","ranges":[{"startOffset":115,"endOffset":235,"count":0}],"isBlockCoverage":false}]},{"scriptId":"199","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/max-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":579,"count":1}],"isBlockCoverage":true},{"functionName":"maxSatisfying","ranges":[{"startOffset":109,"endOffset":547,"count":0}],"isBlockCoverage":false}]},{"scriptId":"200","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":577,"count":1}],"isBlockCoverage":true},{"functionName":"minSatisfying","ranges":[{"startOffset":108,"endOffset":545,"count":0}],"isBlockCoverage":false}]},{"scriptId":"201","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1492,"count":1}],"isBlockCoverage":true},{"functionName":"minVersion","ranges":[{"startOffset":144,"endOffset":1463,"count":0}],"isBlockCoverage":false}]},{"scriptId":"202","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":312,"count":1}],"isBlockCoverage":true},{"functionName":"validRange","ranges":[{"startOffset":61,"endOffset":283,"count":0}],"isBlockCoverage":false}]},{"scriptId":"203","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/outside.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2188,"count":1}],"isBlockCoverage":true},{"functionName":"outside","ranges":[{"startOffset":388,"endOffset":2161,"count":0}],"isBlockCoverage":false}]},{"scriptId":"204","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/gtr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":217,"count":1}],"isBlockCoverage":true},{"functionName":"gtr","ranges":[{"startOffset":129,"endOffset":195,"count":0}],"isBlockCoverage":false}]},{"scriptId":"205","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/ltr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":213,"count":1}],"isBlockCoverage":true},{"functionName":"ltr","ranges":[{"startOffset":125,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"206","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/intersects.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":201,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":61,"endOffset":172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"207","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/simplify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1287,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":329,"endOffset":1286,"count":0}],"isBlockCoverage":false}]},{"scriptId":"208","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/subset.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7224,"count":1}],"isBlockCoverage":true},{"functionName":"subset","ranges":[{"startOffset":1996,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"simpleSubset","ranges":[{"startOffset":2726,"endOffset":6700,"count":0}],"isBlockCoverage":false},{"functionName":"higherGT","ranges":[{"startOffset":6751,"endOffset":6949,"count":0}],"isBlockCoverage":false},{"functionName":"lowerLT","ranges":[{"startOffset":7000,"endOffset":7198,"count":0}],"isBlockCoverage":false}]},{"scriptId":"209","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/binary.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1697,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":1534,"endOffset":1695,"count":1}],"isBlockCoverage":true}]},{"scriptId":"210","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1579,"count":1},{"startOffset":1483,"endOffset":1510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"211","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":95,"count":1}],"isBlockCoverage":true}]},{"scriptId":"212","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/convert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4855,"count":1}],"isBlockCoverage":true},{"functionName":"parseQuery","ranges":[{"startOffset":0,"endOffset":2315,"count":35},{"startOffset":43,"endOffset":77,"count":27},{"startOffset":79,"endOffset":138,"count":8},{"startOffset":138,"endOffset":2314,"count":27}],"isBlockCoverage":true},{"functionName":"subQuery","ranges":[{"startOffset":183,"endOffset":525,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":556,"endOffset":2252,"count":27},{"startOffset":588,"endOffset":645,"count":0},{"startOffset":671,"endOffset":729,"count":0},{"startOffset":1036,"endOffset":1352,"count":0},{"startOffset":1731,"endOffset":1809,"count":0},{"startOffset":1835,"endOffset":1918,"count":0},{"startOffset":1956,"endOffset":1995,"count":0},{"startOffset":2035,"endOffset":2085,"count":0},{"startOffset":2122,"endOffset":2161,"count":0},{"startOffset":2198,"endOffset":2248,"count":0}],"isBlockCoverage":true},{"functionName":"parseEquality","ranges":[{"startOffset":758,"endOffset":917,"count":162},{"startOffset":853,"endOffset":916,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1186,"endOffset":1344,"count":0}],"isBlockCoverage":false},{"functionName":"parseFields","ranges":[{"startOffset":2317,"endOffset":2689,"count":35},{"startOffset":2421,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2440,"endOffset":2615,"count":0}],"isBlockCoverage":false},{"functionName":"parseOrder","ranges":[{"startOffset":2691,"endOffset":3464,"count":35},{"startOffset":2792,"endOffset":3463,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2810,"endOffset":3039,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3075,"endOffset":3388,"count":0}],"isBlockCoverage":false},{"functionName":"convert","ranges":[{"startOffset":3466,"endOffset":4827,"count":35},{"startOffset":4118,"endOffset":4386,"count":0},{"startOffset":4423,"endOffset":4696,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4736,"endOffset":4750,"count":105}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4756,"endOffset":4775,"count":35}],"isBlockCoverage":true}]},{"scriptId":"213","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/createQuery.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":452,"count":1}],"isBlockCoverage":true},{"functionName":"createQuery","ranges":[{"startOffset":0,"endOffset":420,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":120,"endOffset":403,"count":54},{"startOffset":229,"endOffset":399,"count":0}],"isBlockCoverage":true}]},{"scriptId":"214","url":"tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10936,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3218,"endOffset":3282,"count":0}],"isBlockCoverage":false},{"functionName":"cacheRootCertificates","ranges":[{"startOffset":3310,"endOffset":3404,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3508,"endOffset":3659,"count":38},{"startOffset":3602,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"convertProtocols","ranges":[{"startOffset":3769,"endOffset":4366,"count":0}],"isBlockCoverage":false},{"functionName":"convertALPNProtocols","ranges":[{"startOffset":4399,"endOffset":4736,"count":0}],"isBlockCoverage":false},{"functionName":"unfqdn","ranges":[{"startOffset":4739,"endOffset":4799,"count":90}],"isBlockCoverage":true},{"functionName":"toLowerCase","ranges":[{"startOffset":4907,"endOffset":5001,"count":0}],"isBlockCoverage":false},{"functionName":"splitHost","ranges":[{"startOffset":5003,"endOffset":5140,"count":60}],"isBlockCoverage":true},{"functionName":"check","ranges":[{"startOffset":5142,"endOffset":7004,"count":30},{"startOffset":5265,"endOffset":5278,"count":0},{"startOffset":5376,"endOffset":5389,"count":0},{"startOffset":5488,"endOffset":5501,"count":0},{"startOffset":5856,"endOffset":5869,"count":0},{"startOffset":5971,"endOffset":6038,"count":0},{"startOffset":6424,"endOffset":6460,"count":0},{"startOffset":6508,"endOffset":7003,"count":0}],"isBlockCoverage":true},{"functionName":"isBad","ranges":[{"startOffset":5784,"endOffset":5818,"count":30}],"isBlockCoverage":true},{"functionName":"checkServerIdentity","ranges":[{"startOffset":7067,"endOffset":9523,"count":30},{"startOffset":7296,"endOffset":8182,"count":0},{"startOffset":8430,"endOffset":8649,"count":0},{"startOffset":8817,"endOffset":9074,"count":0},{"startOffset":9223,"endOffset":9249,"count":0},{"startOffset":9326,"endOffset":9380,"count":0},{"startOffset":9390,"endOffset":9431,"count":0},{"startOffset":9447,"endOffset":9521,"count":0}],"isBlockCoverage":true},{"functionName":"wildcard","ranges":[{"startOffset":8749,"endOffset":8793,"count":30}],"isBlockCoverage":true},{"functionName":"noWildcard","ranges":[{"startOffset":8844,"endOffset":8889,"count":0}],"isBlockCoverage":false},{"functionName":"SecurePair","ranges":[{"startOffset":9569,"endOffset":10165,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":10169,"endOffset":10244,"count":0}],"isBlockCoverage":false},{"functionName":"createSecurePair","ranges":[{"startOffset":10762,"endOffset":10838,"count":0}],"isBlockCoverage":false}]},{"scriptId":"215","url":"internal/tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":671,"count":1}],"isBlockCoverage":false},{"functionName":"parseCertString","ranges":[{"startOffset":164,"endOffset":629,"count":120},{"startOffset":264,"endOffset":613,"count":600},{"startOffset":441,"endOffset":562,"count":0}],"isBlockCoverage":true}]},{"scriptId":"216","url":"internal/streams/duplexpair.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"DuplexSocket","ranges":[{"startOffset":203,"endOffset":292,"count":0}],"isBlockCoverage":false},{"functionName":"_read","ranges":[{"startOffset":296,"endOffset":421,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":425,"endOffset":629,"count":0}],"isBlockCoverage":false},{"functionName":"_final","ranges":[{"startOffset":633,"endOffset":730,"count":0}],"isBlockCoverage":false},{"functionName":"DuplexPair","ranges":[{"startOffset":755,"endOffset":942,"count":0}],"isBlockCoverage":false}]},{"scriptId":"217","url":"_tls_common.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11156,"count":1}],"isBlockCoverage":false},{"functionName":"toV","ranges":[{"startOffset":1778,"endOffset":2071,"count":74},{"startOffset":1855,"endOffset":1875,"count":0},{"startOffset":1899,"endOffset":1921,"count":0},{"startOffset":1945,"endOffset":2013,"count":37},{"startOffset":2013,"endOffset":2070,"count":0}],"isBlockCoverage":true},{"functionName":"SecureContext","ranges":[{"startOffset":2147,"endOffset":2921,"count":37},{"startOffset":2267,"endOffset":2386,"count":0},{"startOffset":2410,"endOffset":2629,"count":0},{"startOffset":2880,"endOffset":2919,"count":7}],"isBlockCoverage":true},{"functionName":"validateKeyOrCertOption","ranges":[{"startOffset":2923,"endOffset":3174,"count":111},{"startOffset":3033,"endOffset":3172,"count":0}],"isBlockCoverage":true},{"functionName":"createSecureContext","ranges":[{"startOffset":3247,"endOffset":10200,"count":37},{"startOffset":3303,"endOffset":3316,"count":0},{"startOffset":3399,"endOffset":3448,"count":7},{"startOffset":3852,"endOffset":3937,"count":0},{"startOffset":3941,"endOffset":3982,"count":0},{"startOffset":4054,"endOffset":4179,"count":0},{"startOffset":4604,"endOffset":4880,"count":0},{"startOffset":5047,"endOffset":5301,"count":0},{"startOffset":5407,"endOffset":6582,"count":0},{"startOffset":6606,"endOffset":6644,"count":30},{"startOffset":6646,"endOffset":6740,"count":0},{"startOffset":7067,"endOffset":7089,"count":7},{"startOffset":7329,"endOffset":7349,"count":0},{"startOffset":7351,"endOffset":7543,"count":0},{"startOffset":7651,"endOffset":7694,"count":0},{"startOffset":7695,"endOffset":7744,"count":0},{"startOffset":7750,"endOffset":7788,"count":0},{"startOffset":7814,"endOffset":7857,"count":0},{"startOffset":7858,"endOffset":7907,"count":0},{"startOffset":7913,"endOffset":7951,"count":0},{"startOffset":8043,"endOffset":8120,"count":0},{"startOffset":8145,"endOffset":8281,"count":0},{"startOffset":8302,"endOffset":8478,"count":0},{"startOffset":8512,"endOffset":8578,"count":7},{"startOffset":8599,"endOffset":9284,"count":0},{"startOffset":9474,"endOffset":9539,"count":30},{"startOffset":9593,"endOffset":9767,"count":0},{"startOffset":9811,"endOffset":10009,"count":0},{"startOffset":10037,"endOffset":10091,"count":0},{"startOffset":10123,"endOffset":10185,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7139,"endOffset":7215,"count":888},{"startOffset":7164,"endOffset":7215,"count":777}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7266,"endOffset":7289,"count":888}],"isBlockCoverage":true},{"functionName":"translatePeerCertificate","ranges":[{"startOffset":10475,"endOffset":11154,"count":60},{"startOffset":10528,"endOffset":10540,"count":0},{"startOffset":10668,"endOffset":10746,"count":30},{"startOffset":10840,"endOffset":11140,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10994,"endOffset":11134,"count":0}],"isBlockCoverage":false}]},{"scriptId":"218","url":"_tls_wrap.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47991,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1763,"endOffset":1788,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3528,"endOffset":3536,"count":30}],"isBlockCoverage":true},{"functionName":"onhandshakestart","ranges":[{"startOffset":3712,"endOffset":4495,"count":30},{"startOffset":4072,"endOffset":4493,"count":0}],"isBlockCoverage":true},{"functionName":"onhandshakedone","ranges":[{"startOffset":4497,"endOffset":4790,"count":30},{"startOffset":4714,"endOffset":4764,"count":0}],"isBlockCoverage":true},{"functionName":"loadSession","ranges":[{"startOffset":4793,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"loadSNI","ranges":[{"startOffset":6000,"endOffset":6653,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSP","ranges":[{"startOffset":6656,"endOffset":7978,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSPDone","ranges":[{"startOffset":7980,"endOffset":8175,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsessionclient","ranges":[{"startOffset":8177,"endOffset":8413,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsession","ranges":[{"startOffset":8415,"endOffset":9251,"count":0}],"isBlockCoverage":false},{"functionName":"onPskServerCallback","ranges":[{"startOffset":9253,"endOffset":9901,"count":0}],"isBlockCoverage":false},{"functionName":"onPskClientCallback","ranges":[{"startOffset":9903,"endOffset":10667,"count":0}],"isBlockCoverage":false},{"functionName":"onkeylog","ranges":[{"startOffset":10669,"endOffset":10760,"count":0}],"isBlockCoverage":false},{"functionName":"onocspresponse","ranges":[{"startOffset":10762,"endOffset":10878,"count":0}],"isBlockCoverage":false},{"functionName":"onerror","ranges":[{"startOffset":10880,"endOffset":11656,"count":0}],"isBlockCoverage":false},{"functionName":"initRead","ranges":[{"startOffset":11800,"endOffset":12346,"count":60},{"startOffset":11901,"endOffset":11911,"count":30},{"startOffset":11912,"endOffset":11922,"count":30},{"startOffset":11994,"endOffset":12018,"count":30},{"startOffset":12109,"endOffset":12116,"count":0},{"startOffset":12197,"endOffset":12221,"count":30},{"startOffset":12223,"endOffset":12322,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket","ranges":[{"startOffset":12424,"endOffset":14710,"count":60},{"startOffset":12616,"endOffset":12636,"count":0},{"startOffset":12638,"endOffset":12806,"count":0},{"startOffset":12810,"endOffset":12949,"count":0},{"startOffset":12987,"endOffset":13050,"count":0},{"startOffset":13525,"endOffset":13542,"count":30},{"startOffset":13544,"endOffset":13554,"count":30},{"startOffset":13674,"endOffset":13995,"count":0},{"startOffset":14206,"endOffset":14228,"count":30},{"startOffset":14229,"endOffset":14255,"count":30},{"startOffset":14546,"endOffset":14561,"count":0},{"startOffset":14567,"endOffset":14594,"count":0}],"isBlockCoverage":true},{"functionName":"makeMethodProxy","ranges":[{"startOffset":15153,"endOffset":15320,"count":15}],"isBlockCoverage":true},{"functionName":"methodProxy","ranges":[{"startOffset":15195,"endOffset":15317,"count":30}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":15487,"endOffset":16180,"count":60},{"startOffset":16011,"endOffset":16055,"count":30},{"startOffset":16057,"endOffset":16179,"count":30}],"isBlockCoverage":true},{"functionName":"done","ranges":[{"startOffset":15768,"endOffset":15985,"count":60},{"startOffset":15855,"endOffset":15951,"count":30}],"isBlockCoverage":true},{"functionName":"disableRenegotiation","ranges":[{"startOffset":16226,"endOffset":16299,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._wrapHandle","ranges":[{"startOffset":16336,"endOffset":17339,"count":60},{"startOffset":16384,"endOffset":16406,"count":30},{"startOffset":16459,"endOffset":16600,"count":30},{"startOffset":16487,"endOffset":16525,"count":0},{"startOffset":16668,"endOffset":16708,"count":0},{"startOffset":16709,"endOffset":16762,"count":0},{"startOffset":16883,"endOffset":16938,"count":0}],"isBlockCoverage":true},{"functionName":"defineHandleReading","ranges":[{"startOffset":17478,"endOffset":17699,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17578,"endOffset":17626,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17637,"endOffset":17691,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketCloseDestroySSL","ranges":[{"startOffset":17701,"endOffset":17848,"count":60}],"isBlockCoverage":true},{"functionName":"destroySSL","ranges":[{"startOffset":17850,"endOffset":17901,"count":60}],"isBlockCoverage":true},{"functionName":"_destroySSL","ranges":[{"startOffset":17937,"endOffset":18229,"count":60},{"startOffset":17986,"endOffset":18228,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._init","ranges":[{"startOffset":18368,"endOffset":23192,"count":60},{"startOffset":18535,"endOffset":18545,"count":30},{"startOffset":18546,"endOffset":18556,"count":30},{"startOffset":18748,"endOffset":18768,"count":0},{"startOffset":18932,"endOffset":18953,"count":0},{"startOffset":19400,"endOffset":19992,"count":30},{"startOffset":19786,"endOffset":19898,"count":0},{"startOffset":19963,"endOffset":19982,"count":0},{"startOffset":19992,"endOffset":20637,"count":30},{"startOffset":20212,"endOffset":20244,"count":0},{"startOffset":20656,"endOffset":21199,"count":0},{"startOffset":21382,"endOffset":21410,"count":30},{"startOffset":21411,"endOffset":21519,"count":30},{"startOffset":21521,"endOffset":21650,"count":0},{"startOffset":21681,"endOffset":21857,"count":0},{"startOffset":21885,"endOffset":21909,"count":0},{"startOffset":21911,"endOffset":22610,"count":0},{"startOffset":22653,"endOffset":22716,"count":30},{"startOffset":22754,"endOffset":23027,"count":30},{"startOffset":23069,"endOffset":23190,"count":30}],"isBlockCoverage":true},{"functionName":"keylogNewListener","ranges":[{"startOffset":19143,"endOffset":19374,"count":570},{"startOffset":19220,"endOffset":19373,"count":0}],"isBlockCoverage":true},{"functionName":"ssl.onhandshakedone","ranges":[{"startOffset":20059,"endOffset":20137,"count":30}],"isBlockCoverage":true},{"functionName":"newListener","ranges":[{"startOffset":20399,"endOffset":20633,"count":360},{"startOffset":20475,"endOffset":20632,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":20889,"endOffset":21193,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22949,"endOffset":23021,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23092,"endOffset":23124,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.renegotiate","ranges":[{"startOffset":23229,"endOffset":24588,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.exportKeyingMaterial","ranges":[{"startOffset":24634,"endOffset":24956,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxSendFragment","ranges":[{"startOffset":25000,"endOffset":25091,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._handleTimeout","ranges":[{"startOffset":25131,"endOffset":25200,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._emitTLSError","ranges":[{"startOffset":25239,"endOffset":25325,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._tlsError","ranges":[{"startOffset":25360,"endOffset":25468,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._releaseControl","ranges":[{"startOffset":25509,"endOffset":25665,"count":60},{"startOffset":25555,"endOffset":25568,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._finishInit","ranges":[{"startOffset":25702,"endOffset":26761,"count":60},{"startOffset":26182,"endOffset":26189,"count":0},{"startOffset":26479,"endOffset":26489,"count":30},{"startOffset":26490,"endOffset":26500,"count":30},{"startOffset":26696,"endOffset":26736,"count":30}],"isBlockCoverage":true},{"functionName":"TLSSocket._start","ranges":[{"startOffset":26793,"endOffset":27292,"count":30},{"startOffset":26861,"endOffset":26871,"count":0},{"startOffset":27043,"endOffset":27099,"count":0},{"startOffset":27190,"endOffset":27197,"count":0},{"startOffset":27239,"endOffset":27266,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.setServername","ranges":[{"startOffset":27331,"endOffset":27499,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.setSession","ranges":[{"startOffset":27535,"endOffset":27673,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.getPeerCertificate","ranges":[{"startOffset":27717,"endOffset":27881,"count":30},{"startOffset":27853,"endOffset":27858,"count":0},{"startOffset":27863,"endOffset":27880,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.getCertificate","ranges":[{"startOffset":27921,"endOffset":28127,"count":0}],"isBlockCoverage":false},{"functionName":"makeSocketMethodProxy","ranges":[{"startOffset":28164,"endOffset":28354,"count":10}],"isBlockCoverage":true},{"functionName":"socketMethodProxy","ranges":[{"startOffset":28212,"endOffset":28351,"count":60},{"startOffset":28330,"endOffset":28350,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":28557,"endOffset":28635,"count":10}],"isBlockCoverage":true},{"functionName":"onServerSocketSecure","ranges":[{"startOffset":28677,"endOffset":29172,"count":30},{"startOffset":28811,"endOffset":28929,"count":0}],"isBlockCoverage":true},{"functionName":"onSocketTLSError","ranges":[{"startOffset":29174,"endOffset":29410,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketKeylog","ranges":[{"startOffset":29412,"endOffset":29499,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketClose","ranges":[{"startOffset":29501,"endOffset":29854,"count":30},{"startOffset":29602,"endOffset":29609,"count":0},{"startOffset":29661,"endOffset":29684,"count":0},{"startOffset":29686,"endOffset":29852,"count":0}],"isBlockCoverage":true},{"functionName":"tlsConnectionListener","ranges":[{"startOffset":29856,"endOffset":30705,"count":30},{"startOffset":30552,"endOffset":30588,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":33471,"endOffset":35377,"count":7},{"startOffset":33545,"endOffset":33582,"count":0},{"startOffset":33621,"endOffset":33668,"count":0},{"startOffset":33750,"endOffset":33755,"count":0},{"startOffset":33760,"endOffset":33837,"count":0},{"startOffset":34014,"endOffset":34059,"count":0},{"startOffset":34091,"endOffset":34128,"count":0},{"startOffset":34163,"endOffset":34217,"count":0},{"startOffset":34516,"endOffset":34628,"count":0},{"startOffset":34655,"endOffset":34698,"count":0},{"startOffset":34700,"endOffset":34804,"count":0},{"startOffset":34831,"endOffset":34874,"count":0},{"startOffset":34876,"endOffset":34980,"count":0},{"startOffset":35010,"endOffset":35055,"count":0},{"startOffset":35057,"endOffset":35184,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":35531,"endOffset":35615,"count":7}],"isBlockCoverage":true},{"functionName":"Server.setSecureContext","ranges":[{"startOffset":35655,"endOffset":38690,"count":7},{"startOffset":35734,"endOffset":35795,"count":0},{"startOffset":35820,"endOffset":35843,"count":0},{"startOffset":35924,"endOffset":35957,"count":0},{"startOffset":35989,"endOffset":36026,"count":0},{"startOffset":36117,"endOffset":36151,"count":0},{"startOffset":36189,"endOffset":36238,"count":0},{"startOffset":36329,"endOffset":36361,"count":0},{"startOffset":36393,"endOffset":36430,"count":0},{"startOffset":36502,"endOffset":36539,"count":0},{"startOffset":36615,"endOffset":36660,"count":0},{"startOffset":36729,"endOffset":36752,"count":0},{"startOffset":36849,"endOffset":36880,"count":0},{"startOffset":36985,"endOffset":37016,"count":0},{"startOffset":37105,"endOffset":37156,"count":0},{"startOffset":37277,"endOffset":37312,"count":0},{"startOffset":37389,"endOffset":37448,"count":0},{"startOffset":37713,"endOffset":37758,"count":0},{"startOffset":37790,"endOffset":37827,"count":0}],"isBlockCoverage":true},{"functionName":"Server._getServerData","ranges":[{"startOffset":38728,"endOffset":38811,"count":0}],"isBlockCoverage":false},{"functionName":"Server._setServerData","ranges":[{"startOffset":38849,"endOffset":38926,"count":0}],"isBlockCoverage":false},{"functionName":"getTicketKeys","ranges":[{"startOffset":38963,"endOffset":39043,"count":0}],"isBlockCoverage":false},{"functionName":"setTicketKeys","ranges":[{"startOffset":39080,"endOffset":39161,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39205,"endOffset":41320,"count":0}],"isBlockCoverage":false},{"functionName":"Server.addContext","ranges":[{"startOffset":41443,"endOffset":41808,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":41857,"endOffset":42091,"count":0}],"isBlockCoverage":false},{"functionName":"SNICallback","ranges":[{"startOffset":42094,"endOffset":42337,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeConnectArgs","ranges":[{"startOffset":42570,"endOffset":43298,"count":30},{"startOffset":43097,"endOffset":43142,"count":0},{"startOffset":43209,"endOffset":43254,"count":0},{"startOffset":43284,"endOffset":43295,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectSecure","ranges":[{"startOffset":43300,"endOffset":45064,"count":30},{"startOffset":43537,"endOffset":43573,"count":0},{"startOffset":43575,"endOffset":43731,"count":0},{"startOffset":44026,"endOffset":44088,"count":0},{"startOffset":44089,"endOffset":44122,"count":0},{"startOffset":44259,"endOffset":44689,"count":0},{"startOffset":44987,"endOffset":45017,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectEnd","ranges":[{"startOffset":45066,"endOffset":45615,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":45681,"endOffset":47989,"count":30},{"startOffset":47231,"endOffset":47281,"count":0},{"startOffset":47391,"endOffset":47427,"count":0},{"startOffset":47455,"endOffset":47833,"count":0},{"startOffset":47861,"endOffset":47878,"count":0}],"isBlockCoverage":true}]},{"scriptId":"219","url":"internal/js_stream_socket.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7449,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":335,"endOffset":364,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":693,"endOffset":756,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstart","ranges":[{"startOffset":758,"endOffset":823,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstop","ranges":[{"startOffset":825,"endOffset":888,"count":0}],"isBlockCoverage":false},{"functionName":"onshutdown","ranges":[{"startOffset":890,"endOffset":961,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":963,"endOffset":1040,"count":0}],"isBlockCoverage":false},{"functionName":"JSStreamSocket","ranges":[{"startOffset":1800,"endOffset":3495,"count":0}],"isBlockCoverage":false},{"functionName":"get StreamWrap","ranges":[{"startOffset":3635,"endOffset":3684,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":3688,"endOffset":3750,"count":0}],"isBlockCoverage":false},{"functionName":"readStart","ranges":[{"startOffset":3754,"endOffset":3811,"count":0}],"isBlockCoverage":false},{"functionName":"readStop","ranges":[{"startOffset":3815,"endOffset":3870,"count":0}],"isBlockCoverage":false},{"functionName":"doShutdown","ranges":[{"startOffset":3874,"endOffset":4870,"count":0}],"isBlockCoverage":false},{"functionName":"finishShutdown","ranges":[{"startOffset":4938,"endOffset":5230,"count":0}],"isBlockCoverage":false},{"functionName":"doWrite","ranges":[{"startOffset":5234,"endOffset":6156,"count":0}],"isBlockCoverage":false},{"functionName":"finishWrite","ranges":[{"startOffset":6224,"endOffset":6667,"count":0}],"isBlockCoverage":false},{"functionName":"doClose","ranges":[{"startOffset":6671,"endOffset":7412,"count":0}],"isBlockCoverage":false}]},{"scriptId":"220","url":"cluster.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1288,"count":1}],"isBlockCoverage":false}]},{"scriptId":"221","url":"internal/cluster/master.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10797,"count":1}],"isBlockCoverage":false},{"functionName":"cluster.setupMaster","ranges":[{"startOffset":1751,"endOffset":3368,"count":0}],"isBlockCoverage":false},{"functionName":"setupSettingsNT","ranges":[{"startOffset":3371,"endOffset":3444,"count":0}],"isBlockCoverage":false},{"functionName":"createWorkerProcess","ranges":[{"startOffset":3446,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"removeWorker","ranges":[{"startOffset":4852,"endOffset":5087,"count":0}],"isBlockCoverage":false},{"functionName":"removeHandlesForWorker","ranges":[{"startOffset":5089,"endOffset":5252,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.fork","ranges":[{"startOffset":5269,"endOffset":6877,"count":0}],"isBlockCoverage":false},{"functionName":"emitForkNT","ranges":[{"startOffset":6880,"endOffset":6943,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.disconnect","ranges":[{"startOffset":6966,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"onmessage","ranges":[{"startOffset":7340,"endOffset":7763,"count":0}],"isBlockCoverage":false},{"functionName":"online","ranges":[{"startOffset":7765,"endOffset":7878,"count":0}],"isBlockCoverage":false},{"functionName":"exitedAfterDisconnect","ranges":[{"startOffset":7880,"endOffset":8008,"count":0}],"isBlockCoverage":false},{"functionName":"queryServer","ranges":[{"startOffset":8010,"endOffset":9580,"count":0}],"isBlockCoverage":false},{"functionName":"listening","ranges":[{"startOffset":9582,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":10017,"endOffset":10179,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":10181,"endOffset":10285,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.disconnect","ranges":[{"startOffset":10387,"endOffset":10544,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.destroy","ranges":[{"startOffset":10574,"endOffset":10795,"count":0}],"isBlockCoverage":false}]},{"scriptId":"222","url":"child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20033,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1538,"endOffset":1567,"count":0}],"isBlockCoverage":false},{"functionName":"fork","ranges":[{"startOffset":2262,"endOffset":3916,"count":0}],"isBlockCoverage":false},{"functionName":"_forkChild","ranges":[{"startOffset":3918,"endOffset":4407,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeExecArgs","ranges":[{"startOffset":4409,"endOffset":4817,"count":0}],"isBlockCoverage":false},{"functionName":"exec","ranges":[{"startOffset":4820,"endOffset":5067,"count":0}],"isBlockCoverage":false},{"functionName":"customPromiseExecFunction","ranges":[{"startOffset":5103,"endOffset":5531,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5124,"endOffset":5528,"count":0}],"isBlockCoverage":false},{"functionName":"execFile","ranges":[{"startOffset":5648,"endOffset":10990,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeSpawnArguments","ranges":[{"startOffset":11114,"endOffset":15353,"count":0}],"isBlockCoverage":false},{"functionName":"spawn","ranges":[{"startOffset":15356,"endOffset":15558,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":15560,"endOffset":17046,"count":0}],"isBlockCoverage":false},{"functionName":"checkExecSyncError","ranges":[{"startOffset":17049,"endOffset":17478,"count":0}],"isBlockCoverage":false},{"functionName":"execFileSync","ranges":[{"startOffset":17481,"endOffset":17891,"count":0}],"isBlockCoverage":false},{"functionName":"execSync","ranges":[{"startOffset":17894,"endOffset":18270,"count":0}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":18273,"endOffset":18461,"count":0}],"isBlockCoverage":false},{"functionName":"validateMaxBuffer","ranges":[{"startOffset":18464,"endOffset":18737,"count":0}],"isBlockCoverage":false},{"functionName":"sanitizeKillSignal","ranges":[{"startOffset":18740,"endOffset":19103,"count":0}],"isBlockCoverage":false},{"functionName":"spawnWithSignal","ranges":[{"startOffset":19252,"endOffset":19886,"count":0}],"isBlockCoverage":false}]},{"scriptId":"223","url":"internal/child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30647,"count":1}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2131,"endOffset":2190,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2197,"endOffset":2251,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2312,"endOffset":2379,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2386,"endOffset":2527,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2556,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"postSend","ranges":[{"startOffset":4117,"endOffset":4863,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":4870,"endOffset":5325,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5389,"endOffset":5448,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5455,"endOffset":5509,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5573,"endOffset":5693,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5700,"endOffset":5859,"count":0}],"isBlockCoverage":false},{"functionName":"stdioStringToArray","ranges":[{"startOffset":5868,"endOffset":6215,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess","ranges":[{"startOffset":6217,"endOffset":7562,"count":0}],"isBlockCoverage":false},{"functionName":"flushStdio","ranges":[{"startOffset":7685,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":8166,"endOffset":8277,"count":0}],"isBlockCoverage":false},{"functionName":"getHandleWrapType","ranges":[{"startOffset":8280,"endOffset":8509,"count":0}],"isBlockCoverage":false},{"functionName":"closePendingHandle","ranges":[{"startOffset":8511,"endOffset":8624,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.spawn","ranges":[{"startOffset":8658,"endOffset":12526,"count":0}],"isBlockCoverage":false},{"functionName":"onErrorNT","ranges":[{"startOffset":12530,"endOffset":12591,"count":0}],"isBlockCoverage":false},{"functionName":"onSpawnNT","ranges":[{"startOffset":12594,"endOffset":12644,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.kill","ranges":[{"startOffset":12677,"endOffset":13342,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.ref","ranges":[{"startOffset":13375,"endOffset":13429,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.unref","ranges":[{"startOffset":13464,"endOffset":13520,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":13562,"endOffset":13619,"count":0}],"isBlockCoverage":false},{"functionName":"Control","ranges":[{"startOffset":13624,"endOffset":13692,"count":0}],"isBlockCoverage":false},{"functionName":"refCounted","ranges":[{"startOffset":14006,"endOffset":14114,"count":0}],"isBlockCoverage":false},{"functionName":"unrefCounted","ranges":[{"startOffset":14118,"endOffset":14256,"count":0}],"isBlockCoverage":false},{"functionName":"ref","ranges":[{"startOffset":14260,"endOffset":14331,"count":0}],"isBlockCoverage":false},{"functionName":"unref","ranges":[{"startOffset":14335,"endOffset":14410,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":14414,"endOffset":14485,"count":0}],"isBlockCoverage":false},{"functionName":"setupChannel","ranges":[{"startOffset":14635,"endOffset":26287,"count":0}],"isBlockCoverage":false},{"functionName":"isInternal","ranges":[{"startOffset":26322,"endOffset":26604,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":26606,"endOffset":26624,"count":0}],"isBlockCoverage":false},{"functionName":"getValidStdio","ranges":[{"startOffset":26626,"endOffset":29345,"count":0}],"isBlockCoverage":false},{"functionName":"getSocketList","ranges":[{"startOffset":29348,"endOffset":29664,"count":0}],"isBlockCoverage":false},{"functionName":"maybeClose","ranges":[{"startOffset":29667,"endOffset":29868,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":29870,"endOffset":30522,"count":0}],"isBlockCoverage":false}]},{"scriptId":"224","url":"dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":27406,"count":1}],"isBlockCoverage":false},{"functionName":"Socket","ranges":[{"startOffset":2704,"endOffset":3981,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":4092,"endOffset":4170,"count":0}],"isBlockCoverage":false},{"functionName":"startListening","ranges":[{"startOffset":4173,"endOffset":4607,"count":0}],"isBlockCoverage":false},{"functionName":"replaceHandle","ranges":[{"startOffset":4609,"endOffset":5179,"count":0}],"isBlockCoverage":false},{"functionName":"bufferSize","ranges":[{"startOffset":5181,"endOffset":5473,"count":0}],"isBlockCoverage":false},{"functionName":"bindServerHandle","ranges":[{"startOffset":5540,"endOffset":5963,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.bind","ranges":[{"startOffset":5989,"endOffset":9579,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.connect","ranges":[{"startOffset":9609,"endOffset":10351,"count":0}],"isBlockCoverage":false},{"functionName":"_connect","ranges":[{"startOffset":10355,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"doConnect","ranges":[{"startOffset":10703,"endOffset":11345,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.disconnect","ranges":[{"startOffset":11378,"endOffset":11685,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.sendto","ranges":[{"startOffset":11790,"endOffset":12231,"count":0}],"isBlockCoverage":false},{"functionName":"sliceBuffer","ranges":[{"startOffset":12235,"endOffset":12805,"count":0}],"isBlockCoverage":false},{"functionName":"fixBufferList","ranges":[{"startOffset":12808,"endOffset":13192,"count":0}],"isBlockCoverage":false},{"functionName":"enqueue","ranges":[{"startOffset":13195,"endOffset":13607,"count":0}],"isBlockCoverage":false},{"functionName":"onListenSuccess","ranges":[{"startOffset":13610,"endOffset":13730,"count":0}],"isBlockCoverage":false},{"functionName":"onListenError","ranges":[{"startOffset":13733,"endOffset":13857,"count":0}],"isBlockCoverage":false},{"functionName":"clearQueue","ranges":[{"startOffset":13860,"endOffset":14057,"count":0}],"isBlockCoverage":false},{"functionName":"isConnected","ranges":[{"startOffset":14059,"endOffset":14174,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.send","ranges":[{"startOffset":14746,"endOffset":17640,"count":0}],"isBlockCoverage":false},{"functionName":"doSend","ranges":[{"startOffset":17643,"endOffset":18782,"count":0}],"isBlockCoverage":false},{"functionName":"afterSend","ranges":[{"startOffset":18784,"endOffset":18961,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.close","ranges":[{"startOffset":18988,"endOffset":19523,"count":0}],"isBlockCoverage":false},{"functionName":"socketCloseNT","ranges":[{"startOffset":19527,"endOffset":19581,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":19611,"endOffset":19801,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.remoteAddress","ranges":[{"startOffset":19837,"endOffset":20147,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setBroadcast","ranges":[{"startOffset":20183,"endOffset":20331,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setTTL","ranges":[{"startOffset":20361,"endOffset":20535,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastTTL","ranges":[{"startOffset":20574,"endOffset":20766,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastLoopback","ranges":[{"startOffset":20810,"endOffset":21010,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastInterface","ranges":[{"startOffset":21055,"endOffset":21317,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addMembership","ranges":[{"startOffset":21353,"endOffset":21727,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropMembership","ranges":[{"startOffset":21765,"endOffset":22142,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addSourceSpecificMembership","ranges":[{"startOffset":22192,"endOffset":22949,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropSourceSpecificMembership","ranges":[{"startOffset":23001,"endOffset":23764,"count":0}],"isBlockCoverage":false},{"functionName":"healthCheck","ranges":[{"startOffset":23768,"endOffset":23931,"count":0}],"isBlockCoverage":false},{"functionName":"stopReceiving","ranges":[{"startOffset":23934,"endOffset":24098,"count":0}],"isBlockCoverage":false},{"functionName":"onMessage","ranges":[{"startOffset":24101,"endOffset":24355,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":24381,"endOffset":24488,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":24517,"endOffset":24626,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setRecvBufferSize","ranges":[{"startOffset":24667,"endOffset":24724,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setSendBufferSize","ranges":[{"startOffset":24765,"endOffset":24822,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getRecvBufferSize","ranges":[{"startOffset":24863,"endOffset":24920,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getSendBufferSize","ranges":[{"startOffset":24961,"endOffset":25018,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25119,"endOffset":25173,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25246,"endOffset":25302,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25435,"endOffset":25492,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25568,"endOffset":25627,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25763,"endOffset":25820,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25896,"endOffset":25955,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26087,"endOffset":26140,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26212,"endOffset":26267,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26399,"endOffset":26456,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26532,"endOffset":26591,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26697,"endOffset":26732,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26841,"endOffset":26878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":27144,"endOffset":27180,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27184,"endOffset":27225,"count":0}],"isBlockCoverage":false}]},{"scriptId":"225","url":"internal/dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1844,"count":1}],"isBlockCoverage":false},{"functionName":"lookup4","ranges":[{"startOffset":448,"endOffset":549,"count":0}],"isBlockCoverage":false},{"functionName":"lookup6","ranges":[{"startOffset":552,"endOffset":647,"count":0}],"isBlockCoverage":false},{"functionName":"newHandle","ranges":[{"startOffset":649,"endOffset":1317,"count":0}],"isBlockCoverage":false},{"functionName":"_createSocketHandle","ranges":[{"startOffset":1320,"endOffset":1768,"count":0}],"isBlockCoverage":false}]},{"scriptId":"226","url":"internal/socket_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2705,"count":1}],"isBlockCoverage":false},{"functionName":"SocketListSend","ranges":[{"startOffset":235,"endOffset":376,"count":0}],"isBlockCoverage":false},{"functionName":"_request","ranges":[{"startOffset":380,"endOffset":1035,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":1039,"endOffset":1189,"count":0}],"isBlockCoverage":false},{"functionName":"getConnections","ranges":[{"startOffset":1193,"endOffset":1428,"count":0}],"isBlockCoverage":false},{"functionName":"SocketListReceive","ranges":[{"startOffset":1542,"endOffset":2400,"count":0}],"isBlockCoverage":false},{"functionName":"add","ranges":[{"startOffset":2404,"endOffset":2645,"count":0}],"isBlockCoverage":false}]},{"scriptId":"227","url":"internal/cluster/round_robin_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3060,"count":1}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle","ranges":[{"startOffset":341,"endOffset":1127,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.add","ranges":[{"startOffset":1162,"endOffset":1791,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.remove","ranges":[{"startOffset":1830,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.distribute","ranges":[{"startOffset":2198,"endOffset":2448,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.handoff","ranges":[{"startOffset":2488,"endOffset":3058,"count":0}],"isBlockCoverage":false}]},{"scriptId":"228","url":"internal/cluster/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1039,"count":1}],"isBlockCoverage":false},{"functionName":"sendHelper","ranges":[{"startOffset":163,"endOffset":495,"count":0}],"isBlockCoverage":false},{"functionName":"internal","ranges":[{"startOffset":629,"endOffset":1038,"count":0}],"isBlockCoverage":false}]},{"scriptId":"229","url":"internal/cluster/shared_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1102,"count":1}],"isBlockCoverage":false},{"functionName":"SharedHandle","ranges":[{"startOffset":192,"endOffset":670,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.add","ranges":[{"startOffset":701,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.remove","ranges":[{"startOffset":880,"endOffset":1100,"count":0}],"isBlockCoverage":false}]},{"scriptId":"230","url":"internal/cluster/worker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1314,"count":1}],"isBlockCoverage":false},{"functionName":"Worker","ranges":[{"startOffset":227,"endOffset":809,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.kill","ranges":[{"startOffset":944,"endOffset":1005,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.send","ranges":[{"startOffset":1032,"endOffset":1113,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isDead","ranges":[{"startOffset":1142,"endOffset":1231,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isConnected","ranges":[{"startOffset":1265,"endOffset":1312,"count":0}],"isBlockCoverage":false}]},{"scriptId":"231","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/info.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":529,"count":1}],"isBlockCoverage":true},{"functionName":"infoController","ranges":[{"startOffset":37,"endOffset":496,"count":29},{"startOffset":350,"endOffset":379,"count":27},{"startOffset":381,"endOffset":494,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":240,"endOffset":308,"count":133}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":422,"endOffset":488,"count":127}],"isBlockCoverage":true}]},{"scriptId":"232","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":853,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":156,"endOffset":820,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":483,"endOffset":742,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":652,"endOffset":669,"count":3}],"isBlockCoverage":true}]},{"scriptId":"233","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/selectRandomItemsFromArray.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":256,"count":1}],"isBlockCoverage":true},{"functionName":"selectRandomItemFromArray","ranges":[{"startOffset":0,"endOffset":212,"count":3},{"startOffset":88,"endOffset":105,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":145,"endOffset":170,"count":0}],"isBlockCoverage":false}]},{"scriptId":"234","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":958,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":37,"endOffset":925,"count":3}],"isBlockCoverage":true}]},{"scriptId":"235","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":514,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":37,"endOffset":482,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":169,"endOffset":339,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":383,"endOffset":407,"count":1}],"isBlockCoverage":true}]},{"scriptId":"236","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1072,"count":1}],"isBlockCoverage":true},{"functionName":"internalGetController","ranges":[{"startOffset":37,"endOffset":1032,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":591,"endOffset":613,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":670,"endOffset":940,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":754,"endOffset":843,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":803,"endOffset":835,"count":3}],"isBlockCoverage":true}]}],"timestamp":96044.058793} \ No newline at end of file diff --git a/coverage/tmp/coverage-267928-1623581236821-0.json b/coverage/tmp/coverage-267928-1623581236821-0.json new file mode 100644 index 0000000..c961e34 --- /dev/null +++ b/coverage/tmp/coverage-267928-1623581236821-0.json @@ -0,0 +1 @@ +{"result":[{"scriptId":"6","url":"internal/per_context/primordials.js","functions":[{"functionName":"uncurryThis","ranges":[{"startOffset":1000,"endOffset":1096,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1038,"endOffset":1093,"count":7058}],"isBlockCoverage":true}]},{"scriptId":"9","url":"internal/bootstrap/loaders.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10311,"count":1}],"isBlockCoverage":true},{"functionName":"binding","ranges":[{"startOffset":3652,"endOffset":4049,"count":0}],"isBlockCoverage":false},{"functionName":"_linkedBinding","ranges":[{"startOffset":4079,"endOffset":4287,"count":0}],"isBlockCoverage":false},{"functionName":"internalBinding","ranges":[{"startOffset":4467,"endOffset":4729,"count":288},{"startOffset":4569,"endOffset":4709,"count":40}],"isBlockCoverage":true},{"functionName":"getOwn","ranges":[{"startOffset":4874,"endOffset":5028,"count":1584},{"startOffset":5010,"endOffset":5025,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5395,"endOffset":5493,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5454,"endOffset":5488,"count":232}],"isBlockCoverage":true},{"functionName":"NativeModule","ranges":[{"startOffset":5498,"endOffset":6250,"count":232}],"isBlockCoverage":true},{"functionName":"exposeInternals","ranges":[{"startOffset":6400,"endOffset":6626,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6637,"endOffset":6690,"count":0}],"isBlockCoverage":false},{"functionName":"canBeRequiredByUsers","ranges":[{"startOffset":6701,"endOffset":6817,"count":440},{"startOffset":6785,"endOffset":6812,"count":57}],"isBlockCoverage":true},{"functionName":"compileForPublicLoader","ranges":[{"startOffset":6889,"endOffset":7583,"count":55},{"startOffset":6952,"endOffset":7144,"count":0},{"startOffset":7208,"endOffset":7505,"count":12},{"startOffset":7467,"endOffset":7471,"count":0}],"isBlockCoverage":true},{"functionName":"getESMFacade","ranges":[{"startOffset":7587,"endOffset":8138,"count":61},{"startOffset":7625,"endOffset":7644,"count":49},{"startOffset":7644,"endOffset":8137,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7865,"endOffset":7978,"count":12}],"isBlockCoverage":true},{"functionName":"syncExports","ranges":[{"startOffset":8434,"endOffset":8778,"count":67},{"startOffset":8553,"endOffset":8768,"count":1584},{"startOffset":8630,"endOffset":8639,"count":0}],"isBlockCoverage":true},{"functionName":"compileForInternalLoader","ranges":[{"startOffset":8782,"endOffset":9367,"count":650},{"startOffset":8831,"endOffset":8846,"count":125},{"startOffset":8848,"endOffset":8882,"count":531},{"startOffset":8882,"endOffset":9021,"count":119},{"startOffset":9021,"endOffset":9056,"count":1},{"startOffset":9057,"endOffset":9078,"count":118},{"startOffset":9232,"endOffset":9366,"count":119}],"isBlockCoverage":true},{"functionName":"nativeModuleRequire","ranges":[{"startOffset":9565,"endOffset":9936,"count":601},{"startOffset":9623,"endOffset":9654,"count":6},{"startOffset":9654,"endOffset":9838,"count":595},{"startOffset":9838,"endOffset":9893,"count":0},{"startOffset":9893,"endOffset":9935,"count":595}],"isBlockCoverage":true},{"functionName":"requireWithFallbackInDeps","ranges":[{"startOffset":10052,"endOffset":10224,"count":0}],"isBlockCoverage":false}]},{"scriptId":"10","url":"internal/bootstrap/node.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12616,"count":1}],"isBlockCoverage":true},{"functionName":"process.openStdin","ranges":[{"startOffset":3399,"endOffset":3469,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6160,"endOffset":6322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6424,"endOffset":6596,"count":0}],"isBlockCoverage":false},{"functionName":"setupPrepareStackTrace","ranges":[{"startOffset":9383,"endOffset":9969,"count":1}],"isBlockCoverage":true},{"functionName":"setupProcessObject","ranges":[{"startOffset":9971,"endOffset":10576,"count":1}],"isBlockCoverage":true},{"functionName":"setupGlobalProxy","ranges":[{"startOffset":10578,"endOffset":10755,"count":1}],"isBlockCoverage":true},{"functionName":"setupBuffer","ranges":[{"startOffset":10757,"endOffset":11193,"count":1}],"isBlockCoverage":true},{"functionName":"createGlobalConsole","ranges":[{"startOffset":11195,"endOffset":11876,"count":1}],"isBlockCoverage":true},{"functionName":"exposeNamespace","ranges":[{"startOffset":11928,"endOffset":12126,"count":1}],"isBlockCoverage":true},{"functionName":"exposeInterface","ranges":[{"startOffset":12178,"endOffset":12376,"count":4}],"isBlockCoverage":true},{"functionName":"defineOperation","ranges":[{"startOffset":12436,"endOffset":12615,"count":7}],"isBlockCoverage":true}]},{"scriptId":"11","url":"internal/errors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":53549,"count":1}],"isBlockCoverage":false},{"functionName":"prepareStackTrace","ranges":[{"startOffset":1404,"endOffset":2120,"count":93},{"startOffset":1581,"endOffset":1697,"count":0},{"startOffset":1824,"endOffset":1846,"count":0},{"startOffset":2027,"endOffset":2056,"count":0}],"isBlockCoverage":true},{"functionName":"maybeOverridePrepareStackTrace","ranges":[{"startOffset":2162,"endOffset":2869,"count":93},{"startOffset":2431,"endOffset":2497,"count":0},{"startOffset":2778,"endOffset":2844,"count":0}],"isBlockCoverage":true},{"functionName":"lazyInternalUtil","ranges":[{"startOffset":2959,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"lazyInternalUtilInspect","ranges":[{"startOffset":3119,"endOffset":3281,"count":0}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":3295,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"SystemError","ranges":[{"startOffset":3906,"endOffset":6444,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":6448,"endOffset":6523,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6527,"endOffset":6716,"count":0}],"isBlockCoverage":false},{"functionName":"makeSystemErrorWithCode","ranges":[{"startOffset":6720,"endOffset":6865,"count":4}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6811,"endOffset":6858,"count":0}],"isBlockCoverage":false},{"functionName":"makeNodeErrorWithCode","ranges":[{"startOffset":6867,"endOffset":7622,"count":233}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6955,"endOffset":7536,"count":93},{"startOffset":7045,"endOffset":7254,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":7542,"endOffset":7615,"count":0}],"isBlockCoverage":false},{"functionName":"hideStackFrames","ranges":[{"startOffset":7694,"endOffset":8105,"count":31}],"isBlockCoverage":true},{"functionName":"hidden","ranges":[{"startOffset":7734,"endOffset":8102,"count":2894},{"startOffset":7898,"endOffset":7962,"count":2036},{"startOffset":8046,"endOffset":8092,"count":2036}],"isBlockCoverage":true},{"functionName":"addCodeToName","ranges":[{"startOffset":8107,"endOffset":8723,"count":93},{"startOffset":8205,"endOffset":8260,"count":0},{"startOffset":8545,"endOffset":8689,"count":0}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":8835,"endOffset":9343,"count":234},{"startOffset":9077,"endOffset":9122,"count":4},{"startOffset":9122,"endOffset":9176,"count":230},{"startOffset":9211,"endOffset":9321,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9238,"endOffset":9315,"count":3}],"isBlockCoverage":true},{"functionName":"getMessage","ranges":[{"startOffset":9345,"endOffset":10149,"count":93},{"startOffset":9446,"endOffset":9482,"count":1},{"startOffset":9773,"endOffset":9831,"count":0},{"startOffset":10053,"endOffset":10148,"count":0}],"isBlockCoverage":true},{"functionName":"lazyUv","ranges":[{"startOffset":10167,"endOffset":10271,"count":28},{"startOffset":10205,"endOffset":10249,"count":1}],"isBlockCoverage":true},{"functionName":"uvErrmapGet","ranges":[{"startOffset":10328,"endOffset":10498,"count":28},{"startOffset":10406,"endOffset":10459,"count":1}],"isBlockCoverage":true},{"functionName":"uvException","ranges":[{"startOffset":10791,"endOffset":11987,"count":28},{"startOffset":10868,"endOffset":10886,"count":0},{"startOffset":11080,"endOffset":11149,"count":0},{"startOffset":11688,"endOffset":11810,"count":84},{"startOffset":11736,"endOffset":11754,"count":56},{"startOffset":11756,"endOffset":11779,"count":28},{"startOffset":11779,"endOffset":11810,"count":56},{"startOffset":11882,"endOffset":11908,"count":0}],"isBlockCoverage":true},{"functionName":"uvExceptionWithHostPort","ranges":[{"startOffset":12300,"endOffset":13205,"count":0}],"isBlockCoverage":false},{"functionName":"errnoException","ranges":[{"startOffset":13384,"endOffset":14090,"count":0}],"isBlockCoverage":false},{"functionName":"exceptionWithHostPort","ranges":[{"startOffset":14443,"endOffset":15659,"count":0}],"isBlockCoverage":false},{"functionName":"dnsException","ranges":[{"startOffset":15823,"endOffset":17338,"count":0}],"isBlockCoverage":false},{"functionName":"connResetException","ranges":[{"startOffset":17340,"endOffset":17495,"count":0}],"isBlockCoverage":false},{"functionName":"isStackOverflowError","ranges":[{"startOffset":17785,"endOffset":18163,"count":0}],"isBlockCoverage":false},{"functionName":"addNumericalSeparator","ranges":[{"startOffset":18244,"endOffset":18480,"count":0}],"isBlockCoverage":false},{"functionName":"beforeInspector","ranges":[{"startOffset":18759,"endOffset":19150,"count":0}],"isBlockCoverage":false},{"functionName":"afterInspector","ranges":[{"startOffset":19154,"endOffset":20492,"count":0}],"isBlockCoverage":false},{"functionName":"AbortError","ranges":[{"startOffset":20728,"endOffset":20846,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22625,"endOffset":22789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25628,"endOffset":25743,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26032,"endOffset":26126,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":28407,"endOffset":28635,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":30368,"endOffset":30586,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32336,"endOffset":32636,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32678,"endOffset":32822,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32865,"endOffset":36070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36111,"endOffset":36367,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36759,"endOffset":36922,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37584,"endOffset":37719,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37760,"endOffset":38084,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38243,"endOffset":38391,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38435,"endOffset":39209,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39587,"endOffset":39751,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39804,"endOffset":40135,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40179,"endOffset":40486,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40856,"endOffset":40931,"count":93}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":40975,"endOffset":41263,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":41591,"endOffset":42022,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42698,"endOffset":43221,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43315,"endOffset":43416,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44176,"endOffset":44874,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44925,"endOffset":45117,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45166,"endOffset":45482,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45515,"endOffset":46392,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":46844,"endOffset":47103,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":48453,"endOffset":48622,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":50520,"endOffset":50651,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":51244,"endOffset":51527,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52507,"endOffset":52605,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52799,"endOffset":53154,"count":0}],"isBlockCoverage":false}]},{"scriptId":"12","url":"internal/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12498,"count":1}],"isBlockCoverage":false},{"functionName":"lazyUv","ranges":[{"startOffset":991,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"removeColors","ranges":[{"startOffset":1084,"endOffset":1153,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":1155,"endOffset":1405,"count":0}],"isBlockCoverage":false},{"functionName":"deprecate","ranges":[{"startOffset":1690,"endOffset":2787,"count":45},{"startOffset":1764,"endOffset":1784,"count":0},{"startOffset":1844,"endOffset":1899,"count":0},{"startOffset":2541,"endOffset":2763,"count":30}],"isBlockCoverage":true},{"functionName":"deprecated","ranges":[{"startOffset":1925,"endOffset":2399,"count":0}],"isBlockCoverage":false},{"functionName":"decorateErrorStack","ranges":[{"startOffset":2789,"endOffset":3128,"count":0}],"isBlockCoverage":false},{"functionName":"assertCrypto","ranges":[{"startOffset":3130,"endOffset":3204,"count":3},{"startOffset":3176,"endOffset":3202,"count":0}],"isBlockCoverage":true},{"functionName":"normalizeEncoding","ranges":[{"startOffset":3383,"endOffset":3514,"count":92},{"startOffset":3453,"endOffset":3471,"count":7},{"startOffset":3473,"endOffset":3487,"count":85},{"startOffset":3487,"endOffset":3513,"count":7}],"isBlockCoverage":true},{"functionName":"slowCases","ranges":[{"startOffset":3516,"endOffset":5096,"count":7},{"startOffset":3570,"endOffset":3814,"count":0},{"startOffset":3819,"endOffset":3939,"count":0},{"startOffset":3944,"endOffset":4348,"count":0},{"startOffset":4389,"endOffset":4405,"count":0},{"startOffset":4454,"endOffset":4470,"count":0},{"startOffset":4499,"endOffset":4515,"count":0},{"startOffset":4564,"endOffset":4580,"count":0},{"startOffset":4645,"endOffset":4661,"count":0},{"startOffset":4710,"endOffset":4726,"count":0},{"startOffset":4744,"endOffset":4888,"count":0},{"startOffset":4893,"endOffset":5040,"count":0},{"startOffset":5045,"endOffset":5090,"count":0}],"isBlockCoverage":true},{"functionName":"emitExperimentalWarning","ranges":[{"startOffset":5098,"endOffset":5386,"count":0}],"isBlockCoverage":false},{"functionName":"filterDuplicateStrings","ranges":[{"startOffset":5388,"endOffset":5696,"count":0}],"isBlockCoverage":false},{"functionName":"cachedResult","ranges":[{"startOffset":5698,"endOffset":5841,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5749,"endOffset":5838,"count":0}],"isBlockCoverage":false},{"functionName":"createClassWrapper","ranges":[{"startOffset":6106,"endOffset":6471,"count":0}],"isBlockCoverage":false},{"functionName":"getSignalsToNamesMapping","ranges":[{"startOffset":6500,"endOffset":6778,"count":0}],"isBlockCoverage":false},{"functionName":"convertToValidSignal","ranges":[{"startOffset":6780,"endOffset":7087,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorOf","ranges":[{"startOffset":7089,"endOffset":7435,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7437,"endOffset":7566,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorMap","ranges":[{"startOffset":7568,"endOffset":7633,"count":0}],"isBlockCoverage":false},{"functionName":"promisify","ranges":[{"startOffset":7778,"endOffset":9249,"count":5},{"startOffset":7851,"endOffset":7916,"count":0},{"startOffset":7960,"endOffset":8281,"count":0}],"isBlockCoverage":true},{"functionName":"fn","ranges":[{"startOffset":8481,"endOffset":8962,"count":762}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8527,"endOffset":8956,"count":762}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8585,"endOffset":8948,"count":37},{"startOffset":8624,"endOffset":8665,"count":0},{"startOffset":8706,"endOffset":8726,"count":0},{"startOffset":8728,"endOffset":8893,"count":0}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":9344,"endOffset":9666,"count":0}],"isBlockCoverage":false},{"functionName":"spliceOne","ranges":[{"startOffset":9807,"endOffset":9934,"count":90},{"startOffset":9888,"endOffset":9918,"count":0}],"isBlockCoverage":true},{"functionName":"isInsideNodeModules","ranges":[{"startOffset":10016,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":11190,"endOffset":11348,"count":0}],"isBlockCoverage":false},{"functionName":"sleep","ranges":[{"startOffset":11371,"endOffset":11586,"count":0}],"isBlockCoverage":false}]},{"scriptId":"13","url":"events.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":26873,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2207,"endOffset":2367,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter","ranges":[{"startOffset":2372,"endOffset":2441,"count":319}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2805,"endOffset":2861,"count":3}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":2865,"endOffset":3099,"count":0}],"isBlockCoverage":false},{"functionName":"checkListener","ranges":[{"startOffset":3671,"endOffset":3821,"count":2353},{"startOffset":3744,"endOffset":3819,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3910,"endOffset":3958,"count":214}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3967,"endOffset":4242,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.setMaxListeners","ranges":[{"startOffset":4618,"endOffset":5532,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.init","ranges":[{"startOffset":5555,"endOffset":6285,"count":319},{"startOffset":5606,"endOffset":5666,"count":152},{"startOffset":5668,"endOffset":5739,"count":167},{"startOffset":5810,"endOffset":5835,"count":219},{"startOffset":5837,"endOffset":6096,"count":0}],"isBlockCoverage":true},{"functionName":"addCatch","ranges":[{"startOffset":6288,"endOffset":6847,"count":33},{"startOffset":6375,"endOffset":6794,"count":0},{"startOffset":6799,"endOffset":6845,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6576,"endOffset":6786,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionOrErr","ranges":[{"startOffset":6849,"endOffset":7507,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxListeners","ranges":[{"startOffset":7678,"endOffset":7877,"count":30},{"startOffset":7764,"endOffset":7834,"count":0}],"isBlockCoverage":true},{"functionName":"_getMaxListeners","ranges":[{"startOffset":7880,"endOffset":8029,"count":331},{"startOffset":7958,"endOffset":7998,"count":211},{"startOffset":7998,"endOffset":8028,"count":120}],"isBlockCoverage":true},{"functionName":"getMaxListeners","ranges":[{"startOffset":8072,"endOffset":8135,"count":0}],"isBlockCoverage":false},{"functionName":"identicalSequenceRange","ranges":[{"startOffset":8263,"endOffset":8839,"count":0}],"isBlockCoverage":false},{"functionName":"enhanceStackTrace","ranges":[{"startOffset":8841,"endOffset":9447,"count":0}],"isBlockCoverage":false},{"functionName":"emit","ranges":[{"startOffset":9479,"endOffset":11762,"count":1970},{"startOffset":9624,"endOffset":9662,"count":0},{"startOffset":9670,"endOffset":9704,"count":0},{"startOffset":9728,"endOffset":9757,"count":0},{"startOffset":9763,"endOffset":9800,"count":0},{"startOffset":9872,"endOffset":10804,"count":0},{"startOffset":10872,"endOffset":10885,"count":784},{"startOffset":10885,"endOffset":10924,"count":1186},{"startOffset":10924,"endOffset":11213,"count":706},{"startOffset":11140,"endOffset":11158,"count":3},{"startOffset":11160,"endOffset":11209,"count":3},{"startOffset":11213,"endOffset":11744,"count":480},{"startOffset":11330,"endOffset":11740,"count":1020},{"startOffset":11661,"endOffset":11679,"count":30},{"startOffset":11681,"endOffset":11734,"count":30},{"startOffset":11744,"endOffset":11761,"count":1186}],"isBlockCoverage":true},{"functionName":"_addListener","ranges":[{"startOffset":11765,"endOffset":13820,"count":1563},{"startOffset":11945,"endOffset":12029,"count":60},{"startOffset":12029,"endOffset":12527,"count":1503},{"startOffset":12214,"endOffset":12494,"count":575},{"startOffset":12291,"endOffset":12310,"count":240},{"startOffset":12311,"endOffset":12321,"count":335},{"startOffset":12559,"endOffset":12697,"count":1232},{"startOffset":12697,"endOffset":13800,"count":331},{"startOffset":12745,"endOffset":12961,"count":241},{"startOffset":12856,"endOffset":12878,"count":60},{"startOffset":12879,"endOffset":12901,"count":181},{"startOffset":12961,"endOffset":13065,"count":90},{"startOffset":12980,"endOffset":13021,"count":0},{"startOffset":13169,"endOffset":13188,"count":0},{"startOffset":13190,"endOffset":13796,"count":0}],"isBlockCoverage":true},{"functionName":"addListener","ranges":[{"startOffset":13859,"endOffset":13951,"count":1473}],"isBlockCoverage":true},{"functionName":"prependListener","ranges":[{"startOffset":14064,"endOffset":14167,"count":90}],"isBlockCoverage":true},{"functionName":"onceWrapper","ranges":[{"startOffset":14170,"endOffset":14434,"count":180},{"startOffset":14333,"endOffset":14372,"count":120},{"startOffset":14372,"endOffset":14432,"count":60}],"isBlockCoverage":true},{"functionName":"_onceWrap","ranges":[{"startOffset":14436,"endOffset":14677,"count":455}],"isBlockCoverage":true},{"functionName":"once","ranges":[{"startOffset":14709,"endOffset":14835,"count":455}],"isBlockCoverage":true},{"functionName":"prependOnceListener","ranges":[{"startOffset":14887,"endOffset":15057,"count":0}],"isBlockCoverage":false},{"functionName":"removeListener","ranges":[{"startOffset":15179,"endOffset":16473,"count":335},{"startOffset":15328,"endOffset":15340,"count":0},{"startOffset":15413,"endOffset":15425,"count":0},{"startOffset":15455,"endOffset":15484,"count":214},{"startOffset":15486,"endOffset":15746,"count":185},{"startOffset":15537,"endOffset":15571,"count":0},{"startOffset":15667,"endOffset":15728,"count":1},{"startOffset":15746,"endOffset":16447,"count":150},{"startOffset":15865,"endOffset":16004,"count":270},{"startOffset":15902,"endOffset":15934,"count":120},{"startOffset":15936,"endOffset":15994,"count":150},{"startOffset":16042,"endOffset":16054,"count":0},{"startOffset":16094,"endOffset":16107,"count":60},{"startOffset":16107,"endOffset":16268,"count":90},{"startOffset":16174,"endOffset":16221,"count":1},{"startOffset":16311,"endOffset":16334,"count":60},{"startOffset":16395,"endOffset":16439,"count":0}],"isBlockCoverage":true},{"functionName":"removeAllListeners","ranges":[{"startOffset":16593,"endOffset":17919,"count":0}],"isBlockCoverage":false},{"functionName":"_listeners","ranges":[{"startOffset":17922,"endOffset":18317,"count":0}],"isBlockCoverage":false},{"functionName":"listeners","ranges":[{"startOffset":18354,"endOffset":18421,"count":0}],"isBlockCoverage":false},{"functionName":"rawListeners","ranges":[{"startOffset":18462,"endOffset":18533,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.listenerCount","ranges":[{"startOffset":18565,"endOffset":18733,"count":0}],"isBlockCoverage":false},{"functionName":"listenerCount","ranges":[{"startOffset":18790,"endOffset":19080,"count":358},{"startOffset":18963,"endOffset":18986,"count":108},{"startOffset":18986,"endOffset":19061,"count":250},{"startOffset":19022,"endOffset":19061,"count":0},{"startOffset":19065,"endOffset":19079,"count":250}],"isBlockCoverage":true},{"functionName":"eventNames","ranges":[{"startOffset":19118,"endOffset":19211,"count":0}],"isBlockCoverage":false},{"functionName":"arrayClone","ranges":[{"startOffset":19214,"endOffset":19674,"count":480},{"startOffset":19386,"endOffset":19418,"count":420},{"startOffset":19423,"endOffset":19463,"count":60},{"startOffset":19468,"endOffset":19516,"count":0},{"startOffset":19521,"endOffset":19577,"count":0},{"startOffset":19582,"endOffset":19646,"count":0},{"startOffset":19650,"endOffset":19673,"count":0}],"isBlockCoverage":true},{"functionName":"unwrapListeners","ranges":[{"startOffset":19676,"endOffset":19890,"count":0}],"isBlockCoverage":false},{"functionName":"getEventListeners","ranges":[{"startOffset":19892,"endOffset":20687,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":20689,"endOffset":22475,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22553,"endOffset":22574,"count":0}],"isBlockCoverage":false},{"functionName":"createIterResult","ranges":[{"startOffset":22589,"endOffset":22657,"count":0}],"isBlockCoverage":false},{"functionName":"addErrorHandlerIfEventEmitter","ranges":[{"startOffset":22659,"endOffset":22842,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticRemoveListener","ranges":[{"startOffset":22844,"endOffset":23229,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticAddListener","ranges":[{"startOffset":23231,"endOffset":23820,"count":0}],"isBlockCoverage":false},{"functionName":"on","ranges":[{"startOffset":23822,"endOffset":26872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"14","url":"internal/util/inspect.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":71637,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2893,"endOffset":2929,"count":62}],"isBlockCoverage":true},{"functionName":"isUndetectableObject","ranges":[{"startOffset":3020,"endOffset":3070,"count":0}],"isBlockCoverage":false},{"functionName":"getUserOptions","ranges":[{"startOffset":6215,"endOffset":7666,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":7961,"endOffset":9878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9970,"endOffset":10015,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":10019,"endOffset":10227,"count":0}],"isBlockCoverage":false},{"functionName":"defineColorAlias","ranges":[{"startOffset":11964,"endOffset":12206,"count":12}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":12059,"endOffset":12099,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":12105,"endOffset":12151,"count":0}],"isBlockCoverage":false},{"functionName":"addQuotes","ranges":[{"startOffset":13216,"endOffset":13374,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":13393,"endOffset":13425,"count":0}],"isBlockCoverage":false},{"functionName":"strEscape","ranges":[{"startOffset":13538,"endOffset":15164,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeWithColor","ranges":[{"startOffset":15166,"endOffset":15432,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeNoColor","ranges":[{"startOffset":15434,"endOffset":15480,"count":0}],"isBlockCoverage":false},{"functionName":"getEmptyFormatArray","ranges":[{"startOffset":15559,"endOffset":15606,"count":0}],"isBlockCoverage":false},{"functionName":"isInstanceof","ranges":[{"startOffset":15608,"endOffset":15726,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorName","ranges":[{"startOffset":15728,"endOffset":16988,"count":0}],"isBlockCoverage":false},{"functionName":"addPrototypeProperties","ranges":[{"startOffset":17175,"endOffset":19018,"count":0}],"isBlockCoverage":false},{"functionName":"getPrefix","ranges":[{"startOffset":19020,"endOffset":19407,"count":0}],"isBlockCoverage":false},{"functionName":"getKeys","ranges":[{"startOffset":19444,"endOffset":20386,"count":0}],"isBlockCoverage":false},{"functionName":"getCtxStyle","ranges":[{"startOffset":20388,"endOffset":20651,"count":0}],"isBlockCoverage":false},{"functionName":"formatProxy","ranges":[{"startOffset":20653,"endOffset":21102,"count":0}],"isBlockCoverage":false},{"functionName":"findTypedConstructor","ranges":[{"startOffset":21104,"endOffset":21627,"count":0}],"isBlockCoverage":false},{"functionName":"formatValue","ranges":[{"startOffset":21809,"endOffset":24348,"count":0}],"isBlockCoverage":false},{"functionName":"formatRaw","ranges":[{"startOffset":24350,"endOffset":34825,"count":0}],"isBlockCoverage":false},{"functionName":"getIteratorBraces","ranges":[{"startOffset":34827,"endOffset":35009,"count":0}],"isBlockCoverage":false},{"functionName":"getBoxedBase","ranges":[{"startOffset":35011,"endOffset":36185,"count":0}],"isBlockCoverage":false},{"functionName":"getClassBase","ranges":[{"startOffset":36187,"endOffset":36787,"count":0}],"isBlockCoverage":false},{"functionName":"getFunctionBase","ranges":[{"startOffset":36789,"endOffset":37882,"count":0}],"isBlockCoverage":false},{"functionName":"formatError","ranges":[{"startOffset":37884,"endOffset":41005,"count":0}],"isBlockCoverage":false},{"functionName":"groupArrayElements","ranges":[{"startOffset":41007,"endOffset":45258,"count":0}],"isBlockCoverage":false},{"functionName":"handleMaxCallStackSize","ranges":[{"startOffset":45260,"endOffset":45648,"count":0}],"isBlockCoverage":false},{"functionName":"formatNumber","ranges":[{"startOffset":45650,"endOffset":45827,"count":0}],"isBlockCoverage":false},{"functionName":"formatBigInt","ranges":[{"startOffset":45829,"endOffset":45901,"count":0}],"isBlockCoverage":false},{"functionName":"formatPrimitive","ranges":[{"startOffset":45903,"endOffset":47086,"count":0}],"isBlockCoverage":false},{"functionName":"formatNamespaceObject","ranges":[{"startOffset":47088,"endOffset":48208,"count":0}],"isBlockCoverage":false},{"functionName":"formatSpecialArray","ranges":[{"startOffset":48255,"endOffset":49462,"count":0}],"isBlockCoverage":false},{"functionName":"formatArrayBuffer","ranges":[{"startOffset":49464,"endOffset":50064,"count":0}],"isBlockCoverage":false},{"functionName":"formatArray","ranges":[{"startOffset":50066,"endOffset":50660,"count":0}],"isBlockCoverage":false},{"functionName":"formatTypedArray","ranges":[{"startOffset":50662,"endOffset":51678,"count":0}],"isBlockCoverage":false},{"functionName":"formatSet","ranges":[{"startOffset":51680,"endOffset":51912,"count":0}],"isBlockCoverage":false},{"functionName":"formatMap","ranges":[{"startOffset":51914,"endOffset":52212,"count":0}],"isBlockCoverage":false},{"functionName":"formatSetIterInner","ranges":[{"startOffset":52214,"endOffset":53027,"count":0}],"isBlockCoverage":false},{"functionName":"formatMapIterInner","ranges":[{"startOffset":53029,"endOffset":54351,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakCollection","ranges":[{"startOffset":54353,"endOffset":54445,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakSet","ranges":[{"startOffset":54447,"endOffset":54604,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakMap","ranges":[{"startOffset":54606,"endOffset":54763,"count":0}],"isBlockCoverage":false},{"functionName":"formatIterator","ranges":[{"startOffset":54765,"endOffset":55156,"count":0}],"isBlockCoverage":false},{"functionName":"formatPromise","ranges":[{"startOffset":55158,"endOffset":55623,"count":0}],"isBlockCoverage":false},{"functionName":"formatProperty","ranges":[{"startOffset":55625,"endOffset":58023,"count":0}],"isBlockCoverage":false},{"functionName":"isBelowBreakLength","ranges":[{"startOffset":58025,"endOffset":58967,"count":0}],"isBlockCoverage":false},{"functionName":"reduceToSingleString","ranges":[{"startOffset":58969,"endOffset":61715,"count":0}],"isBlockCoverage":false},{"functionName":"hasBuiltInToString","ranges":[{"startOffset":61717,"endOffset":62736,"count":0}],"isBlockCoverage":false},{"functionName":"firstErrorLine","ranges":[{"startOffset":62761,"endOffset":62800,"count":0}],"isBlockCoverage":false},{"functionName":"tryStringify","ranges":[{"startOffset":62830,"endOffset":63299,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":63301,"endOffset":63385,"count":0}],"isBlockCoverage":false},{"functionName":"formatWithOptions","ranges":[{"startOffset":63387,"endOffset":63665,"count":34},{"startOffset":63510,"endOffset":63602,"count":0}],"isBlockCoverage":true},{"functionName":"formatWithOptionsInternal","ranges":[{"startOffset":63667,"endOffset":67451,"count":34},{"startOffset":63890,"endOffset":67250,"count":0},{"startOffset":67254,"endOffset":67450,"count":0}],"isBlockCoverage":true},{"functionName":"getStringWidth","ranges":[{"startOffset":67880,"endOffset":68431,"count":0}],"isBlockCoverage":false},{"functionName":"getStringWidth","ranges":[{"startOffset":68546,"endOffset":68958,"count":0}],"isBlockCoverage":false},{"functionName":"isFullWidthCodePoint","ranges":[{"startOffset":69126,"endOffset":70735,"count":0}],"isBlockCoverage":false},{"functionName":"isZeroWidthCodePoint","ranges":[{"startOffset":70769,"endOffset":71337,"count":0}],"isBlockCoverage":false},{"functionName":"stripVTControlCharacters","ranges":[{"startOffset":71427,"endOffset":71501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"15","url":"internal/util/types.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1915,"count":1}],"isBlockCoverage":false},{"functionName":"isTypedArray","ranges":[{"startOffset":425,"endOffset":516,"count":0}],"isBlockCoverage":false},{"functionName":"isUint8Array","ranges":[{"startOffset":518,"endOffset":612,"count":656}],"isBlockCoverage":true},{"functionName":"isUint8ClampedArray","ranges":[{"startOffset":614,"endOffset":722,"count":0}],"isBlockCoverage":false},{"functionName":"isUint16Array","ranges":[{"startOffset":724,"endOffset":820,"count":0}],"isBlockCoverage":false},{"functionName":"isUint32Array","ranges":[{"startOffset":822,"endOffset":918,"count":0}],"isBlockCoverage":false},{"functionName":"isInt8Array","ranges":[{"startOffset":920,"endOffset":1012,"count":0}],"isBlockCoverage":false},{"functionName":"isInt16Array","ranges":[{"startOffset":1014,"endOffset":1108,"count":0}],"isBlockCoverage":false},{"functionName":"isInt32Array","ranges":[{"startOffset":1110,"endOffset":1204,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat32Array","ranges":[{"startOffset":1206,"endOffset":1304,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat64Array","ranges":[{"startOffset":1306,"endOffset":1404,"count":0}],"isBlockCoverage":false},{"functionName":"isBigInt64Array","ranges":[{"startOffset":1406,"endOffset":1506,"count":0}],"isBlockCoverage":false},{"functionName":"isBigUint64Array","ranges":[{"startOffset":1508,"endOffset":1610,"count":121}],"isBlockCoverage":true}]},{"scriptId":"16","url":"internal/assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":false},{"functionName":"lazyError","ranges":[{"startOffset":26,"endOffset":155,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":157,"endOffset":307,"count":511},{"startOffset":205,"endOffset":305,"count":0}],"isBlockCoverage":true},{"functionName":"fail","ranges":[{"startOffset":309,"endOffset":426,"count":0}],"isBlockCoverage":false}]},{"scriptId":"17","url":"internal/validators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7218,"count":1}],"isBlockCoverage":false},{"functionName":"isInt32","ranges":[{"startOffset":581,"endOffset":640,"count":178}],"isBlockCoverage":true},{"functionName":"isUint32","ranges":[{"startOffset":642,"endOffset":704,"count":204}],"isBlockCoverage":true},{"functionName":"parseFileMode","ranges":[{"startOffset":1326,"endOffset":1807,"count":115},{"startOffset":1389,"endOffset":1409,"count":0},{"startOffset":1411,"endOffset":1432,"count":0},{"startOffset":1480,"endOffset":1806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1852,"endOffset":2233,"count":126},{"startOffset":1972,"endOffset":2026,"count":0},{"startOffset":2066,"endOffset":2120,"count":0},{"startOffset":2163,"endOffset":2229,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2279,"endOffset":2860,"count":178},{"startOffset":2441,"endOffset":2739,"count":0},{"startOffset":2776,"endOffset":2856,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2904,"endOffset":3414,"count":1},{"startOffset":2957,"endOffset":3306,"count":0},{"startOffset":3322,"endOffset":3336,"count":0},{"startOffset":3338,"endOffset":3412,"count":0}],"isBlockCoverage":true},{"functionName":"validateString","ranges":[{"startOffset":3418,"endOffset":3550,"count":2877},{"startOffset":3494,"endOffset":3548,"count":0}],"isBlockCoverage":true},{"functionName":"validateNumber","ranges":[{"startOffset":3552,"endOffset":3684,"count":61},{"startOffset":3628,"endOffset":3682,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3724,"endOffset":4174,"count":30},{"startOffset":3796,"endOffset":4172,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3835,"endOffset":3888,"count":0}],"isBlockCoverage":false},{"functionName":"validateBoolean","ranges":[{"startOffset":4178,"endOffset":4313,"count":2},{"startOffset":4256,"endOffset":4311,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4357,"endOffset":4582,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4624,"endOffset":4911,"count":0}],"isBlockCoverage":false},{"functionName":"validateSignalName","ranges":[{"startOffset":4915,"endOffset":5336,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5377,"endOffset":5607,"count":149},{"startOffset":5442,"endOffset":5605,"count":0}],"isBlockCoverage":true},{"functionName":"validateEncoding","ranges":[{"startOffset":5611,"endOffset":5945,"count":7},{"startOffset":5779,"endOffset":5798,"count":0},{"startOffset":5800,"endOffset":5943,"count":0}],"isBlockCoverage":true},{"functionName":"validatePort","ranges":[{"startOffset":6089,"endOffset":6463,"count":37},{"startOffset":6193,"endOffset":6220,"count":0},{"startOffset":6257,"endOffset":6284,"count":0},{"startOffset":6363,"endOffset":6376,"count":0},{"startOffset":6379,"endOffset":6442,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6506,"endOffset":6607,"count":828},{"startOffset":6564,"endOffset":6605,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6655,"endOffset":6872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"18","url":"buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":36751,"count":1}],"isBlockCoverage":false},{"functionName":"validateOffset","ranges":[{"startOffset":2784,"endOffset":2868,"count":0}],"isBlockCoverage":false},{"functionName":"createUnsafeBuffer","ranges":[{"startOffset":4082,"endOffset":4218,"count":22}],"isBlockCoverage":true},{"functionName":"createPool","ranges":[{"startOffset":4220,"endOffset":4379,"count":9}],"isBlockCoverage":true},{"functionName":"alignPool","ranges":[{"startOffset":4395,"endOffset":4517,"count":108},{"startOffset":4469,"endOffset":4515,"count":102}],"isBlockCoverage":true},{"functionName":"showFlaggedDeprecation","ranges":[{"startOffset":4821,"endOffset":5501,"count":0}],"isBlockCoverage":false},{"functionName":"toInteger","ranges":[{"startOffset":5503,"endOffset":5721,"count":0}],"isBlockCoverage":false},{"functionName":"_copy","ranges":[{"startOffset":5723,"endOffset":6988,"count":0}],"isBlockCoverage":false},{"functionName":"_copyActual","ranges":[{"startOffset":6990,"endOffset":7592,"count":69},{"startOffset":7131,"endOffset":7185,"count":0},{"startOffset":7347,"endOffset":7362,"count":0},{"startOffset":7389,"endOffset":7404,"count":0},{"startOffset":7464,"endOffset":7540,"count":0}],"isBlockCoverage":true},{"functionName":"Buffer","ranges":[{"startOffset":8168,"endOffset":8501,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":8594,"endOffset":8622,"count":0}],"isBlockCoverage":false},{"functionName":"from","ranges":[{"startOffset":8879,"endOffset":9843,"count":11},{"startOffset":8965,"endOffset":9008,"count":4},{"startOffset":9008,"endOffset":9059,"count":7},{"startOffset":9061,"endOffset":9698,"count":7},{"startOffset":9102,"endOffset":9158,"count":0},{"startOffset":9267,"endOffset":9338,"count":0},{"startOffset":9340,"endOffset":9401,"count":0},{"startOffset":9462,"endOffset":9694,"count":0},{"startOffset":9698,"endOffset":9842,"count":0}],"isBlockCoverage":true},{"functionName":"of","ranges":[{"startOffset":10214,"endOffset":10366,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10655,"endOffset":10876,"count":149},{"startOffset":10699,"endOffset":10764,"count":0},{"startOffset":10807,"endOffset":10874,"count":0}],"isBlockCoverage":true},{"functionName":"alloc","ranges":[{"startOffset":10979,"endOffset":11224,"count":38},{"startOffset":11063,"endOffset":11076,"count":0},{"startOffset":11077,"endOffset":11088,"count":0},{"startOffset":11090,"endOffset":11191,"count":0}],"isBlockCoverage":true},{"functionName":"allocUnsafe","ranges":[{"startOffset":11403,"endOffset":11478,"count":111}],"isBlockCoverage":true},{"functionName":"allocUnsafeSlow","ranges":[{"startOffset":11719,"endOffset":11808,"count":0}],"isBlockCoverage":false},{"functionName":"SlowBuffer","ranges":[{"startOffset":11904,"endOffset":11994,"count":0}],"isBlockCoverage":false},{"functionName":"allocate","ranges":[{"startOffset":12108,"endOffset":12440,"count":111},{"startOffset":12151,"endOffset":12185,"count":0},{"startOffset":12224,"endOffset":12403,"count":98},{"startOffset":12272,"endOffset":12285,"count":8},{"startOffset":12403,"endOffset":12439,"count":13}],"isBlockCoverage":true},{"functionName":"fromStringFast","ranges":[{"startOffset":12442,"endOffset":12988,"count":4},{"startOffset":12568,"endOffset":12617,"count":1},{"startOffset":12617,"endOffset":12663,"count":3},{"startOffset":12663,"endOffset":12676,"count":0},{"startOffset":12676,"endOffset":12809,"count":3},{"startOffset":12809,"endOffset":12935,"count":0},{"startOffset":12935,"endOffset":12987,"count":3}],"isBlockCoverage":true},{"functionName":"fromString","ranges":[{"startOffset":12990,"endOffset":13443,"count":4},{"startOffset":13076,"endOffset":13100,"count":1},{"startOffset":13102,"endOffset":13221,"count":3},{"startOffset":13139,"endOffset":13163,"count":0},{"startOffset":13221,"endOffset":13403,"count":1},{"startOffset":13298,"endOffset":13339,"count":0},{"startOffset":13375,"endOffset":13399,"count":0}],"isBlockCoverage":true},{"functionName":"fromArrayBuffer","ranges":[{"startOffset":13445,"endOffset":14142,"count":0}],"isBlockCoverage":false},{"functionName":"fromArrayLike","ranges":[{"startOffset":14144,"endOffset":14518,"count":7},{"startOffset":14201,"endOffset":14225,"count":0},{"startOffset":14324,"endOffset":14337,"count":0},{"startOffset":14486,"endOffset":14517,"count":0}],"isBlockCoverage":true},{"functionName":"fromObject","ranges":[{"startOffset":14520,"endOffset":14826,"count":7},{"startOffset":14578,"endOffset":14609,"count":0},{"startOffset":14653,"endOffset":14691,"count":0},{"startOffset":14726,"endOffset":14781,"count":0},{"startOffset":14783,"endOffset":14824,"count":0}],"isBlockCoverage":true},{"functionName":"isBuffer","ranges":[{"startOffset":14865,"endOffset":14919,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":14939,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"isEncoding","ranges":[{"startOffset":15287,"endOffset":15438,"count":85}],"isBlockCoverage":true},{"functionName":"concat","ranges":[{"startOffset":15504,"endOffset":16708,"count":23},{"startOffset":15563,"endOffset":15627,"count":0},{"startOffset":15658,"endOffset":15682,"count":0},{"startOffset":15772,"endOffset":15849,"count":69},{"startOffset":15853,"endOffset":15902,"count":0},{"startOffset":16004,"endOffset":16352,"count":69},{"startOffset":16059,"endOffset":16291,"count":0},{"startOffset":16443,"endOffset":16688,"count":0}],"isBlockCoverage":true},{"functionName":"base64ByteLength","ranges":[{"startOffset":16711,"endOffset":16947,"count":1},{"startOffset":16885,"endOffset":16893,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":17082,"endOffset":17146,"count":3}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":17159,"endOffset":17205,"count":85}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17220,"endOffset":17316,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17409,"endOffset":17438,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17451,"endOffset":17515,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17528,"endOffset":17574,"count":19}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17589,"endOffset":17688,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17787,"endOffset":17816,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17829,"endOffset":17893,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17906,"endOffset":17952,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":17967,"endOffset":18066,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18162,"endOffset":18187,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18200,"endOffset":18266,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18279,"endOffset":18327,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18342,"endOffset":18440,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18533,"endOffset":18558,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18571,"endOffset":18636,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18649,"endOffset":18696,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18711,"endOffset":18923,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19019,"endOffset":19070,"count":1}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":19083,"endOffset":19149,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19162,"endOffset":19210,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19225,"endOffset":19439,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19526,"endOffset":19557,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":19570,"endOffset":19633,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19646,"endOffset":19691,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19706,"endOffset":19914,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingOps","ranges":[{"startOffset":19922,"endOffset":21477,"count":105},{"startOffset":20009,"endOffset":20294,"count":104},{"startOffset":20048,"endOffset":20072,"count":85},{"startOffset":20072,"endOffset":20128,"count":19},{"startOffset":20128,"endOffset":20294,"count":0},{"startOffset":20299,"endOffset":20704,"count":0},{"startOffset":20709,"endOffset":20839,"count":0},{"startOffset":20844,"endOffset":20976,"count":0},{"startOffset":20981,"endOffset":21348,"count":1},{"startOffset":21055,"endOffset":21081,"count":0},{"startOffset":21141,"endOffset":21239,"count":0},{"startOffset":21249,"endOffset":21348,"count":0},{"startOffset":21353,"endOffset":21471,"count":0}],"isBlockCoverage":true},{"functionName":"byteLength","ranges":[{"startOffset":21479,"endOffset":22136,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22276,"endOffset":22370,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22448,"endOffset":22546,"count":0}],"isBlockCoverage":false},{"functionName":"copy","ranges":[{"startOffset":22578,"endOffset":22711,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":22992,"endOffset":23571,"count":183},{"startOffset":23064,"endOffset":23112,"count":79},{"startOffset":23112,"endOffset":23164,"count":104},{"startOffset":23164,"endOffset":23174,"count":0},{"startOffset":23174,"endOffset":23237,"count":104},{"startOffset":23204,"endOffset":23214,"count":0},{"startOffset":23237,"endOffset":23263,"count":104},{"startOffset":23263,"endOffset":23275,"count":0},{"startOffset":23281,"endOffset":23291,"count":104},{"startOffset":23291,"endOffset":23312,"count":0},{"startOffset":23312,"endOffset":23338,"count":104},{"startOffset":23338,"endOffset":23348,"count":0},{"startOffset":23348,"endOffset":23384,"count":104},{"startOffset":23384,"endOffset":23418,"count":0},{"startOffset":23418,"endOffset":23489,"count":104},{"startOffset":23489,"endOffset":23530,"count":0},{"startOffset":23530,"endOffset":23570,"count":104}],"isBlockCoverage":true},{"functionName":"equals","ranges":[{"startOffset":23600,"endOffset":23954,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":24082,"endOffset":25077,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":25173,"endOffset":26322,"count":0}],"isBlockCoverage":false},{"functionName":"bidirectionalIndexOf","ranges":[{"startOffset":26750,"endOffset":28057,"count":61},{"startOffset":26887,"endOffset":26947,"count":0},{"startOffset":26982,"endOffset":27016,"count":0},{"startOffset":27052,"endOffset":27087,"count":0},{"startOffset":27312,"endOffset":27350,"count":0},{"startOffset":27482,"endOffset":28056,"count":0}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":28086,"endOffset":28203,"count":61}],"isBlockCoverage":true},{"functionName":"lastIndexOf","ranges":[{"startOffset":28237,"endOffset":28359,"count":0}],"isBlockCoverage":false},{"functionName":"includes","ranges":[{"startOffset":28390,"endOffset":28495,"count":61}],"isBlockCoverage":true},{"functionName":"fill","ranges":[{"startOffset":28673,"endOffset":28772,"count":0}],"isBlockCoverage":false},{"functionName":"_fill","ranges":[{"startOffset":28775,"endOffset":30684,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":30711,"endOffset":31726,"count":0}],"isBlockCoverage":false},{"functionName":"toJSON","ranges":[{"startOffset":31755,"endOffset":31989,"count":0}],"isBlockCoverage":false},{"functionName":"adjustOffset","ranges":[{"startOffset":31992,"endOffset":32426,"count":38},{"startOffset":32232,"endOffset":32270,"count":19},{"startOffset":32270,"endOffset":32333,"count":0},{"startOffset":32333,"endOffset":32357,"count":19},{"startOffset":32357,"endOffset":32381,"count":0},{"startOffset":32381,"endOffset":32411,"count":19},{"startOffset":32411,"endOffset":32414,"count":0},{"startOffset":32415,"endOffset":32423,"count":19}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":32453,"endOffset":32753,"count":19},{"startOffset":32614,"endOffset":32625,"count":0},{"startOffset":32673,"endOffset":32676,"count":0}],"isBlockCoverage":true},{"functionName":"swap","ranges":[{"startOffset":32756,"endOffset":32827,"count":0}],"isBlockCoverage":false},{"functionName":"swap16","ranges":[{"startOffset":32855,"endOffset":33259,"count":0}],"isBlockCoverage":false},{"functionName":"swap32","ranges":[{"startOffset":33288,"endOffset":33732,"count":0}],"isBlockCoverage":false},{"functionName":"swap64","ranges":[{"startOffset":33761,"endOffset":34269,"count":0}],"isBlockCoverage":false},{"functionName":"transcode","ranges":[{"startOffset":34582,"endOffset":35322,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35391,"endOffset":35581,"count":0}],"isBlockCoverage":false},{"functionName":"btoa","ranges":[{"startOffset":35585,"endOffset":35921,"count":0}],"isBlockCoverage":false},{"functionName":"atob","ranges":[{"startOffset":36017,"endOffset":36338,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36664,"endOffset":36699,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36705,"endOffset":36742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"19","url":"internal/buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":29666,"count":1}],"isBlockCoverage":false},{"functionName":"checkBounds","ranges":[{"startOffset":1107,"endOffset":1323,"count":0}],"isBlockCoverage":false},{"functionName":"checkInt","ranges":[{"startOffset":1325,"endOffset":1947,"count":0}],"isBlockCoverage":false},{"functionName":"boundsError","ranges":[{"startOffset":1949,"endOffset":2352,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64LE","ranges":[{"startOffset":2372,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64BE","ranges":[{"startOffset":2873,"endOffset":3372,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64LE","ranges":[{"startOffset":3374,"endOffset":3875,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64BE","ranges":[{"startOffset":3877,"endOffset":4372,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntLE","ranges":[{"startOffset":4374,"endOffset":4926,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48LE","ranges":[{"startOffset":4928,"endOffset":5311,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40LE","ranges":[{"startOffset":5313,"endOffset":5669,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32LE","ranges":[{"startOffset":5671,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24LE","ranges":[{"startOffset":5999,"endOffset":6287,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16LE","ranges":[{"startOffset":6289,"endOffset":6549,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt8","ranges":[{"startOffset":6551,"endOffset":6731,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntBE","ranges":[{"startOffset":6733,"endOffset":7285,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48BE","ranges":[{"startOffset":7287,"endOffset":7670,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40BE","ranges":[{"startOffset":7672,"endOffset":8028,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32BE","ranges":[{"startOffset":8030,"endOffset":8356,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24BE","ranges":[{"startOffset":8358,"endOffset":8646,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16BE","ranges":[{"startOffset":8648,"endOffset":8908,"count":0}],"isBlockCoverage":false},{"functionName":"readIntLE","ranges":[{"startOffset":8910,"endOffset":9455,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48LE","ranges":[{"startOffset":9457,"endOffset":9888,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40LE","ranges":[{"startOffset":9890,"endOffset":10277,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32LE","ranges":[{"startOffset":10279,"endOffset":10614,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24LE","ranges":[{"startOffset":10616,"endOffset":10948,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16LE","ranges":[{"startOffset":10950,"endOffset":11256,"count":0}],"isBlockCoverage":false},{"functionName":"readInt8","ranges":[{"startOffset":11258,"endOffset":11466,"count":0}],"isBlockCoverage":false},{"functionName":"readIntBE","ranges":[{"startOffset":11468,"endOffset":12013,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48BE","ranges":[{"startOffset":12015,"endOffset":12444,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40BE","ranges":[{"startOffset":12446,"endOffset":12834,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32BE","ranges":[{"startOffset":12836,"endOffset":13171,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24BE","ranges":[{"startOffset":13173,"endOffset":13505,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16BE","ranges":[{"startOffset":13507,"endOffset":13813,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatBackwards","ranges":[{"startOffset":13830,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatForwards","ranges":[{"startOffset":14237,"endOffset":14641,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleBackwards","ranges":[{"startOffset":14643,"endOffset":15213,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleForwards","ranges":[{"startOffset":15215,"endOffset":15784,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64LE","ranges":[{"startOffset":15805,"endOffset":16287,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64LE","ranges":[{"startOffset":16289,"endOffset":16411,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64BE","ranges":[{"startOffset":16413,"endOffset":16911,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64BE","ranges":[{"startOffset":16913,"endOffset":17035,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64LE","ranges":[{"startOffset":17037,"endOffset":17181,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64BE","ranges":[{"startOffset":17183,"endOffset":17327,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntLE","ranges":[{"startOffset":17329,"endOffset":17938,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48LE","ranges":[{"startOffset":17940,"endOffset":18353,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40LE","ranges":[{"startOffset":18355,"endOffset":18734,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32LE","ranges":[{"startOffset":18736,"endOffset":19043,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32LE","ranges":[{"startOffset":19045,"endOffset":19151,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24LE","ranges":[{"startOffset":19153,"endOffset":19412,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16LE","ranges":[{"startOffset":19414,"endOffset":19610,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16LE","ranges":[{"startOffset":19612,"endOffset":19714,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int8","ranges":[{"startOffset":19716,"endOffset":20128,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt8","ranges":[{"startOffset":20130,"endOffset":20224,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntBE","ranges":[{"startOffset":20226,"endOffset":20835,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48BE","ranges":[{"startOffset":20837,"endOffset":21258,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40BE","ranges":[{"startOffset":21260,"endOffset":21622,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32BE","ranges":[{"startOffset":21624,"endOffset":21939,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32BE","ranges":[{"startOffset":21941,"endOffset":22047,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24BE","ranges":[{"startOffset":22049,"endOffset":22314,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16BE","ranges":[{"startOffset":22316,"endOffset":22512,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16BE","ranges":[{"startOffset":22514,"endOffset":22616,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntLE","ranges":[{"startOffset":22618,"endOffset":23280,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32LE","ranges":[{"startOffset":23282,"endOffset":23397,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16LE","ranges":[{"startOffset":23399,"endOffset":23506,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt8","ranges":[{"startOffset":23508,"endOffset":23605,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntBE","ranges":[{"startOffset":23607,"endOffset":24269,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32BE","ranges":[{"startOffset":24271,"endOffset":24386,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16BE","ranges":[{"startOffset":24388,"endOffset":24495,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleForwards","ranges":[{"startOffset":24514,"endOffset":24980,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleBackwards","ranges":[{"startOffset":24982,"endOffset":25449,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatForwards","ranges":[{"startOffset":25451,"endOffset":25752,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatBackwards","ranges":[{"startOffset":25754,"endOffset":26056,"count":0}],"isBlockCoverage":false},{"functionName":"addBufferPrototypeMethods","ranges":[{"startOffset":26098,"endOffset":29155,"count":1},{"startOffset":28181,"endOffset":28201,"count":0},{"startOffset":28255,"endOffset":28274,"count":0},{"startOffset":28330,"endOffset":28351,"count":0},{"startOffset":28407,"endOffset":28427,"count":0},{"startOffset":28484,"endOffset":28505,"count":0},{"startOffset":28561,"endOffset":28581,"count":0},{"startOffset":28639,"endOffset":28661,"count":0},{"startOffset":28719,"endOffset":28740,"count":0}],"isBlockCoverage":true},{"functionName":"markAsUntransferable","ranges":[{"startOffset":29311,"endOffset":29575,"count":9},{"startOffset":29379,"endOffset":29407,"count":0},{"startOffset":29430,"endOffset":29437,"count":0}],"isBlockCoverage":true}]},{"scriptId":"20","url":"internal/worker/js_transferable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1310,"count":1}],"isBlockCoverage":false},{"functionName":"setup","ranges":[{"startOffset":304,"endOffset":1091,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":585,"endOffset":1087,"count":0}],"isBlockCoverage":false}]},{"scriptId":"21","url":"internal/process/per_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10598,"count":1}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":796,"endOffset":884,"count":0}],"isBlockCoverage":false},{"functionName":"wrapProcessMethods","ranges":[{"startOffset":962,"endOffset":6703,"count":1}],"isBlockCoverage":true},{"functionName":"_rawDebug","ranges":[{"startOffset":1173,"endOffset":1255,"count":0}],"isBlockCoverage":false},{"functionName":"cpuUsage","ranges":[{"startOffset":1466,"endOffset":3025,"count":0}],"isBlockCoverage":false},{"functionName":"previousValueIsValid","ranges":[{"startOffset":3178,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"hrtime","ranges":[{"startOffset":3539,"endOffset":4142,"count":0}],"isBlockCoverage":false},{"functionName":"hrtimeBigInt","ranges":[{"startOffset":4329,"endOffset":4423,"count":0}],"isBlockCoverage":false},{"functionName":"memoryUsage","ranges":[{"startOffset":4468,"endOffset":4694,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":4698,"endOffset":5136,"count":0}],"isBlockCoverage":false},{"functionName":"kill","ranges":[{"startOffset":5140,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"resourceUsage","ranges":[{"startOffset":5836,"endOffset":6569,"count":0}],"isBlockCoverage":false},{"functionName":"buildAllowedFlags","ranges":[{"startOffset":6914,"endOffset":9974,"count":0}],"isBlockCoverage":false},{"functionName":"toggleTraceCategoryState","ranges":[{"startOffset":10164,"endOffset":10494,"count":1},{"startOffset":10244,"endOffset":10419,"count":0},{"startOffset":10451,"endOffset":10492,"count":0}],"isBlockCoverage":true}]},{"scriptId":"22","url":"internal/async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19081,"count":1}],"isBlockCoverage":false},{"functionName":"useDomainTrampoline","ranges":[{"startOffset":5274,"endOffset":5328,"count":0}],"isBlockCoverage":false},{"functionName":"callbackTrampoline","ranges":[{"startOffset":5330,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"executionAsyncResource","ranges":[{"startOffset":5999,"endOffset":6497,"count":0}],"isBlockCoverage":false},{"functionName":"inspectExceptionValue","ranges":[{"startOffset":6499,"endOffset":6635,"count":0}],"isBlockCoverage":false},{"functionName":"fatalError","ranges":[{"startOffset":6696,"endOffset":7082,"count":0}],"isBlockCoverage":false},{"functionName":"lookupPublicResource","ranges":[{"startOffset":7084,"endOffset":7433,"count":0}],"isBlockCoverage":false},{"functionName":"emitInitNative","ranges":[{"startOffset":7624,"endOffset":8717,"count":0}],"isBlockCoverage":false},{"functionName":"emitHook","ranges":[{"startOffset":8818,"endOffset":9768,"count":0}],"isBlockCoverage":false},{"functionName":"emitHookFactory","ranges":[{"startOffset":9770,"endOffset":10030,"count":4}],"isBlockCoverage":true},{"functionName":"getHookArrays","ranges":[{"startOffset":10059,"endOffset":10549,"count":0}],"isBlockCoverage":false},{"functionName":"storeActiveHooks","ranges":[{"startOffset":10552,"endOffset":10852,"count":0}],"isBlockCoverage":false},{"functionName":"copyHooks","ranges":[{"startOffset":10854,"endOffset":11119,"count":0}],"isBlockCoverage":false},{"functionName":"restoreActiveHooks","ranges":[{"startOffset":11234,"endOffset":11439,"count":0}],"isBlockCoverage":false},{"functionName":"trackPromise","ranges":[{"startOffset":11441,"endOffset":11798,"count":0}],"isBlockCoverage":false},{"functionName":"fastPromiseHook","ranges":[{"startOffset":11800,"endOffset":12936,"count":0}],"isBlockCoverage":false},{"functionName":"enableHooks","ranges":[{"startOffset":12967,"endOffset":13027,"count":0}],"isBlockCoverage":false},{"functionName":"updatePromiseHookMode","ranges":[{"startOffset":13055,"endOffset":13346,"count":0}],"isBlockCoverage":false},{"functionName":"disableHooks","ranges":[{"startOffset":13348,"endOffset":13623,"count":0}],"isBlockCoverage":false},{"functionName":"disablePromiseHookIfNecessary","ranges":[{"startOffset":13625,"endOffset":13751,"count":0}],"isBlockCoverage":false},{"functionName":"newAsyncId","ranges":[{"startOffset":13952,"endOffset":14022,"count":1334}],"isBlockCoverage":true},{"functionName":"getOrSetAsyncId","ranges":[{"startOffset":14024,"endOffset":14214,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultTriggerAsyncId","ranges":[{"startOffset":14397,"endOffset":14687,"count":1334},{"startOffset":14611,"endOffset":14653,"count":1320},{"startOffset":14653,"endOffset":14686,"count":14}],"isBlockCoverage":true},{"functionName":"clearDefaultTriggerAsyncId","ranges":[{"startOffset":14690,"endOffset":14779,"count":0}],"isBlockCoverage":false},{"functionName":"defaultTriggerAsyncIdScope","ranges":[{"startOffset":14782,"endOffset":15257,"count":74},{"startOffset":14892,"endOffset":14914,"count":0}],"isBlockCoverage":true},{"functionName":"hasHooks","ranges":[{"startOffset":15259,"endOffset":15322,"count":6556}],"isBlockCoverage":true},{"functionName":"enabledHooksExist","ranges":[{"startOffset":15324,"endOffset":15383,"count":1296}],"isBlockCoverage":true},{"functionName":"initHooksExist","ranges":[{"startOffset":15385,"endOffset":15440,"count":1334}],"isBlockCoverage":true},{"functionName":"afterHooksExist","ranges":[{"startOffset":15442,"endOffset":15499,"count":0}],"isBlockCoverage":false},{"functionName":"destroyHooksExist","ranges":[{"startOffset":15501,"endOffset":15562,"count":1334}],"isBlockCoverage":true},{"functionName":"emitInitScript","ranges":[{"startOffset":15565,"endOffset":15973,"count":0}],"isBlockCoverage":false},{"functionName":"emitBeforeScript","ranges":[{"startOffset":15976,"endOffset":16152,"count":1296},{"startOffset":16124,"endOffset":16150,"count":0}],"isBlockCoverage":true},{"functionName":"emitAfterScript","ranges":[{"startOffset":16155,"endOffset":16275,"count":1296},{"startOffset":16219,"endOffset":16244,"count":0}],"isBlockCoverage":true},{"functionName":"emitDestroyScript","ranges":[{"startOffset":16278,"endOffset":16488,"count":0}],"isBlockCoverage":false},{"functionName":"hasAsyncIdStack","ranges":[{"startOffset":16491,"endOffset":16554,"count":0}],"isBlockCoverage":false},{"functionName":"pushAsyncContext","ranges":[{"startOffset":16620,"endOffset":17190,"count":1296},{"startOffset":16840,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"popAsyncContext","ranges":[{"startOffset":17255,"endOffset":17879,"count":1296},{"startOffset":17371,"endOffset":17384,"count":0},{"startOffset":17463,"endOffset":17569,"count":0}],"isBlockCoverage":true},{"functionName":"executionAsyncId","ranges":[{"startOffset":17882,"endOffset":17958,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":17960,"endOffset":18032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"23","url":"internal/process/task_queues.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4409,"count":1}],"isBlockCoverage":false},{"functionName":"hasTickScheduled","ranges":[{"startOffset":1007,"endOffset":1082,"count":1084}],"isBlockCoverage":true},{"functionName":"setHasTickScheduled","ranges":[{"startOffset":1084,"endOffset":1170,"count":595},{"startOffset":1160,"endOffset":1163,"count":314},{"startOffset":1164,"endOffset":1167,"count":281}],"isBlockCoverage":true},{"functionName":"runNextTicks","ranges":[{"startOffset":1272,"endOffset":1468,"count":542},{"startOffset":1434,"endOffset":1467,"count":0}],"isBlockCoverage":true},{"functionName":"processTicksAndRejections","ranges":[{"startOffset":1470,"endOffset":2438,"count":281},{"startOffset":1526,"endOffset":2318,"count":311},{"startOffset":1561,"endOffset":2293,"count":476},{"startOffset":1762,"endOffset":1795,"count":9},{"startOffset":1795,"endOffset":2169,"count":467},{"startOffset":1882,"endOffset":1915,"count":147},{"startOffset":1928,"endOffset":1970,"count":320},{"startOffset":1983,"endOffset":2034,"count":0},{"startOffset":2047,"endOffset":2107,"count":0},{"startOffset":2120,"endOffset":2147,"count":0},{"startOffset":2231,"endOffset":2252,"count":0}],"isBlockCoverage":true},{"functionName":"nextTick","ranges":[{"startOffset":2582,"endOffset":3497,"count":476},{"startOffset":2654,"endOffset":2695,"count":0},{"startOffset":2725,"endOffset":2732,"count":0},{"startOffset":2780,"endOffset":2794,"count":9},{"startOffset":2799,"endOffset":2836,"count":147},{"startOffset":2841,"endOffset":2892,"count":320},{"startOffset":2897,"endOffset":2962,"count":0},{"startOffset":2967,"endOffset":3110,"count":0},{"startOffset":3139,"endOffset":3165,"count":314},{"startOffset":3409,"endOffset":3469,"count":0}],"isBlockCoverage":true},{"functionName":"runMicrotask","ranges":[{"startOffset":3499,"endOffset":3675,"count":0}],"isBlockCoverage":false},{"functionName":"queueMicrotask","ranges":[{"startOffset":3747,"endOffset":4107,"count":0}],"isBlockCoverage":false},{"functionName":"setupTaskQueue","ranges":[{"startOffset":4130,"endOffset":4387,"count":1}],"isBlockCoverage":true}]},{"scriptId":"24","url":"internal/process/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9605,"count":1}],"isBlockCoverage":false},{"functionName":"setHasRejectionToWarn","ranges":[{"startOffset":1918,"endOffset":2008,"count":281},{"startOffset":1998,"endOffset":2001,"count":0}],"isBlockCoverage":true},{"functionName":"hasRejectionToWarn","ranges":[{"startOffset":2010,"endOffset":2089,"count":1084}],"isBlockCoverage":true},{"functionName":"getUnhandledRejectionsMode","ranges":[{"startOffset":2091,"endOffset":2626,"count":0}],"isBlockCoverage":false},{"functionName":"promiseRejectHandler","ranges":[{"startOffset":2628,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"resolveError","ranges":[{"startOffset":3199,"endOffset":3449,"count":0}],"isBlockCoverage":false},{"functionName":"unhandledRejection","ranges":[{"startOffset":3451,"endOffset":3745,"count":0}],"isBlockCoverage":false},{"functionName":"handledRejection","ranges":[{"startOffset":3747,"endOffset":4563,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionWarning","ranges":[{"startOffset":4635,"endOffset":5531,"count":0}],"isBlockCoverage":false},{"functionName":"emitDeprecationWarning","ranges":[{"startOffset":5564,"endOffset":5849,"count":0}],"isBlockCoverage":false},{"functionName":"processPromiseRejections","ranges":[{"startOffset":6022,"endOffset":8506,"count":281},{"startOffset":6180,"endOffset":6346,"count":0},{"startOffset":6411,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"getErrorWithoutStack","ranges":[{"startOffset":8508,"endOffset":8926,"count":0}],"isBlockCoverage":false},{"functionName":"generateUnhandledRejectionError","ranges":[{"startOffset":8928,"endOffset":9398,"count":0}],"isBlockCoverage":false},{"functionName":"listenForRejections","ranges":[{"startOffset":9400,"endOffset":9484,"count":1}],"isBlockCoverage":true}]},{"scriptId":"25","url":"internal/fixed_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4184,"count":1}],"isBlockCoverage":false},{"functionName":"FixedCircularBuffer","ranges":[{"startOffset":2959,"endOffset":3073,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3077,"endOffset":3129,"count":1574}],"isBlockCoverage":true},{"functionName":"isFull","ranges":[{"startOffset":3133,"endOffset":3200,"count":476}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3204,"endOffset":3291,"count":476}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3295,"endOffset":3510,"count":787},{"startOffset":3388,"endOffset":3400,"count":311},{"startOffset":3400,"endOffset":3509,"count":476}],"isBlockCoverage":true},{"functionName":"FixedQueue","ranges":[{"startOffset":3552,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3630,"endOffset":3677,"count":787}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3681,"endOffset":3945,"count":476},{"startOffset":3722,"endOffset":3915,"count":0}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3949,"endOffset":4180,"count":787},{"startOffset":4041,"endOffset":4062,"count":625},{"startOffset":4064,"endOffset":4159,"count":0}],"isBlockCoverage":true}]},{"scriptId":"26","url":"async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9502,"count":1}],"isBlockCoverage":false},{"functionName":"AsyncHook","ranges":[{"startOffset":1416,"endOffset":2250,"count":1},{"startOffset":1544,"endOffset":1586,"count":0},{"startOffset":1616,"endOffset":1647,"count":0},{"startOffset":1655,"endOffset":1699,"count":0},{"startOffset":1728,"endOffset":1758,"count":0},{"startOffset":1766,"endOffset":1809,"count":0},{"startOffset":1840,"endOffset":1872,"count":0},{"startOffset":1880,"endOffset":1925,"count":0},{"startOffset":1963,"endOffset":2002,"count":0},{"startOffset":2010,"endOffset":2062,"count":0}],"isBlockCoverage":true},{"functionName":"enable","ranges":[{"startOffset":2254,"endOffset":3491,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":3495,"endOffset":4271,"count":0}],"isBlockCoverage":false},{"functionName":"createHook","ranges":[{"startOffset":4276,"endOffset":4333,"count":1}],"isBlockCoverage":true},{"functionName":"AsyncResource","ranges":[{"startOffset":4426,"endOffset":5613,"count":0}],"isBlockCoverage":false},{"functionName":"runInAsyncScope","ranges":[{"startOffset":5617,"endOffset":5979,"count":0}],"isBlockCoverage":false},{"functionName":"emitDestroy","ranges":[{"startOffset":5983,"endOffset":6158,"count":0}],"isBlockCoverage":false},{"functionName":"asyncId","ranges":[{"startOffset":6162,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":6215,"endOffset":6279,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6283,"endOffset":6785,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6796,"endOffset":6915,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":6978,"endOffset":7260,"count":0}],"isBlockCoverage":false},{"functionName":"AsyncLocalStorage","ranges":[{"startOffset":7357,"endOffset":7454,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":7458,"endOffset":7783,"count":0}],"isBlockCoverage":false},{"functionName":"_enable","ranges":[{"startOffset":7787,"endOffset":7933,"count":0}],"isBlockCoverage":false},{"functionName":"_propagate","ranges":[{"startOffset":8002,"endOffset":8176,"count":0}],"isBlockCoverage":false},{"functionName":"enterWith","ranges":[{"startOffset":8180,"endOffset":8312,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":8316,"endOffset":8892,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":8896,"endOffset":9094,"count":0}],"isBlockCoverage":false},{"functionName":"getStore","ranges":[{"startOffset":9098,"endOffset":9237,"count":0}],"isBlockCoverage":false}]},{"scriptId":"27","url":"internal/console/global.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1939,"count":1}],"isBlockCoverage":false}]},{"scriptId":"28","url":"internal/console/constructor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19933,"count":1}],"isBlockCoverage":false},{"functionName":"Console","ranges":[{"startOffset":2592,"endOffset":4763,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":4972,"endOffset":5026,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5274,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5683,"endOffset":6271,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5865,"endOffset":5960,"count":102},{"startOffset":5898,"endOffset":5921,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":5972,"endOffset":6002,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6104,"endOffset":6203,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6215,"endOffset":6245,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6341,"endOffset":7523,"count":1}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":7593,"endOffset":9039,"count":34},{"startOffset":7819,"endOffset":7833,"count":0},{"startOffset":7907,"endOffset":7933,"count":0},{"startOffset":7972,"endOffset":8161,"count":0},{"startOffset":8219,"endOffset":8247,"count":0},{"startOffset":8604,"endOffset":8631,"count":30},{"startOffset":8685,"endOffset":8969,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9112,"endOffset":9602,"count":34},{"startOffset":9325,"endOffset":9331,"count":0},{"startOffset":9406,"endOffset":9527,"count":0},{"startOffset":9571,"endOffset":9595,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9673,"endOffset":9801,"count":34}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9872,"endOffset":10000,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteErrorHandler","ranges":[{"startOffset":10089,"endOffset":10978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10157,"endOffset":10975,"count":34},{"startOffset":10427,"endOffset":10445,"count":0},{"startOffset":10920,"endOffset":10965,"count":5}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":11007,"endOffset":11094,"count":34}],"isBlockCoverage":true},{"functionName":"warn","ranges":[{"startOffset":11100,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"dir","ranges":[{"startOffset":11194,"endOffset":11379,"count":0}],"isBlockCoverage":false},{"functionName":"time","ranges":[{"startOffset":11384,"endOffset":11742,"count":0}],"isBlockCoverage":false},{"functionName":"timeEnd","ranges":[{"startOffset":11747,"endOffset":12036,"count":0}],"isBlockCoverage":false},{"functionName":"timeLog","ranges":[{"startOffset":12041,"endOffset":12279,"count":0}],"isBlockCoverage":false},{"functionName":"trace","ranges":[{"startOffset":12291,"endOffset":12477,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":12482,"endOffset":12700,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":12761,"endOffset":13191,"count":0}],"isBlockCoverage":false},{"functionName":"count","ranges":[{"startOffset":13252,"endOffset":13708,"count":0}],"isBlockCoverage":false},{"functionName":"countReset","ranges":[{"startOffset":13774,"endOffset":14062,"count":0}],"isBlockCoverage":false},{"functionName":"group","ranges":[{"startOffset":14067,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"groupEnd","ranges":[{"startOffset":14240,"endOffset":14408,"count":0}],"isBlockCoverage":false},{"functionName":"table","ranges":[{"startOffset":14457,"endOffset":17867,"count":0}],"isBlockCoverage":false},{"functionName":"timeLogImpl","ranges":[{"startOffset":17908,"endOffset":18404,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":18406,"endOffset":18483,"count":0}],"isBlockCoverage":false},{"functionName":"formatTime","ranges":[{"startOffset":18485,"endOffset":19247,"count":0}],"isBlockCoverage":false},{"functionName":"isArray","ranges":[{"startOffset":19381,"endOffset":19437,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":19440,"endOffset":19458,"count":0}],"isBlockCoverage":false}]},{"scriptId":"29","url":"internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1582,"count":1}],"isBlockCoverage":false}]},{"scriptId":"30","url":"internal/util/inspector.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2215,"count":1}],"isBlockCoverage":false},{"functionName":"sendInspectorCommand","ranges":[{"startOffset":92,"endOffset":434,"count":0}],"isBlockCoverage":false},{"functionName":"installConsoleExtensions","ranges":[{"startOffset":508,"endOffset":1062,"count":0}],"isBlockCoverage":false},{"functionName":"wrapConsole","ranges":[{"startOffset":1141,"endOffset":1931,"count":1},{"startOffset":1299,"endOffset":1929,"count":23},{"startOffset":1514,"endOffset":1807,"count":19},{"startOffset":1807,"endOffset":1925,"count":4}],"isBlockCoverage":true},{"functionName":"get consoleFromVM","ranges":[{"startOffset":2103,"endOffset":2154,"count":0}],"isBlockCoverage":false},{"functionName":"set consoleFromVM","ranges":[{"startOffset":2158,"endOffset":2211,"count":1}],"isBlockCoverage":true}]},{"scriptId":"31","url":"internal/url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":41325,"count":1}],"isBlockCoverage":false},{"functionName":"toUSVString","ranges":[{"startOffset":2224,"endOffset":2520,"count":75},{"startOffset":2477,"endOffset":2519,"count":0}],"isBlockCoverage":true},{"functionName":"serializeTupleOrigin","ranges":[{"startOffset":2732,"endOffset":2850,"count":0}],"isBlockCoverage":false},{"functionName":"URLContext","ranges":[{"startOffset":3254,"endOffset":3477,"count":1107}],"isBlockCoverage":true},{"functionName":"URLSearchParams","ranges":[{"startOffset":3767,"endOffset":6130,"count":1014},{"startOffset":3882,"endOffset":6068,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6134,"endOffset":7204,"count":0}],"isBlockCoverage":false},{"functionName":"onParseComplete","ranges":[{"startOffset":7208,"endOffset":7901,"count":1014},{"startOffset":7463,"endOffset":7473,"count":0},{"startOffset":7536,"endOffset":7546,"count":0},{"startOffset":7627,"endOffset":7631,"count":0}],"isBlockCoverage":true},{"functionName":"onParseError","ranges":[{"startOffset":7903,"endOffset":7978,"count":93}],"isBlockCoverage":true},{"functionName":"onParseProtocolComplete","ranges":[{"startOffset":7980,"endOffset":8325,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostnameComplete","ranges":[{"startOffset":8327,"endOffset":8673,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePortComplete","ranges":[{"startOffset":8675,"endOffset":8837,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostComplete","ranges":[{"startOffset":8839,"endOffset":9145,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePathComplete","ranges":[{"startOffset":9147,"endOffset":9641,"count":173},{"startOffset":9413,"endOffset":9481,"count":0}],"isBlockCoverage":true},{"functionName":"onParseSearchComplete","ranges":[{"startOffset":9643,"endOffset":9811,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHashComplete","ranges":[{"startOffset":9813,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"URL","ranges":[{"startOffset":9999,"endOffset":10327,"count":1107},{"startOffset":10134,"endOffset":10186,"count":360}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10331,"endOffset":10412,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10416,"endOffset":10509,"count":3262}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10584,"endOffset":10784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10788,"endOffset":11721,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":11890,"endOffset":13071,"count":942},{"startOffset":11975,"endOffset":12036,"count":0},{"startOffset":12446,"endOffset":12607,"count":0},{"startOffset":12639,"endOffset":12676,"count":0},{"startOffset":12730,"endOffset":12752,"count":0},{"startOffset":12760,"endOffset":12824,"count":0},{"startOffset":12936,"endOffset":12959,"count":0},{"startOffset":13021,"endOffset":13047,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":13345,"endOffset":13404,"count":278}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":13470,"endOffset":13515,"count":664}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":13521,"endOffset":13701,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":13782,"endOffset":14410,"count":486},{"startOffset":13922,"endOffset":14166,"count":0},{"startOffset":14175,"endOffset":14187,"count":0},{"startOffset":14196,"endOffset":14211,"count":0},{"startOffset":14220,"endOffset":14233,"count":0},{"startOffset":14242,"endOffset":14256,"count":0},{"startOffset":14265,"endOffset":14276,"count":0},{"startOffset":14285,"endOffset":14368,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14480,"endOffset":14528,"count":639}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":14534,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14973,"endOffset":15023,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15029,"endOffset":15427,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15497,"endOffset":15547,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15553,"endOffset":15951,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16017,"endOffset":16173,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":16179,"endOffset":16470,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16540,"endOffset":16592,"count":467}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":16598,"endOffset":16897,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16963,"endOffset":17063,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17069,"endOffset":17386,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":17456,"endOffset":17651,"count":3089},{"startOffset":17535,"endOffset":17554,"count":0},{"startOffset":17596,"endOffset":17606,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":17657,"endOffset":17876,"count":173},{"startOffset":17767,"endOffset":17774,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17944,"endOffset":18083,"count":75},{"startOffset":18016,"endOffset":18031,"count":0},{"startOffset":18051,"endOffset":18082,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18089,"endOffset":18581,"count":75},{"startOffset":18275,"endOffset":18523,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":18668,"endOffset":18714,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":18780,"endOffset":18931,"count":75},{"startOffset":18858,"endOffset":18876,"count":0},{"startOffset":18896,"endOffset":18930,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18937,"endOffset":19355,"count":75},{"startOffset":19159,"endOffset":19354,"count":0}],"isBlockCoverage":true},{"functionName":"toJSON","ranges":[{"startOffset":19501,"endOffset":19558,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":19568,"endOffset":19873,"count":0}],"isBlockCoverage":false},{"functionName":"initSearchParams","ranges":[{"startOffset":19875,"endOffset":20015,"count":1089},{"startOffset":19972,"endOffset":20014,"count":0}],"isBlockCoverage":true},{"functionName":"parseParams","ranges":[{"startOffset":20124,"endOffset":22425,"count":0}],"isBlockCoverage":false},{"functionName":"serializeParams","ranges":[{"startOffset":23404,"endOffset":23964,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":24019,"endOffset":24707,"count":2},{"startOffset":24357,"endOffset":24503,"count":13},{"startOffset":24558,"endOffset":24705,"count":1}],"isBlockCoverage":true},{"functionName":"merge","ranges":[{"startOffset":24727,"endOffset":25357,"count":0}],"isBlockCoverage":false},{"functionName":"append","ranges":[{"startOffset":25424,"endOffset":25811,"count":0}],"isBlockCoverage":false},{"functionName":"delete","ranges":[{"startOffset":25816,"endOffset":26315,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":26320,"endOffset":26754,"count":0}],"isBlockCoverage":false},{"functionName":"getAll","ranges":[{"startOffset":26759,"endOffset":27227,"count":0}],"isBlockCoverage":false},{"functionName":"has","ranges":[{"startOffset":27232,"endOffset":27660,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27665,"endOffset":28691,"count":0}],"isBlockCoverage":false},{"functionName":"sort","ranges":[{"startOffset":28696,"endOffset":29873,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":30036,"endOffset":30245,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":30250,"endOffset":30822,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":30877,"endOffset":31077,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":31082,"endOffset":31286,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":31419,"endOffset":31619,"count":0}],"isBlockCoverage":false},{"functionName":"createSearchParamsIterator","ranges":[{"startOffset":31899,"endOffset":32102,"count":0}],"isBlockCoverage":false},{"functionName":"next","ranges":[{"startOffset":32326,"endOffset":33079,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":33083,"endOffset":34297,"count":0}],"isBlockCoverage":false},{"functionName":"domainToASCII","ranges":[{"startOffset":34303,"endOffset":34478,"count":0}],"isBlockCoverage":false},{"functionName":"domainToUnicode","ranges":[{"startOffset":34480,"endOffset":34659,"count":0}],"isBlockCoverage":false},{"functionName":"urlToOptions","ranges":[{"startOffset":34802,"endOffset":35345,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLWin32","ranges":[{"startOffset":35381,"endOffset":36774,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLPosix","ranges":[{"startOffset":36776,"endOffset":37280,"count":467},{"startOffset":36839,"endOffset":36895,"count":0},{"startOffset":36973,"endOffset":37239,"count":32483},{"startOffset":37004,"endOffset":37235,"count":0}],"isBlockCoverage":true},{"functionName":"fileURLToPath","ranges":[{"startOffset":37282,"endOffset":37629,"count":467},{"startOffset":37349,"endOffset":37370,"count":0},{"startOffset":37408,"endOffset":37472,"count":0},{"startOffset":37510,"endOffset":37551,"count":0},{"startOffset":37571,"endOffset":37598,"count":0}],"isBlockCoverage":true},{"functionName":"encodePathChars","ranges":[{"startOffset":38389,"endOffset":38945,"count":173},{"startOffset":38460,"endOffset":38509,"count":0},{"startOffset":38615,"endOffset":38666,"count":0},{"startOffset":38702,"endOffset":38751,"count":0},{"startOffset":38787,"endOffset":38843,"count":0},{"startOffset":38879,"endOffset":38924,"count":0}],"isBlockCoverage":true},{"functionName":"pathToFileURL","ranges":[{"startOffset":38947,"endOffset":40062,"count":173},{"startOffset":39035,"endOffset":39065,"count":0},{"startOffset":39067,"endOffset":39616,"count":0},{"startOffset":39848,"endOffset":39911,"count":172},{"startOffset":39871,"endOffset":39910,"count":0},{"startOffset":39913,"endOffset":39966,"count":1},{"startOffset":39974,"endOffset":39990,"count":1}],"isBlockCoverage":true},{"functionName":"isURLInstance","ranges":[{"startOffset":40064,"endOffset":40183,"count":963},{"startOffset":40157,"endOffset":40180,"count":486}],"isBlockCoverage":true},{"functionName":"toPathIfFileURL","ranges":[{"startOffset":40185,"endOffset":40330,"count":496},{"startOffset":40268,"endOffset":40289,"count":477},{"startOffset":40289,"endOffset":40329,"count":19}],"isBlockCoverage":true},{"functionName":"constructUrl","ranges":[{"startOffset":40332,"endOffset":41032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"32","url":"internal/querystring.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3021,"count":1}],"isBlockCoverage":false},{"functionName":"encodeStr","ranges":[{"startOffset":1336,"endOffset":2959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"33","url":"path.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":43399,"count":1}],"isBlockCoverage":false},{"functionName":"isPathSeparator","ranges":[{"startOffset":1492,"endOffset":1596,"count":0}],"isBlockCoverage":false},{"functionName":"isPosixPathSeparator","ranges":[{"startOffset":1598,"endOffset":1675,"count":84288}],"isBlockCoverage":true},{"functionName":"isWindowsDeviceRoot","ranges":[{"startOffset":1677,"endOffset":1847,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeString","ranges":[{"startOffset":1910,"endOffset":3714,"count":1054},{"startOffset":2127,"endOffset":3698,"count":84280},{"startOffset":2160,"endOffset":2186,"count":83226},{"startOffset":2186,"endOffset":2277,"count":1054},{"startOffset":2229,"endOffset":2235,"count":1046},{"startOffset":2235,"endOffset":2277,"count":8},{"startOffset":2277,"endOffset":2310,"count":83234},{"startOffset":2310,"endOffset":3599,"count":11507},{"startOffset":2342,"endOffset":2355,"count":10056},{"startOffset":2357,"endOffset":2382,"count":1546},{"startOffset":2382,"endOffset":3556,"count":9961},{"startOffset":2404,"endOffset":3343,"count":31},{"startOffset":2460,"endOffset":2518,"count":0},{"startOffset":2519,"endOffset":2577,"count":0},{"startOffset":2715,"endOffset":2791,"count":0},{"startOffset":3024,"endOffset":3193,"count":0},{"startOffset":3203,"endOffset":3335,"count":0},{"startOffset":3343,"endOffset":3556,"count":9930},{"startOffset":3389,"endOffset":3442,"count":8876},{"startOffset":3442,"endOffset":3501,"count":1054},{"startOffset":3556,"endOffset":3599,"count":11476},{"startOffset":3599,"endOffset":3694,"count":71727},{"startOffset":3627,"endOffset":3641,"count":1012},{"startOffset":3643,"endOffset":3664,"count":161},{"startOffset":3664,"endOffset":3694,"count":71566}],"isBlockCoverage":true},{"functionName":"_format","ranges":[{"startOffset":3892,"endOffset":4317,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":4435,"endOffset":8838,"count":0}],"isBlockCoverage":false},{"functionName":"normalize","ranges":[{"startOffset":8904,"endOffset":11655,"count":0}],"isBlockCoverage":false},{"functionName":"isAbsolute","ranges":[{"startOffset":11722,"endOffset":12090,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":12159,"endOffset":14215,"count":0}],"isBlockCoverage":false},{"functionName":"relative","ranges":[{"startOffset":14512,"endOffset":17986,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":17991,"endOffset":19019,"count":0}],"isBlockCoverage":false},{"functionName":"dirname","ranges":[{"startOffset":19085,"endOffset":21413,"count":0}],"isBlockCoverage":false},{"functionName":"basename","ranges":[{"startOffset":21506,"endOffset":24141,"count":0}],"isBlockCoverage":false},{"functionName":"extname","ranges":[{"startOffset":24207,"endOffset":26216,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":26420,"endOffset":30886,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":31069,"endOffset":31965,"count":1046},{"startOffset":31192,"endOffset":31212,"count":2667},{"startOffset":31219,"endOffset":31519,"count":1622},{"startOffset":31247,"endOffset":31256,"count":1621},{"startOffset":31257,"endOffset":31272,"count":1},{"startOffset":31369,"endOffset":31396,"count":0},{"startOffset":31904,"endOffset":31954,"count":0},{"startOffset":31955,"endOffset":31960,"count":0}],"isBlockCoverage":true},{"functionName":"normalize","ranges":[{"startOffset":32031,"endOffset":32606,"count":8},{"startOffset":32117,"endOffset":32128,"count":0},{"startOffset":32418,"endOffset":32512,"count":0},{"startOffset":32546,"endOffset":32558,"count":0},{"startOffset":32582,"endOffset":32594,"count":0}],"isBlockCoverage":true},{"functionName":"isAbsolute","ranges":[{"startOffset":32673,"endOffset":32802,"count":259}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":32871,"endOffset":33285,"count":8},{"startOffset":32920,"endOffset":32931,"count":0},{"startOffset":32990,"endOffset":33197,"count":16},{"startOffset":33126,"endOffset":33183,"count":8},{"startOffset":33234,"endOffset":33245,"count":0}],"isBlockCoverage":true},{"functionName":"relative","ranges":[{"startOffset":33375,"endOffset":35585,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":35590,"endOffset":35666,"count":907}],"isBlockCoverage":true},{"functionName":"dirname","ranges":[{"startOffset":35732,"endOffset":36360,"count":391},{"startOffset":35815,"endOffset":35826,"count":0},{"startOffset":35984,"endOffset":36221,"count":3937},{"startOffset":36039,"endOffset":36123,"count":391},{"startOffset":36123,"endOffset":36215,"count":3546},{"startOffset":36249,"endOffset":36276,"count":0},{"startOffset":36313,"endOffset":36325,"count":0}],"isBlockCoverage":true},{"functionName":"basename","ranges":[{"startOffset":36453,"endOffset":38773,"count":86},{"startOffset":36508,"endOffset":36535,"count":0},{"startOffset":36664,"endOffset":36681,"count":0},{"startOffset":36682,"endOffset":36710,"count":0},{"startOffset":36712,"endOffset":38179,"count":0},{"startOffset":38227,"endOffset":38696,"count":880},{"startOffset":38282,"endOffset":38506,"count":86},{"startOffset":38506,"endOffset":38690,"count":794},{"startOffset":38528,"endOffset":38690,"count":86},{"startOffset":38724,"endOffset":38734,"count":0}],"isBlockCoverage":true},{"functionName":"extname","ranges":[{"startOffset":38839,"endOffset":40497,"count":75},{"startOffset":39172,"endOffset":40118,"count":744},{"startOffset":39252,"endOffset":39498,"count":75},{"startOffset":39472,"endOffset":39498,"count":0},{"startOffset":39498,"endOffset":39521,"count":669},{"startOffset":39521,"endOffset":39678,"count":75},{"startOffset":39678,"endOffset":39708,"count":669},{"startOffset":39708,"endOffset":39908,"count":75},{"startOffset":39837,"endOffset":39900,"count":0},{"startOffset":39908,"endOffset":40112,"count":594},{"startOffset":39935,"endOffset":40112,"count":442},{"startOffset":40357,"endOffset":40389,"count":0},{"startOffset":40390,"endOffset":40428,"count":0},{"startOffset":40431,"endOffset":40455,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":40706,"endOffset":43060,"count":0}],"isBlockCoverage":false}]},{"scriptId":"34","url":"internal/encoding.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15916,"count":1}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":958,"endOffset":1067,"count":0}],"isBlockCoverage":false},{"functionName":"validateEncoder","ranges":[{"startOffset":1069,"endOffset":1194,"count":0}],"isBlockCoverage":false},{"functionName":"validateDecoder","ranges":[{"startOffset":1196,"endOffset":1321,"count":19},{"startOffset":1277,"endOffset":1319,"count":0}],"isBlockCoverage":true},{"functionName":"validateArgument","ranges":[{"startOffset":1323,"endOffset":1533,"count":20},{"startOffset":1470,"endOffset":1531,"count":0}],"isBlockCoverage":true},{"functionName":"trimAsciiWhitespace","ranges":[{"startOffset":8274,"endOffset":8756,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingFromLabel","ranges":[{"startOffset":8758,"endOffset":8937,"count":1},{"startOffset":8869,"endOffset":8936,"count":0}],"isBlockCoverage":true},{"functionName":"TextEncoder","ranges":[{"startOffset":9008,"endOffset":9054,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":9058,"endOffset":9125,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":9129,"endOffset":9221,"count":0}],"isBlockCoverage":false},{"functionName":"encodeInto","ranges":[{"startOffset":9225,"endOffset":9535,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9539,"endOffset":9934,"count":0}],"isBlockCoverage":false},{"functionName":"makeTextDecoderICU","ranges":[{"startOffset":10305,"endOffset":11966,"count":1}],"isBlockCoverage":true},{"functionName":"TextDecoder","ranges":[{"startOffset":10443,"endOffset":11170,"count":1},{"startOffset":10675,"endOffset":10722,"count":0},{"startOffset":10806,"endOffset":10829,"count":0},{"startOffset":10870,"endOffset":10898,"count":0},{"startOffset":11000,"endOffset":11047,"count":0}],"isBlockCoverage":true},{"functionName":"decode","ranges":[{"startOffset":11177,"endOffset":11937,"count":19},{"startOffset":11279,"endOffset":11330,"count":0},{"startOffset":11367,"endOffset":11546,"count":0},{"startOffset":11693,"endOffset":11696,"count":0},{"startOffset":11814,"endOffset":11896,"count":0}],"isBlockCoverage":true},{"functionName":"makeTextDecoderJS","ranges":[{"startOffset":11968,"endOffset":14509,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":14634,"endOffset":14715,"count":0}],"isBlockCoverage":false},{"functionName":"get fatal","ranges":[{"startOffset":14722,"endOffset":14849,"count":0}],"isBlockCoverage":false},{"functionName":"get ignoreBOM","ranges":[{"startOffset":14856,"endOffset":15011,"count":0}],"isBlockCoverage":false},{"functionName":"ObjectGetOwnPropertyDescriptors","ranges":[{"startOffset":15018,"endOffset":15632,"count":0}],"isBlockCoverage":false}]},{"scriptId":"35","url":"timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8324,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1797,"endOffset":1822,"count":1}],"isBlockCoverage":true},{"functionName":"unenroll","ranges":[{"startOffset":2319,"endOffset":3503,"count":38},{"startOffset":2372,"endOffset":2379,"count":0},{"startOffset":2439,"endOffset":2485,"count":0},{"startOffset":2576,"endOffset":2614,"count":0},{"startOffset":2620,"endOffset":2655,"count":0},{"startOffset":3049,"endOffset":3396,"count":8},{"startOffset":3230,"endOffset":3372,"count":4}],"isBlockCoverage":true},{"functionName":"enroll","ranges":[{"startOffset":3710,"endOffset":3963,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":3994,"endOffset":4639,"count":733},{"startOffset":4149,"endOffset":4156,"count":725},{"startOffset":4186,"endOffset":4227,"count":0},{"startOffset":4232,"endOffset":4279,"count":0},{"startOffset":4284,"endOffset":4505,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":4716,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"clearTimeout","ranges":[{"startOffset":4856,"endOffset":5222,"count":218},{"startOffset":4899,"endOffset":4918,"count":68},{"startOffset":4920,"endOffset":4987,"count":38},{"startOffset":4987,"endOffset":5048,"count":180},{"startOffset":5050,"endOffset":5220,"count":0}],"isBlockCoverage":true},{"functionName":"setInterval","ranges":[{"startOffset":5224,"endOffset":5871,"count":0}],"isBlockCoverage":false},{"functionName":"clearInterval","ranges":[{"startOffset":5873,"endOffset":6171,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.close","ranges":[{"startOffset":6199,"endOffset":6250,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.","ranges":[{"startOffset":6292,"endOffset":6453,"count":0}],"isBlockCoverage":false},{"functionName":"setImmediate","ranges":[{"startOffset":6456,"endOffset":6997,"count":95},{"startOffset":6606,"endOffset":6626,"count":35},{"startOffset":6631,"endOffset":6672,"count":60},{"startOffset":6677,"endOffset":6724,"count":0},{"startOffset":6729,"endOffset":6950,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":7076,"endOffset":7212,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":7219,"endOffset":7685,"count":0}],"isBlockCoverage":false}]},{"scriptId":"36","url":"internal/linkedlist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1112,"count":1}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":15,"endOffset":88,"count":0}],"isBlockCoverage":false},{"functionName":"peek","ranges":[{"startOffset":118,"endOffset":210,"count":976},{"startOffset":171,"endOffset":183,"count":3},{"startOffset":183,"endOffset":209,"count":973}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":245,"endOffset":472,"count":1526}],"isBlockCoverage":true},{"functionName":"append","ranges":[{"startOffset":528,"endOffset":980,"count":763},{"startOffset":579,"endOffset":596,"count":0}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":982,"endOffset":1042,"count":8}],"isBlockCoverage":true}]},{"scriptId":"37","url":"internal/timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18495,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4398,"endOffset":4423,"count":1}],"isBlockCoverage":true},{"functionName":"initAsyncResource","ranges":[{"startOffset":5366,"endOffset":5644,"count":858},{"startOffset":5592,"endOffset":5642,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout","ranges":[{"startOffset":5729,"endOffset":6726,"count":763},{"startOffset":5852,"endOffset":5875,"count":38},{"startOffset":5878,"endOffset":6214,"count":725},{"startOffset":5909,"endOffset":6144,"count":0},{"startOffset":6551,"endOffset":6558,"count":0},{"startOffset":6614,"endOffset":6628,"count":733}],"isBlockCoverage":true},{"functionName":"Timeout.","ranges":[{"startOffset":6839,"endOffset":7010,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.refresh","ranges":[{"startOffset":7041,"endOffset":7139,"count":139},{"startOffset":7078,"endOffset":7091,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout.unref","ranges":[{"startOffset":7168,"endOffset":7296,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.ref","ranges":[{"startOffset":7323,"endOffset":7451,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.hasRef","ranges":[{"startOffset":7481,"endOffset":7518,"count":0}],"isBlockCoverage":false},{"functionName":"TimersList","ranges":[{"startOffset":7521,"endOffset":7821,"count":8}],"isBlockCoverage":true},{"functionName":"TimersList.","ranges":[{"startOffset":7937,"endOffset":8108,"count":0}],"isBlockCoverage":false},{"functionName":"ImmediateList","ranges":[{"startOffset":8166,"endOffset":8234,"count":2}],"isBlockCoverage":true},{"functionName":"ImmediateList.append","ranges":[{"startOffset":8413,"endOffset":8580,"count":95},{"startOffset":8456,"endOffset":8525,"count":68},{"startOffset":8525,"endOffset":8558,"count":27}],"isBlockCoverage":true},{"functionName":"ImmediateList.remove","ranges":[{"startOffset":8758,"endOffset":9095,"count":0}],"isBlockCoverage":false},{"functionName":"incRefCount","ranges":[{"startOffset":9098,"endOffset":9174,"count":733},{"startOffset":9151,"endOffset":9172,"count":1}],"isBlockCoverage":true},{"functionName":"decRefCount","ranges":[{"startOffset":9176,"endOffset":9253,"count":8},{"startOffset":9229,"endOffset":9251,"count":1}],"isBlockCoverage":true},{"functionName":"active","ranges":[{"startOffset":9336,"endOffset":9390,"count":0}],"isBlockCoverage":false},{"functionName":"unrefActive","ranges":[{"startOffset":9537,"endOffset":9597,"count":139}],"isBlockCoverage":true},{"functionName":"insertGuarded","ranges":[{"startOffset":9818,"endOffset":10334,"count":139},{"startOffset":9914,"endOffset":9936,"count":0},{"startOffset":9949,"endOffset":10064,"count":0},{"startOffset":10066,"endOffset":10333,"count":0}],"isBlockCoverage":true},{"functionName":"insert","ranges":[{"startOffset":10336,"endOffset":10987,"count":763},{"startOffset":10659,"endOffset":10960,"count":8},{"startOffset":10894,"endOffset":10956,"count":6}],"isBlockCoverage":true},{"functionName":"setUnrefTimeout","ranges":[{"startOffset":10989,"endOffset":11295,"count":30},{"startOffset":11116,"endOffset":11167,"count":0}],"isBlockCoverage":true},{"functionName":"getTimerDuration","ranges":[{"startOffset":11362,"endOffset":11884,"count":60},{"startOffset":11471,"endOffset":11553,"count":0},{"startOffset":11628,"endOffset":11865,"count":0}],"isBlockCoverage":true},{"functionName":"compareTimersLists","ranges":[{"startOffset":11886,"endOffset":12091,"count":515},{"startOffset":11988,"endOffset":12068,"count":0}],"isBlockCoverage":true},{"functionName":"setPosition","ranges":[{"startOffset":12093,"endOffset":12164,"count":276}],"isBlockCoverage":true},{"functionName":"getTimerCallbacks","ranges":[{"startOffset":12166,"endOffset":17263,"count":1}],"isBlockCoverage":true},{"functionName":"processImmediate","ranges":[{"startOffset":12478,"endOffset":14279,"count":27},{"startOffset":12557,"endOffset":12581,"count":0},{"startOffset":12974,"endOffset":14162,"count":95},{"startOffset":13018,"endOffset":13033,"count":68},{"startOffset":13033,"endOffset":13083,"count":27},{"startOffset":13350,"endOffset":13446,"count":0},{"startOffset":13851,"endOffset":13876,"count":35},{"startOffset":13876,"endOffset":13932,"count":60},{"startOffset":14034,"endOffset":14055,"count":0},{"startOffset":14206,"endOffset":14235,"count":0}],"isBlockCoverage":true},{"functionName":"processTimers","ranges":[{"startOffset":14284,"endOffset":14758,"count":251},{"startOffset":14474,"endOffset":14740,"count":502},{"startOffset":14505,"endOffset":14604,"count":251},{"startOffset":14582,"endOffset":14595,"count":0},{"startOffset":14604,"endOffset":14642,"count":251},{"startOffset":14642,"endOffset":14657,"count":0},{"startOffset":14657,"endOffset":14740,"count":251},{"startOffset":14740,"endOffset":14757,"count":0}],"isBlockCoverage":true},{"functionName":"listOnTimeout","ranges":[{"startOffset":14762,"endOffset":17204,"count":251},{"startOffset":14955,"endOffset":16659,"count":973},{"startOffset":15176,"endOffset":15404,"count":248},{"startOffset":15404,"endOffset":15444,"count":725},{"startOffset":15444,"endOffset":15459,"count":474},{"startOffset":15459,"endOffset":15505,"count":251},{"startOffset":15505,"endOffset":15661,"count":725},{"startOffset":15661,"endOffset":15890,"count":0},{"startOffset":15890,"endOffset":16009,"count":725},{"startOffset":16009,"endOffset":16031,"count":0},{"startOffset":16031,"endOffset":16145,"count":725},{"startOffset":16145,"endOffset":16195,"count":0},{"startOffset":16204,"endOffset":16626,"count":725},{"startOffset":16240,"endOffset":16268,"count":0},{"startOffset":16270,"endOffset":16379,"count":0},{"startOffset":16587,"endOffset":16608,"count":0},{"startOffset":16626,"endOffset":16659,"count":725},{"startOffset":16659,"endOffset":17200,"count":3}],"isBlockCoverage":true},{"functionName":"Immediate","ranges":[{"startOffset":17285,"endOffset":17607,"count":95}],"isBlockCoverage":true},{"functionName":"ref","ranges":[{"startOffset":17611,"endOffset":17784,"count":95},{"startOffset":17732,"endOffset":17757,"count":27}],"isBlockCoverage":true},{"functionName":"unref","ranges":[{"startOffset":17788,"endOffset":17964,"count":0}],"isBlockCoverage":false},{"functionName":"hasRef","ranges":[{"startOffset":17968,"endOffset":18009,"count":0}],"isBlockCoverage":false}]},{"scriptId":"38","url":"internal/priority_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2924,"count":1}],"isBlockCoverage":false},{"functionName":"PriorityQueue","ranges":[{"startOffset":570,"endOffset":811,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":815,"endOffset":855,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":859,"endOffset":1044,"count":8},{"startOffset":995,"endOffset":1012,"count":0}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":1048,"endOffset":1087,"count":502}],"isBlockCoverage":true},{"functionName":"percolateDown","ranges":[{"startOffset":1091,"endOffset":1759,"count":255},{"startOffset":1309,"endOffset":1668,"count":253},{"startOffset":1375,"endOffset":1422,"count":251},{"startOffset":1537,"endOffset":1543,"count":250},{"startOffset":1543,"endOffset":1668,"count":3}],"isBlockCoverage":true},{"functionName":"percolateUp","ranges":[{"startOffset":1763,"endOffset":2254,"count":8},{"startOffset":1941,"endOffset":2163,"count":10},{"startOffset":2029,"endOffset":2035,"count":0}],"isBlockCoverage":true},{"functionName":"removeAt","ranges":[{"startOffset":2258,"endOffset":2591,"count":7},{"startOffset":2454,"endOffset":2505,"count":1},{"startOffset":2515,"endOffset":2537,"count":0}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":2595,"endOffset":2761,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":2765,"endOffset":2920,"count":3},{"startOffset":2867,"endOffset":2874,"count":0}],"isBlockCoverage":true}]},{"scriptId":"39","url":"internal/util/debuglog.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2815,"count":1}],"isBlockCoverage":false},{"functionName":"initializeDebugEnv","ranges":[{"startOffset":500,"endOffset":873,"count":1},{"startOffset":591,"endOffset":790,"count":0}],"isBlockCoverage":true},{"functionName":"emitWarningIfNeeded","ranges":[{"startOffset":947,"endOffset":1272,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":1274,"endOffset":1292,"count":5224}],"isBlockCoverage":true},{"functionName":"debuglogImpl","ranges":[{"startOffset":1294,"endOffset":1859,"count":10},{"startOffset":1369,"endOffset":1831,"count":6},{"startOffset":1388,"endOffset":1784,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":1477,"endOffset":1777,"count":0}],"isBlockCoverage":false},{"functionName":"debuglog","ranges":[{"startOffset":2079,"endOffset":2758,"count":14}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":2110,"endOffset":2206,"count":10}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":2221,"endOffset":2458,"count":10}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":2488,"endOffset":2557,"count":0}],"isBlockCoverage":false},{"functionName":"logger","ranges":[{"startOffset":2576,"endOffset":2603,"count":10}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2653,"endOffset":2687,"count":0}],"isBlockCoverage":false}]},{"scriptId":"40","url":"internal/process/execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6944,"count":1}],"isBlockCoverage":false},{"functionName":"tryGetCwd","ranges":[{"startOffset":526,"endOffset":856,"count":1},{"startOffset":587,"endOffset":854,"count":0}],"isBlockCoverage":true},{"functionName":"evalModule","ranges":[{"startOffset":858,"endOffset":1298,"count":0}],"isBlockCoverage":false},{"functionName":"evalScript","ranges":[{"startOffset":1300,"endOffset":2682,"count":0}],"isBlockCoverage":false},{"functionName":"setUncaughtExceptionCaptureCallback","ranges":[{"startOffset":2759,"endOffset":3453,"count":0}],"isBlockCoverage":false},{"functionName":"hasUncaughtExceptionCaptureCallback","ranges":[{"startOffset":3455,"endOffset":3556,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":3558,"endOffset":3576,"count":0}],"isBlockCoverage":false},{"functionName":"createOnGlobalUncaughtException","ranges":[{"startOffset":4119,"endOffset":6518,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4388,"endOffset":6515,"count":0}],"isBlockCoverage":false},{"functionName":"readStdin","ranges":[{"startOffset":6520,"endOffset":6725,"count":0}],"isBlockCoverage":false}]},{"scriptId":"41","url":"internal/process/warning.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4833,"count":1}],"isBlockCoverage":false},{"functionName":"lazyOption","ranges":[{"startOffset":277,"endOffset":831,"count":0}],"isBlockCoverage":false},{"functionName":"writeOut","ranges":[{"startOffset":932,"endOffset":1054,"count":0}],"isBlockCoverage":false},{"functionName":"writeToFile","ranges":[{"startOffset":1056,"endOffset":1440,"count":0}],"isBlockCoverage":false},{"functionName":"doEmitWarning","ranges":[{"startOffset":1442,"endOffset":1513,"count":0}],"isBlockCoverage":false},{"functionName":"onWarning","ranges":[{"startOffset":1552,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarning","ranges":[{"startOffset":2853,"endOffset":3997,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarningSync","ranges":[{"startOffset":3999,"endOffset":4093,"count":0}],"isBlockCoverage":false},{"functionName":"createWarningObject","ranges":[{"startOffset":4095,"endOffset":4762,"count":0}],"isBlockCoverage":false}]},{"scriptId":"42","url":"internal/bootstrap/switches/is_main_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6397,"count":1}],"isBlockCoverage":true},{"functionName":"process._startProfilerIdleNotifier","ranges":[{"startOffset":513,"endOffset":521,"count":0}],"isBlockCoverage":false},{"functionName":"process._stopProfilerIdleNotifier","ranges":[{"startOffset":559,"endOffset":567,"count":0}],"isBlockCoverage":false},{"functionName":"defineStream","ranges":[{"startOffset":570,"endOffset":717,"count":3}],"isBlockCoverage":true},{"functionName":"createWritableStdioStream","ranges":[{"startOffset":1278,"endOffset":2845,"count":2},{"startOffset":1562,"endOffset":1748,"count":0},{"startOffset":1754,"endOffset":1766,"count":0},{"startOffset":1771,"endOffset":2473,"count":0},{"startOffset":2479,"endOffset":2724,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":2667,"endOffset":2714,"count":0}],"isBlockCoverage":false},{"functionName":"dummyDestroy","ranges":[{"startOffset":2847,"endOffset":3230,"count":0}],"isBlockCoverage":false},{"functionName":"getStdout","ranges":[{"startOffset":3268,"endOffset":3599,"count":66},{"startOffset":3305,"endOffset":3319,"count":65},{"startOffset":3319,"endOffset":3598,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3547,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"getStderr","ranges":[{"startOffset":3601,"endOffset":3932,"count":150},{"startOffset":3638,"endOffset":3652,"count":149},{"startOffset":3652,"endOffset":3931,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3880,"endOffset":3907,"count":0}],"isBlockCoverage":false},{"functionName":"getStdin","ranges":[{"startOffset":3934,"endOffset":6253,"count":0}],"isBlockCoverage":false},{"functionName":"rawMethods.resetStdioForTesting","ranges":[{"startOffset":6316,"endOffset":6395,"count":0}],"isBlockCoverage":false}]},{"scriptId":"43","url":"internal/process/signal.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1124,"count":1}],"isBlockCoverage":false},{"functionName":"isSignal","ranges":[{"startOffset":205,"endOffset":301,"count":5}],"isBlockCoverage":true},{"functionName":"startListeningIfSignal","ranges":[{"startOffset":365,"endOffset":853,"count":5},{"startOffset":426,"endOffset":451,"count":2},{"startOffset":453,"endOffset":851,"count":1},{"startOffset":734,"endOffset":813,"count":0}],"isBlockCoverage":true},{"functionName":"stopListeningIfSignal","ranges":[{"startOffset":855,"endOffset":1050,"count":1},{"startOffset":957,"endOffset":993,"count":0},{"startOffset":995,"endOffset":1048,"count":0}],"isBlockCoverage":true}]},{"scriptId":"44","url":"internal/bootstrap/switches/does_own_process_state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3523,"count":1}],"isBlockCoverage":true},{"functionName":"wrapPosixCredentialSetters","ranges":[{"startOffset":817,"endOffset":2957,"count":1}],"isBlockCoverage":true},{"functionName":"initgroups","ranges":[{"startOffset":1278,"endOffset":1695,"count":0}],"isBlockCoverage":false},{"functionName":"setgroups","ranges":[{"startOffset":1699,"endOffset":2179,"count":0}],"isBlockCoverage":false},{"functionName":"wrapIdSetter","ranges":[{"startOffset":2183,"endOffset":2508,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2232,"endOffset":2503,"count":0}],"isBlockCoverage":false},{"functionName":"validateId","ranges":[{"startOffset":2512,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedChdir","ranges":[{"startOffset":3108,"endOffset":3279,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedUmask","ranges":[{"startOffset":3281,"endOffset":3417,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedCwd","ranges":[{"startOffset":3419,"endOffset":3522,"count":3},{"startOffset":3471,"endOffset":3500,"count":1}],"isBlockCoverage":true}]},{"scriptId":"45","url":"internal/main/run_main_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":632,"count":1}],"isBlockCoverage":true}]},{"scriptId":"46","url":"internal/bootstrap/pre_execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15185,"count":1}],"isBlockCoverage":true},{"functionName":"prepareMainThreadExecution","ranges":[{"startOffset":410,"endOffset":2164,"count":1}],"isBlockCoverage":true},{"functionName":"patchProcessObject","ranges":[{"startOffset":2166,"endOffset":3743,"count":1},{"startOffset":2762,"endOffset":2770,"count":0}],"isBlockCoverage":true},{"functionName":"addReadOnlyProcessAlias","ranges":[{"startOffset":3745,"endOffset":4002,"count":13},{"startOffset":3866,"endOffset":4000,"count":1}],"isBlockCoverage":true},{"functionName":"setupWarningHandler","ranges":[{"startOffset":4004,"endOffset":4233,"count":1}],"isBlockCoverage":true},{"functionName":"setupCoverageHooks","ranges":[{"startOffset":4345,"endOffset":5022,"count":1},{"startOffset":4815,"endOffset":4992,"count":0}],"isBlockCoverage":true},{"functionName":"setupStacktracePrinterOnSigint","ranges":[{"startOffset":5024,"endOffset":5249,"count":1},{"startOffset":5126,"endOffset":5248,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReport","ranges":[{"startOffset":5251,"endOffset":5475,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5433,"endOffset":5467,"count":0}],"isBlockCoverage":false},{"functionName":"setupDebugEnv","ranges":[{"startOffset":5477,"endOffset":5709,"count":1},{"startOffset":5628,"endOffset":5707,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReportSignalHandlers","ranges":[{"startOffset":5771,"endOffset":5906,"count":1}],"isBlockCoverage":true},{"functionName":"initializeHeapSnapshotSignalHandlers","ranges":[{"startOffset":5908,"endOffset":6215,"count":1},{"startOffset":6043,"endOffset":6214,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6175,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"setupTraceCategoryState","ranges":[{"startOffset":6217,"endOffset":6476,"count":1}],"isBlockCoverage":true},{"functionName":"setupInspectorHooks","ranges":[{"startOffset":6478,"endOffset":7059,"count":1}],"isBlockCoverage":true},{"functionName":"initializeDeprecations","ranges":[{"startOffset":7254,"endOffset":9775,"count":1},{"startOffset":7965,"endOffset":8267,"count":16},{"startOffset":8010,"endOffset":8242,"count":0},{"startOffset":8584,"endOffset":8757,"count":0},{"startOffset":8785,"endOffset":9179,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":9428,"endOffset":9464,"count":67}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9470,"endOffset":9512,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9638,"endOffset":9673,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9679,"endOffset":9720,"count":0}],"isBlockCoverage":false},{"functionName":"initializeAbortController","ranges":[{"startOffset":9777,"endOffset":10345,"count":1},{"startOffset":9915,"endOffset":10343,"count":0}],"isBlockCoverage":true},{"functionName":"setupChildProcessIpcChannel","ranges":[{"startOffset":10347,"endOffset":10912,"count":1},{"startOffset":10423,"endOffset":10910,"count":0}],"isBlockCoverage":true},{"functionName":"initializeClusterIPC","ranges":[{"startOffset":10914,"endOffset":11184,"count":1},{"startOffset":11001,"endOffset":11182,"count":0}],"isBlockCoverage":true},{"functionName":"initializePolicy","ranges":[{"startOffset":11186,"endOffset":13010,"count":1},{"startOffset":11312,"endOffset":13008,"count":0}],"isBlockCoverage":true},{"functionName":"initializeWASI","ranges":[{"startOffset":13012,"endOffset":13241,"count":1}],"isBlockCoverage":true},{"functionName":"initializeCJSLoader","ranges":[{"startOffset":13243,"endOffset":13529,"count":1}],"isBlockCoverage":true},{"functionName":"initializeESMLoader","ranges":[{"startOffset":13531,"endOffset":14199,"count":1},{"startOffset":13740,"endOffset":13747,"count":0}],"isBlockCoverage":true},{"functionName":"initializeFrozenIntrinsics","ranges":[{"startOffset":14201,"endOffset":14458,"count":1},{"startOffset":14286,"endOffset":14456,"count":0}],"isBlockCoverage":true},{"functionName":"loadPreloadModules","ranges":[{"startOffset":14460,"endOffset":14807,"count":1},{"startOffset":14654,"endOffset":14805,"count":0}],"isBlockCoverage":true}]},{"scriptId":"47","url":"internal/options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":898,"count":1}],"isBlockCoverage":false},{"functionName":"getOptionValue","ranges":[{"startOffset":175,"endOffset":314,"count":217},{"startOffset":262,"endOffset":289,"count":1},{"startOffset":289,"endOffset":313,"count":216}],"isBlockCoverage":true},{"functionName":"getAllowUnauthorized","ranges":[{"startOffset":316,"endOffset":781,"count":30},{"startOffset":453,"endOffset":479,"count":0},{"startOffset":481,"endOffset":751,"count":0}],"isBlockCoverage":true}]},{"scriptId":"48","url":"internal/inspector_async_hook.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1972,"count":1}],"isBlockCoverage":false},{"functionName":"lazyHookCreation","ranges":[{"startOffset":75,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"enable","ranges":[{"startOffset":1259,"endOffset":1840,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":1842,"endOffset":1928,"count":0}],"isBlockCoverage":false}]},{"scriptId":"49","url":"internal/source_map/source_map_cache.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8419,"count":1}],"isBlockCoverage":false},{"functionName":"ObjectGetValueSafe","ranges":[{"startOffset":305,"endOffset":483,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":665,"endOffset":690,"count":0}],"isBlockCoverage":false},{"functionName":"getSourceMapsEnabled","ranges":[{"startOffset":1236,"endOffset":1740,"count":189},{"startOffset":1309,"endOffset":1710,"count":1},{"startOffset":1402,"endOffset":1706,"count":0}],"isBlockCoverage":true},{"functionName":"maybeCacheSourceMap","ranges":[{"startOffset":1742,"endOffset":2852,"count":103},{"startOffset":1900,"endOffset":1920,"count":0},{"startOffset":1923,"endOffset":1930,"count":0},{"startOffset":1990,"endOffset":2128,"count":0},{"startOffset":2232,"endOffset":2850,"count":0}],"isBlockCoverage":true},{"functionName":"dataFromUrl","ranges":[{"startOffset":2854,"endOffset":3380,"count":0}],"isBlockCoverage":false},{"functionName":"lineLengths","ranges":[{"startOffset":3570,"endOffset":3878,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromFile","ranges":[{"startOffset":3880,"endOffset":4136,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromDataUrl","ranges":[{"startOffset":4230,"endOffset":4867,"count":0}],"isBlockCoverage":false},{"functionName":"sourcesToAbsolute","ranges":[{"startOffset":5052,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"rekeySourceMap","ranges":[{"startOffset":5448,"endOffset":5643,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapCacheToObject","ranges":[{"startOffset":6081,"endOffset":6450,"count":0}],"isBlockCoverage":false},{"functionName":"appendCJSCache","ranges":[{"startOffset":6689,"endOffset":7344,"count":0}],"isBlockCoverage":false},{"functionName":"findSourceMap","ranges":[{"startOffset":7562,"endOffset":8287,"count":0}],"isBlockCoverage":false}]},{"scriptId":"50","url":"fs.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":59762,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3694,"endOffset":3854,"count":0}],"isBlockCoverage":false},{"functionName":"showTruncateDeprecation","ranges":[{"startOffset":4089,"endOffset":4376,"count":0}],"isBlockCoverage":false},{"functionName":"maybeCallback","ranges":[{"startOffset":4378,"endOffset":4494,"count":0}],"isBlockCoverage":false},{"functionName":"makeCallback","ranges":[{"startOffset":4697,"endOffset":4840,"count":0}],"isBlockCoverage":false},{"functionName":"makeStatsCallback","ranges":[{"startOffset":5021,"endOffset":5236,"count":0}],"isBlockCoverage":false},{"functionName":"isFileType","ranges":[{"startOffset":5262,"endOffset":5522,"count":2082},{"startOffset":5461,"endOffset":5481,"count":180}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":5524,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"accessSync","ranges":[{"startOffset":5884,"endOffset":6122,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6124,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6435,"endOffset":6513,"count":0}],"isBlockCoverage":false},{"functionName":"existsSync","ranges":[{"startOffset":6930,"endOffset":7460,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterOpen","ranges":[{"startOffset":7462,"endOffset":7742,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterStat","ranges":[{"startOffset":7744,"endOffset":8245,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":8247,"endOffset":9263,"count":0}],"isBlockCoverage":false},{"functionName":"tryStatSync","ranges":[{"startOffset":9265,"endOffset":9495,"count":88},{"startOffset":9408,"endOffset":9420,"count":0},{"startOffset":9422,"endOffset":9477,"count":0}],"isBlockCoverage":true},{"functionName":"tryCreateBuffer","ranges":[{"startOffset":9497,"endOffset":9808,"count":88},{"startOffset":9615,"endOffset":9667,"count":0},{"startOffset":9754,"endOffset":9766,"count":0},{"startOffset":9768,"endOffset":9785,"count":0}],"isBlockCoverage":true},{"functionName":"tryReadSync","ranges":[{"startOffset":9810,"endOffset":10065,"count":88},{"startOffset":10008,"endOffset":10020,"count":0},{"startOffset":10022,"endOffset":10039,"count":0}],"isBlockCoverage":true},{"functionName":"readFileSync","ranges":[{"startOffset":10067,"endOffset":11450,"count":88},{"startOffset":10236,"endOffset":10242,"count":0},{"startOffset":10382,"endOffset":10385,"count":0},{"startOffset":10515,"endOffset":10538,"count":0},{"startOffset":10790,"endOffset":11144,"count":0},{"startOffset":11204,"endOffset":11300,"count":0},{"startOffset":11322,"endOffset":11362,"count":0},{"startOffset":11388,"endOffset":11431,"count":85}],"isBlockCoverage":true},{"functionName":"defaultCloseCallback","ranges":[{"startOffset":11452,"endOffset":11520,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":11522,"endOffset":11778,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":11780,"endOffset":11923,"count":88}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11925,"endOffset":12502,"count":0}],"isBlockCoverage":false},{"functionName":"openSync","ranges":[{"startOffset":12505,"endOffset":12901,"count":88}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":13008,"endOffset":14506,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":14775,"endOffset":15690,"count":88},{"startOffset":14893,"endOffset":15042,"count":0},{"startOffset":15093,"endOffset":15114,"count":0},{"startOffset":15202,"endOffset":15221,"count":0},{"startOffset":15254,"endOffset":15384,"count":0}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":15692,"endOffset":16122,"count":0}],"isBlockCoverage":false},{"functionName":"readvSync","ranges":[{"startOffset":16265,"endOffset":16575,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":16721,"endOffset":17989,"count":0}],"isBlockCoverage":false},{"functionName":"writeSync","ranges":[{"startOffset":18266,"endOffset":19132,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":19193,"endOffset":19621,"count":0}],"isBlockCoverage":false},{"functionName":"writevSync","ranges":[{"startOffset":19750,"endOffset":20063,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":20065,"endOffset":20446,"count":0}],"isBlockCoverage":false},{"functionName":"renameSync","ranges":[{"startOffset":20448,"endOffset":20795,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":20797,"endOffset":21415,"count":0}],"isBlockCoverage":false},{"functionName":"truncateSync","ranges":[{"startOffset":21417,"endOffset":21820,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":21822,"endOffset":22162,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncateSync","ranges":[{"startOffset":22164,"endOffset":22384,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadRimraf","ranges":[{"startOffset":22387,"endOffset":22506,"count":1}],"isBlockCoverage":true},{"functionName":"rmdir","ranges":[{"startOffset":22508,"endOffset":23148,"count":0}],"isBlockCoverage":false},{"functionName":"rmdirSync","ranges":[{"startOffset":23150,"endOffset":23588,"count":17},{"startOffset":23234,"endOffset":23254,"count":1},{"startOffset":23256,"endOffset":23422,"count":1},{"startOffset":23422,"endOffset":23587,"count":16}],"isBlockCoverage":true},{"functionName":"rm","ranges":[{"startOffset":23590,"endOffset":23928,"count":0}],"isBlockCoverage":false},{"functionName":"rmSync","ranges":[{"startOffset":23930,"endOffset":24100,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":24102,"endOffset":24276,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasyncSync","ranges":[{"startOffset":24278,"endOffset":24428,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":24430,"endOffset":24596,"count":0}],"isBlockCoverage":false},{"functionName":"fsyncSync","ranges":[{"startOffset":24598,"endOffset":24740,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":24742,"endOffset":25523,"count":0}],"isBlockCoverage":false},{"functionName":"mkdirSync","ranges":[{"startOffset":25525,"endOffset":26297,"count":1},{"startOffset":25672,"endOffset":25697,"count":0},{"startOffset":25716,"endOffset":25862,"count":0},{"startOffset":25938,"endOffset":26012,"count":0},{"startOffset":26271,"endOffset":26295,"count":0}],"isBlockCoverage":true},{"functionName":"readdir","ranges":[{"startOffset":26299,"endOffset":26880,"count":0}],"isBlockCoverage":false},{"functionName":"readdirSync","ranges":[{"startOffset":26882,"endOffset":27308,"count":8},{"startOffset":27270,"endOffset":27296,"count":0}],"isBlockCoverage":true},{"functionName":"fstat","ranges":[{"startOffset":27310,"endOffset":27649,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":27651,"endOffset":28026,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":28028,"endOffset":28401,"count":0}],"isBlockCoverage":false},{"functionName":"hasNoEntryError","ranges":[{"startOffset":28403,"endOffset":28625,"count":0}],"isBlockCoverage":false},{"functionName":"fstatSync","ranges":[{"startOffset":28627,"endOffset":28891,"count":0}],"isBlockCoverage":false},{"functionName":"lstatSync","ranges":[{"startOffset":28893,"endOffset":29317,"count":24},{"startOffset":29195,"endOffset":29218,"count":0},{"startOffset":29220,"endOffset":29247,"count":0}],"isBlockCoverage":true},{"functionName":"statSync","ranges":[{"startOffset":29319,"endOffset":29740,"count":117},{"startOffset":29618,"endOffset":29641,"count":0},{"startOffset":29643,"endOffset":29670,"count":0}],"isBlockCoverage":true},{"functionName":"readlink","ranges":[{"startOffset":29742,"endOffset":30090,"count":0}],"isBlockCoverage":false},{"functionName":"readlinkSync","ranges":[{"startOffset":30092,"endOffset":30423,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":30425,"endOffset":32035,"count":0}],"isBlockCoverage":false},{"functionName":"symlinkSync","ranges":[{"startOffset":32037,"endOffset":32694,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":32696,"endOffset":33097,"count":0}],"isBlockCoverage":false},{"functionName":"linkSync","ranges":[{"startOffset":33099,"endOffset":33548,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":33550,"endOffset":33777,"count":0}],"isBlockCoverage":false},{"functionName":"unlinkSync","ranges":[{"startOffset":33779,"endOffset":33965,"count":16}],"isBlockCoverage":true},{"functionName":"fchmod","ranges":[{"startOffset":33967,"endOffset":34209,"count":0}],"isBlockCoverage":false},{"functionName":"fchmodSync","ranges":[{"startOffset":34211,"endOffset":34405,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":34407,"endOffset":34844,"count":0}],"isBlockCoverage":false},{"functionName":"lchmodSync","ranges":[{"startOffset":34846,"endOffset":35168,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":35171,"endOffset":35447,"count":0}],"isBlockCoverage":false},{"functionName":"chmodSync","ranges":[{"startOffset":35449,"endOffset":35684,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":35686,"endOffset":36027,"count":0}],"isBlockCoverage":false},{"functionName":"lchownSync","ranges":[{"startOffset":36029,"endOffset":36329,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":36331,"endOffset":36637,"count":0}],"isBlockCoverage":false},{"functionName":"fchownSync","ranges":[{"startOffset":36639,"endOffset":36898,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":36900,"endOffset":37240,"count":0}],"isBlockCoverage":false},{"functionName":"chownSync","ranges":[{"startOffset":37242,"endOffset":37540,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":37542,"endOffset":37883,"count":0}],"isBlockCoverage":false},{"functionName":"utimesSync","ranges":[{"startOffset":37885,"endOffset":38167,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":38169,"endOffset":38477,"count":0}],"isBlockCoverage":false},{"functionName":"futimesSync","ranges":[{"startOffset":38479,"endOffset":38739,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":38741,"endOffset":39087,"count":0}],"isBlockCoverage":false},{"functionName":"lutimesSync","ranges":[{"startOffset":39089,"endOffset":39393,"count":0}],"isBlockCoverage":false},{"functionName":"writeAll","ranges":[{"startOffset":39395,"endOffset":40339,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":40341,"endOffset":41280,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileSync","ranges":[{"startOffset":41282,"endOffset":41992,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":41994,"endOffset":42434,"count":0}],"isBlockCoverage":false},{"functionName":"appendFileSync","ranges":[{"startOffset":42436,"endOffset":42815,"count":0}],"isBlockCoverage":false},{"functionName":"watch","ranges":[{"startOffset":42817,"endOffset":44050,"count":0}],"isBlockCoverage":false},{"functionName":"watchFile","ranges":[{"startOffset":44086,"endOffset":45199,"count":0}],"isBlockCoverage":false},{"functionName":"unwatchFile","ranges":[{"startOffset":45201,"endOffset":45889,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46105,"endOffset":46171,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46196,"endOffset":46374,"count":112},{"startOffset":46263,"endOffset":46354,"count":224},{"startOffset":46325,"endOffset":46348,"count":112},{"startOffset":46354,"endOffset":46373,"count":0}],"isBlockCoverage":true},{"functionName":"encodeRealpathResult","ranges":[{"startOffset":46379,"endOffset":46666,"count":112},{"startOffset":46464,"endOffset":46494,"count":0},{"startOffset":46514,"endOffset":46665,"count":0}],"isBlockCoverage":true},{"functionName":"nextPart","ranges":[{"startOffset":46789,"endOffset":47032,"count":0}],"isBlockCoverage":false},{"functionName":"nextPart","ranges":[{"startOffset":47056,"endOffset":47109,"count":1087}],"isBlockCoverage":true},{"functionName":"realpathSync","ranges":[{"startOffset":47151,"endOffset":51017,"count":199},{"startOffset":47285,"endOffset":47303,"count":0},{"startOffset":47472,"endOffset":47507,"count":87},{"startOffset":47507,"endOffset":48079,"count":112},{"startOffset":48079,"endOffset":48254,"count":0},{"startOffset":48254,"endOffset":48391,"count":112},{"startOffset":48391,"endOffset":50934,"count":1087},{"startOffset":48503,"endOffset":48618,"count":112},{"startOffset":48618,"endOffset":48744,"count":975},{"startOffset":48867,"endOffset":49004,"count":907},{"startOffset":48958,"endOffset":48982,"count":0},{"startOffset":49004,"endOffset":49084,"count":180},{"startOffset":49115,"endOffset":49164,"count":0},{"startOffset":49164,"endOffset":50448,"count":180},{"startOffset":49617,"endOffset":50442,"count":0},{"startOffset":50448,"endOffset":50743,"count":0},{"startOffset":50745,"endOffset":50930,"count":0},{"startOffset":50934,"endOffset":51016,"count":112}],"isBlockCoverage":true},{"functionName":"realpathSync.native","ranges":[{"startOffset":51042,"endOffset":51281,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":51285,"endOffset":54720,"count":0}],"isBlockCoverage":false},{"functionName":"realpath.native","ranges":[{"startOffset":54741,"endOffset":55011,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":55014,"endOffset":55485,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtempSync","ranges":[{"startOffset":55488,"endOffset":55962,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":55965,"endOffset":56519,"count":0}],"isBlockCoverage":false},{"functionName":"copyFileSync","ranges":[{"startOffset":56522,"endOffset":56894,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadStreams","ranges":[{"startOffset":56896,"endOffset":57090,"count":8},{"startOffset":56944,"endOffset":57088,"count":1}],"isBlockCoverage":true},{"functionName":"createReadStream","ranges":[{"startOffset":57092,"endOffset":57197,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteStream","ranges":[{"startOffset":57199,"endOffset":57306,"count":0}],"isBlockCoverage":false},{"functionName":"get ReadStream","ranges":[{"startOffset":58529,"endOffset":58597,"count":2}],"isBlockCoverage":true},{"functionName":"set ReadStream","ranges":[{"startOffset":58602,"endOffset":58649,"count":0}],"isBlockCoverage":false},{"functionName":"get WriteStream","ranges":[{"startOffset":58654,"endOffset":58724,"count":2}],"isBlockCoverage":true},{"functionName":"set WriteStream","ranges":[{"startOffset":58729,"endOffset":58778,"count":0}],"isBlockCoverage":false},{"functionName":"get FileReadStream","ranges":[{"startOffset":58916,"endOffset":58992,"count":2}],"isBlockCoverage":true},{"functionName":"set FileReadStream","ranges":[{"startOffset":58997,"endOffset":59052,"count":0}],"isBlockCoverage":false},{"functionName":"get FileWriteStream","ranges":[{"startOffset":59057,"endOffset":59135,"count":2}],"isBlockCoverage":true},{"functionName":"set FileWriteStream","ranges":[{"startOffset":59140,"endOffset":59197,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":59628,"endOffset":59753,"count":2},{"startOffset":59673,"endOffset":59724,"count":1}],"isBlockCoverage":true}]},{"scriptId":"51","url":"internal/fs/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":21731,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadFs","ranges":[{"startOffset":2496,"endOffset":2575,"count":1}],"isBlockCoverage":true},{"functionName":"assertEncoding","ranges":[{"startOffset":2577,"endOffset":2724,"count":284},{"startOffset":2628,"endOffset":2659,"count":85},{"startOffset":2661,"endOffset":2722,"count":0}],"isBlockCoverage":true},{"functionName":"Dirent","ranges":[{"startOffset":2743,"endOffset":2818,"count":0}],"isBlockCoverage":false},{"functionName":"isDirectory","ranges":[{"startOffset":2822,"endOffset":2883,"count":0}],"isBlockCoverage":false},{"functionName":"isFile","ranges":[{"startOffset":2887,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"isBlockDevice","ranges":[{"startOffset":2948,"endOffset":3013,"count":0}],"isBlockCoverage":false},{"functionName":"isCharacterDevice","ranges":[{"startOffset":3017,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbolicLink","ranges":[{"startOffset":3089,"endOffset":3154,"count":0}],"isBlockCoverage":false},{"functionName":"isFIFO","ranges":[{"startOffset":3158,"endOffset":3215,"count":0}],"isBlockCoverage":false},{"functionName":"isSocket","ranges":[{"startOffset":3219,"endOffset":3280,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats","ranges":[{"startOffset":3325,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats.","ranges":[{"startOffset":3549,"endOffset":3598,"count":0}],"isBlockCoverage":false},{"functionName":"copyObject","ranges":[{"startOffset":3603,"endOffset":3731,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":3781,"endOffset":4388,"count":0}],"isBlockCoverage":false},{"functionName":"getDirents","ranges":[{"startOffset":4390,"endOffset":5485,"count":0}],"isBlockCoverage":false},{"functionName":"getDirent","ranges":[{"startOffset":5487,"endOffset":6209,"count":0}],"isBlockCoverage":false},{"functionName":"getOptions","ranges":[{"startOffset":6211,"endOffset":6853,"count":314},{"startOffset":6306,"endOffset":6344,"count":292},{"startOffset":6346,"endOffset":6378,"count":22},{"startOffset":6378,"endOffset":6415,"count":292},{"startOffset":6415,"endOffset":6533,"count":93},{"startOffset":6533,"endOffset":6655,"count":199},{"startOffset":6572,"endOffset":6655,"count":0},{"startOffset":6655,"endOffset":6698,"count":292},{"startOffset":6698,"endOffset":6731,"count":284},{"startOffset":6731,"endOffset":6769,"count":292},{"startOffset":6769,"endOffset":6833,"count":0},{"startOffset":6833,"endOffset":6852,"count":292}],"isBlockCoverage":true},{"functionName":"handleErrorFromBinding","ranges":[{"startOffset":6855,"endOffset":7384,"count":626},{"startOffset":6925,"endOffset":7060,"count":28},{"startOffset":7060,"endOffset":7092,"count":598},{"startOffset":7092,"endOffset":7382,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7525,"endOffset":8078,"count":496},{"startOffset":7755,"endOffset":7775,"count":61},{"startOffset":7800,"endOffset":7827,"count":435},{"startOffset":7829,"endOffset":7877,"count":61},{"startOffset":7896,"endOffset":8077,"count":0}],"isBlockCoverage":true},{"functionName":"preprocessSymlinkDestination","ranges":[{"startOffset":8082,"endOffset":8766,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase","ranges":[{"startOffset":8799,"endOffset":9106,"count":141}],"isBlockCoverage":true},{"functionName":"StatsBase.isDirectory","ranges":[{"startOffset":9142,"endOffset":9199,"count":128}],"isBlockCoverage":true},{"functionName":"StatsBase.isFile","ranges":[{"startOffset":9231,"endOffset":9288,"count":88}],"isBlockCoverage":true},{"functionName":"StatsBase.isBlockDevice","ranges":[{"startOffset":9327,"endOffset":9384,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isCharacterDevice","ranges":[{"startOffset":9427,"endOffset":9484,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSymbolicLink","ranges":[{"startOffset":9524,"endOffset":9581,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isFIFO","ranges":[{"startOffset":9613,"endOffset":9670,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSocket","ranges":[{"startOffset":9704,"endOffset":9762,"count":0}],"isBlockCoverage":false},{"functionName":"msFromTimeSpec","ranges":[{"startOffset":9887,"endOffset":9969,"count":484}],"isBlockCoverage":true},{"functionName":"nsFromTimeSpecBigInt","ranges":[{"startOffset":9971,"endOffset":10054,"count":0}],"isBlockCoverage":false},{"functionName":"dateFromMs","ranges":[{"startOffset":10403,"endOffset":10467,"count":564}],"isBlockCoverage":true},{"functionName":"BigIntStats","ranges":[{"startOffset":10469,"endOffset":11205,"count":0}],"isBlockCoverage":false},{"functionName":"BigIntStats._checkModeProperty","ranges":[{"startOffset":11363,"endOffset":11609,"count":0}],"isBlockCoverage":false},{"functionName":"Stats","ranges":[{"startOffset":11612,"endOffset":12129,"count":141}],"isBlockCoverage":true},{"functionName":"Stats._checkModeProperty","ranges":[{"startOffset":12470,"endOffset":12700,"count":216},{"startOffset":12507,"endOffset":12585,"count":0},{"startOffset":12587,"endOffset":12654,"count":0}],"isBlockCoverage":true},{"functionName":"getStatsFromBinding","ranges":[{"startOffset":12703,"endOffset":13781,"count":121},{"startOffset":12784,"endOffset":13309,"count":0}],"isBlockCoverage":true},{"functionName":"stringToFlags","ranges":[{"startOffset":13783,"endOffset":14991,"count":107},{"startOffset":13848,"endOffset":13871,"count":0},{"startOffset":13894,"endOffset":13920,"count":0},{"startOffset":13977,"endOffset":13988,"count":0},{"startOffset":14010,"endOffset":14047,"count":0},{"startOffset":14052,"endOffset":14078,"count":0},{"startOffset":14083,"endOffset":14095,"count":0},{"startOffset":14117,"endOffset":14153,"count":0},{"startOffset":14159,"endOffset":14206,"count":0},{"startOffset":14211,"endOffset":14222,"count":0},{"startOffset":14244,"endOffset":14301,"count":0},{"startOffset":14307,"endOffset":14353,"count":0},{"startOffset":14358,"endOffset":14369,"count":0},{"startOffset":14391,"endOffset":14446,"count":0},{"startOffset":14452,"endOffset":14500,"count":0},{"startOffset":14505,"endOffset":14516,"count":0},{"startOffset":14538,"endOffset":14596,"count":0},{"startOffset":14601,"endOffset":14612,"count":0},{"startOffset":14634,"endOffset":14692,"count":0},{"startOffset":14698,"endOffset":14745,"count":0},{"startOffset":14750,"endOffset":14761,"count":0},{"startOffset":14783,"endOffset":14839,"count":0},{"startOffset":14844,"endOffset":14855,"count":0},{"startOffset":14877,"endOffset":14933,"count":0},{"startOffset":14937,"endOffset":14990,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15037,"endOffset":15397,"count":0}],"isBlockCoverage":false},{"functionName":"toUnixTimestamp","ranges":[{"startOffset":15459,"endOffset":15902,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15956,"endOffset":16335,"count":126},{"startOffset":16012,"endOffset":16079,"count":0},{"startOffset":16100,"endOffset":16167,"count":0},{"startOffset":16208,"endOffset":16331,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":16393,"endOffset":16667,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16709,"endOffset":16979,"count":496},{"startOffset":16771,"endOffset":16793,"count":61},{"startOffset":16795,"endOffset":16881,"count":0},{"startOffset":16957,"endOffset":16977,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17024,"endOffset":17159,"count":297}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17207,"endOffset":17538,"count":0}],"isBlockCoverage":false},{"functionName":"warnOnNonPortableTemplate","ranges":[{"startOffset":17579,"endOffset":18037,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18273,"endOffset":18893,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18943,"endOffset":19525,"count":1},{"startOffset":19184,"endOffset":19351,"count":0},{"startOffset":19356,"endOffset":19504,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":19577,"endOffset":20059,"count":17},{"startOffset":19661,"endOffset":19677,"count":16},{"startOffset":19677,"endOffset":19733,"count":1},{"startOffset":19741,"endOffset":19802,"count":0},{"startOffset":19802,"endOffset":20058,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":20100,"endOffset":20678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20741,"endOffset":21113,"count":0}],"isBlockCoverage":false}]},{"scriptId":"52","url":"internal/fs/dir.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6714,"count":1}],"isBlockCoverage":false},{"functionName":"Dir","ranges":[{"startOffset":1109,"endOffset":1881,"count":0}],"isBlockCoverage":false},{"functionName":"get path","ranges":[{"startOffset":1885,"endOffset":1928,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":1932,"endOffset":1999,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2003,"endOffset":3375,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":3379,"endOffset":4135,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4139,"endOffset":4865,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":4869,"endOffset":5246,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":5250,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"opendir","ranges":[{"startOffset":5674,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"opendirSync","ranges":[{"startOffset":6301,"endOffset":6658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"53","url":"internal/modules/cjs/helpers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5427,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":681,"endOffset":706,"count":1}],"isBlockCoverage":true},{"functionName":"loadNativeModule","ranges":[{"startOffset":860,"endOffset":1066,"count":141},{"startOffset":964,"endOffset":1064,"count":55}],"isBlockCoverage":true},{"functionName":"makeRequireFunction","ranges":[{"startOffset":1315,"endOffset":3313,"count":84},{"startOffset":1429,"endOffset":2705,"count":0}],"isBlockCoverage":true},{"functionName":"require","ranges":[{"startOffset":1567,"endOffset":2700,"count":0}],"isBlockCoverage":false},{"functionName":"require","ranges":[{"startOffset":2727,"endOffset":2789,"count":217}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":2798,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"paths","ranges":[{"startOffset":2978,"endOffset":3100,"count":0}],"isBlockCoverage":false},{"functionName":"stripBOM","ranges":[{"startOffset":3498,"endOffset":3624,"count":1},{"startOffset":3567,"endOffset":3604,"count":0}],"isBlockCoverage":true},{"functionName":"addBuiltinLibsToObject","ranges":[{"startOffset":3626,"endOffset":5091,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeReferrerURL","ranges":[{"startOffset":5093,"endOffset":5281,"count":103},{"startOffset":5200,"endOffset":5246,"count":84},{"startOffset":5246,"endOffset":5280,"count":19}],"isBlockCoverage":true}]},{"scriptId":"54","url":"url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30124,"count":1}],"isBlockCoverage":false},{"functionName":"Url","ranges":[{"startOffset":1879,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"urlParse","ranges":[{"startOffset":3833,"endOffset":4047,"count":0}],"isBlockCoverage":false},{"functionName":"isIpv6Hostname","ranges":[{"startOffset":4049,"endOffset":4272,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":4296,"endOffset":13617,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname","ranges":[{"startOffset":13620,"endOffset":14345,"count":0}],"isBlockCoverage":false},{"functionName":"autoEscapeStr","ranges":[{"startOffset":15401,"endOffset":16107,"count":0}],"isBlockCoverage":false},{"functionName":"urlFormat","ranges":[{"startOffset":16153,"endOffset":16863,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":17570,"endOffset":20020,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolve","ranges":[{"startOffset":20023,"endOffset":20122,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":20148,"endOffset":20249,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolveObject","ranges":[{"startOffset":20252,"endOffset":20395,"count":0}],"isBlockCoverage":false},{"functionName":"resolveObject","ranges":[{"startOffset":20427,"endOffset":29546,"count":0}],"isBlockCoverage":false},{"functionName":"parseHost","ranges":[{"startOffset":29575,"endOffset":29848,"count":0}],"isBlockCoverage":false}]},{"scriptId":"55","url":"internal/idna.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":264,"count":1}],"isBlockCoverage":false}]},{"scriptId":"56","url":"internal/process/report.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2945,"count":1}],"isBlockCoverage":false},{"functionName":"writeReport","ranges":[{"startOffset":298,"endOffset":805,"count":0}],"isBlockCoverage":false},{"functionName":"getReport","ranges":[{"startOffset":809,"endOffset":1045,"count":0}],"isBlockCoverage":false},{"functionName":"get directory","ranges":[{"startOffset":1049,"endOffset":1100,"count":0}],"isBlockCoverage":false},{"functionName":"set directory","ranges":[{"startOffset":1104,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"get filename","ranges":[{"startOffset":1196,"endOffset":1245,"count":0}],"isBlockCoverage":false},{"functionName":"set filename","ranges":[{"startOffset":1249,"endOffset":1337,"count":0}],"isBlockCoverage":false},{"functionName":"get compact","ranges":[{"startOffset":1341,"endOffset":1388,"count":0}],"isBlockCoverage":false},{"functionName":"set compact","ranges":[{"startOffset":1392,"endOffset":1469,"count":0}],"isBlockCoverage":false},{"functionName":"get signal","ranges":[{"startOffset":1473,"endOffset":1518,"count":0}],"isBlockCoverage":false},{"functionName":"set signal","ranges":[{"startOffset":1522,"endOffset":1659,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnFatalError","ranges":[{"startOffset":1663,"endOffset":1735,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnFatalError","ranges":[{"startOffset":1739,"endOffset":1923,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnSignal","ranges":[{"startOffset":1927,"endOffset":1991,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnSignal","ranges":[{"startOffset":1995,"endOffset":2222,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnUncaughtException","ranges":[{"startOffset":2226,"endOffset":2312,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnUncaughtException","ranges":[{"startOffset":2316,"endOffset":2514,"count":0}],"isBlockCoverage":false},{"functionName":"addSignalHandler","ranges":[{"startOffset":2519,"endOffset":2690,"count":1},{"startOffset":2585,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"removeSignalHandler","ranges":[{"startOffset":2692,"endOffset":2816,"count":0}],"isBlockCoverage":false},{"functionName":"signalHandler","ranges":[{"startOffset":2818,"endOffset":2892,"count":0}],"isBlockCoverage":false}]},{"scriptId":"57","url":"internal/modules/cjs/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":38134,"count":1}],"isBlockCoverage":false},{"functionName":"get hasLoadedAnyUserCJSModule","ranges":[{"startOffset":1880,"endOffset":1949,"count":1}],"isBlockCoverage":true},{"functionName":"stat","ranges":[{"startOffset":4257,"endOffset":4574,"count":392},{"startOffset":4355,"endOffset":4449,"count":381},{"startOffset":4431,"endOffset":4445,"count":174},{"startOffset":4449,"endOffset":4523,"count":218},{"startOffset":4523,"endOffset":4555,"count":207},{"startOffset":4555,"endOffset":4573,"count":218}],"isBlockCoverage":true},{"functionName":"updateChildren","ranges":[{"startOffset":4576,"endOffset":4751,"count":180},{"startOffset":4649,"endOffset":4667,"count":168},{"startOffset":4684,"endOffset":4722,"count":168},{"startOffset":4694,"endOffset":4721,"count":88},{"startOffset":4728,"endOffset":4749,"count":167}],"isBlockCoverage":true},{"functionName":"Module","ranges":[{"startOffset":4753,"endOffset":4990,"count":86}],"isBlockCoverage":true},{"functionName":"wrap","ranges":[{"startOffset":5441,"endOffset":5518,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":5663,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"defineProperty","ranges":[{"startOffset":5790,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5970,"endOffset":5998,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6003,"endOffset":6057,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6107,"endOffset":6143,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6148,"endOffset":6210,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6275,"endOffset":6305,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6376,"endOffset":6401,"count":1}],"isBlockCoverage":true},{"functionName":"readPackage","ranges":[{"startOffset":6749,"endOffset":7559,"count":428},{"startOffset":6929,"endOffset":6945,"count":399},{"startOffset":6945,"endOffset":7043,"count":29},{"startOffset":7043,"endOffset":7049,"count":0},{"startOffset":7050,"endOffset":7065,"count":29},{"startOffset":7093,"endOffset":7159,"count":10},{"startOffset":7159,"endOffset":7442,"count":19},{"startOffset":7442,"endOffset":7557,"count":0}],"isBlockCoverage":true},{"functionName":"readPackageScope","ranges":[{"startOffset":7561,"endOffset":8104,"count":232},{"startOffset":7696,"endOffset":8041,"count":404},{"startOffset":7903,"endOffset":7916,"count":0},{"startOffset":7980,"endOffset":8037,"count":232},{"startOffset":8041,"endOffset":8103,"count":0}],"isBlockCoverage":true},{"functionName":"tryPackage","ranges":[{"startOffset":8106,"endOffset":9407,"count":12},{"startOffset":8228,"endOffset":8309,"count":4},{"startOffset":8309,"endOffset":8403,"count":8},{"startOffset":8403,"endOffset":8447,"count":0},{"startOffset":8448,"endOffset":8515,"count":0},{"startOffset":8541,"endOffset":9388,"count":0},{"startOffset":9388,"endOffset":9406,"count":8}],"isBlockCoverage":true},{"functionName":"tryFile","ranges":[{"startOffset":9748,"endOffset":9958,"count":137},{"startOffset":9836,"endOffset":9843,"count":39},{"startOffset":9843,"endOffset":9867,"count":98},{"startOffset":9867,"endOffset":9877,"count":0},{"startOffset":9879,"endOffset":9922,"count":0},{"startOffset":9922,"endOffset":9957,"count":98}],"isBlockCoverage":true},{"functionName":"toRealPath","ranges":[{"startOffset":9960,"endOffset":10091,"count":124}],"isBlockCoverage":true},{"functionName":"tryExtensions","ranges":[{"startOffset":10166,"endOffset":10372,"count":101},{"startOffset":10248,"endOffset":10354,"count":128},{"startOffset":10320,"endOffset":10350,"count":89},{"startOffset":10354,"endOffset":10371,"count":12}],"isBlockCoverage":true},{"functionName":"findLongestRegisteredExtension","ranges":[{"startOffset":10461,"endOffset":10897,"count":86},{"startOffset":10720,"endOffset":10729,"count":0},{"startOffset":10851,"endOffset":10875,"count":85},{"startOffset":10879,"endOffset":10896,"count":1}],"isBlockCoverage":true},{"functionName":"trySelfParentPath","ranges":[{"startOffset":10899,"endOffset":11188,"count":154},{"startOffset":10951,"endOffset":10964,"count":6},{"startOffset":10964,"endOffset":11022,"count":148},{"startOffset":11022,"endOffset":11186,"count":0}],"isBlockCoverage":true},{"functionName":"trySelf","ranges":[{"startOffset":11190,"endOffset":12039,"count":154},{"startOffset":11249,"endOffset":11262,"count":6},{"startOffset":11262,"endOffset":11332,"count":148},{"startOffset":11332,"endOffset":11337,"count":0},{"startOffset":11350,"endOffset":11378,"count":148},{"startOffset":11380,"endOffset":11393,"count":134},{"startOffset":11393,"endOffset":11430,"count":14},{"startOffset":11430,"endOffset":11443,"count":0},{"startOffset":11443,"endOffset":11490,"count":14},{"startOffset":11490,"endOffset":11516,"count":0},{"startOffset":11516,"endOffset":11682,"count":14},{"startOffset":11578,"endOffset":11653,"count":0},{"startOffset":11682,"endOffset":12037,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExports","ranges":[{"startOffset":12200,"endOffset":12938,"count":115},{"startOffset":12402,"endOffset":12407,"count":103},{"startOffset":12426,"endOffset":12433,"count":103},{"startOffset":12433,"endOffset":12549,"count":12},{"startOffset":12550,"endOffset":12578,"count":12},{"startOffset":12580,"endOffset":12936,"count":1},{"startOffset":12783,"endOffset":12932,"count":0}],"isBlockCoverage":true},{"functionName":"Module._findPath","ranges":[{"startOffset":13004,"endOffset":15631,"count":155},{"startOffset":13114,"endOffset":13137,"count":8},{"startOffset":13137,"endOffset":13200,"count":147},{"startOffset":13177,"endOffset":13200,"count":0},{"startOffset":13276,"endOffset":13286,"count":143},{"startOffset":13287,"endOffset":13307,"count":12},{"startOffset":13372,"endOffset":13385,"count":32},{"startOffset":13385,"endOffset":13508,"count":123},{"startOffset":13532,"endOffset":13669,"count":123},{"startOffset":13669,"endOffset":15612,"count":141},{"startOffset":13767,"endOffset":13787,"count":133},{"startOffset":13789,"endOffset":13798,"count":18},{"startOffset":13798,"endOffset":13826,"count":123},{"startOffset":13826,"endOffset":13956,"count":115},{"startOffset":13927,"endOffset":13950,"count":1},{"startOffset":13956,"endOffset":15263,"count":122},{"startOffset":14107,"endOffset":15040,"count":25},{"startOffset":14174,"endOffset":14234,"count":0},{"startOffset":14308,"endOffset":15032,"count":0},{"startOffset":15063,"endOffset":15257,"count":97},{"startOffset":15263,"endOffset":15283,"count":122},{"startOffset":15283,"endOffset":15294,"count":12},{"startOffset":15296,"endOffset":15512,"count":12},{"startOffset":15406,"endOffset":15444,"count":0},{"startOffset":15512,"endOffset":15608,"count":122},{"startOffset":15612,"endOffset":15630,"count":0}],"isBlockCoverage":true},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":15875,"endOffset":17266,"count":0}],"isBlockCoverage":false},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":17358,"endOffset":18399,"count":92},{"startOffset":17636,"endOffset":17661,"count":0},{"startOffset":17954,"endOffset":18292,"count":6508},{"startOffset":18034,"endOffset":18162,"count":816},{"startOffset":18071,"endOffset":18121,"count":724},{"startOffset":18162,"endOffset":18286,"count":5692},{"startOffset":18182,"endOffset":18286,"count":1980},{"startOffset":18217,"endOffset":18243,"count":1256},{"startOffset":18243,"endOffset":18278,"count":724}],"isBlockCoverage":true},{"functionName":"Module._resolveLookupPaths","ranges":[{"startOffset":18433,"endOffset":19571,"count":154},{"startOffset":18511,"endOffset":18577,"count":0},{"startOffset":18646,"endOffset":18797,"count":135},{"startOffset":18710,"endOffset":18744,"count":87},{"startOffset":18745,"endOffset":18796,"count":0},{"startOffset":18799,"endOffset":19043,"count":19},{"startOffset":18854,"endOffset":18869,"count":13},{"startOffset":18870,"endOffset":18892,"count":13},{"startOffset":18894,"endOffset":18943,"count":13},{"startOffset":19032,"endOffset":19038,"count":0},{"startOffset":19043,"endOffset":19111,"count":135},{"startOffset":19112,"endOffset":19131,"count":135},{"startOffset":19133,"endOffset":19382,"count":0},{"startOffset":19382,"endOffset":19570,"count":135}],"isBlockCoverage":true},{"functionName":"emitCircularRequireWarning","ranges":[{"startOffset":19574,"endOffset":19757,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":19950,"endOffset":20322,"count":0}],"isBlockCoverage":false},{"functionName":"getOwnPropertyDescriptor","ranges":[{"startOffset":20327,"endOffset":20568,"count":0}],"isBlockCoverage":false},{"functionName":"getExportsForCircularRequire","ranges":[{"startOffset":20769,"endOffset":21419,"count":1},{"startOffset":20944,"endOffset":21237,"count":0},{"startOffset":21239,"endOffset":21391,"count":0}],"isBlockCoverage":true},{"functionName":"Module._load","ranges":[{"startOffset":21831,"endOffset":24853,"count":223},{"startOffset":21914,"endOffset":22691,"count":217},{"startOffset":22334,"endOffset":22687,"count":20},{"startOffset":22524,"endOffset":22574,"count":0},{"startOffset":22619,"endOffset":22687,"count":0},{"startOffset":22691,"endOffset":22845,"count":203},{"startOffset":22845,"endOffset":23205,"count":74},{"startOffset":22925,"endOffset":23153,"count":7},{"startOffset":23021,"endOffset":23048,"count":6},{"startOffset":23058,"endOffset":23108,"count":1},{"startOffset":23108,"endOffset":23153,"count":6},{"startOffset":23153,"endOffset":23201,"count":67},{"startOffset":23205,"endOffset":23268,"count":135},{"startOffset":23268,"endOffset":23295,"count":49},{"startOffset":23297,"endOffset":23316,"count":49},{"startOffset":23316,"endOffset":23415,"count":86},{"startOffset":23415,"endOffset":23446,"count":80},{"startOffset":23463,"endOffset":23522,"count":0},{"startOffset":23522,"endOffset":23588,"count":86},{"startOffset":23588,"endOffset":23657,"count":80},{"startOffset":23657,"endOffset":23902,"count":86},{"startOffset":23902,"endOffset":24092,"count":0},{"startOffset":24092,"endOffset":24825,"count":86},{"startOffset":24183,"endOffset":24565,"count":0},{"startOffset":24747,"endOffset":24821,"count":0},{"startOffset":24825,"endOffset":24852,"count":86}],"isBlockCoverage":true},{"functionName":"Module._resolveFilename","ranges":[{"startOffset":24882,"endOffset":27745,"count":203},{"startOffset":24977,"endOffset":25002,"count":49},{"startOffset":25002,"endOffset":25052,"count":154},{"startOffset":25052,"endOffset":25071,"count":0},{"startOffset":25073,"endOffset":26056,"count":0},{"startOffset":26056,"endOffset":26139,"count":154},{"startOffset":26139,"endOffset":26157,"count":148},{"startOffset":26159,"endOffset":26739,"count":148},{"startOffset":26189,"endOffset":26735,"count":0},{"startOffset":26739,"endOffset":26900,"count":154},{"startOffset":26900,"endOffset":27096,"count":0},{"startOffset":27096,"endOffset":27259,"count":154},{"startOffset":27259,"endOffset":27744,"count":0}],"isBlockCoverage":true},{"functionName":"finalizeEsmResolution","ranges":[{"startOffset":27748,"endOffset":28462,"count":1},{"startOffset":27914,"endOffset":28033,"count":0},{"startOffset":28125,"endOffset":28135,"count":0},{"startOffset":28137,"endOffset":28294,"count":0},{"startOffset":28327,"endOffset":28461,"count":0}],"isBlockCoverage":true},{"functionName":"createEsmNotFoundErr","ranges":[{"startOffset":28464,"endOffset":28754,"count":0}],"isBlockCoverage":false},{"functionName":"Module.load","ranges":[{"startOffset":28843,"endOffset":29647,"count":86},{"startOffset":29162,"endOffset":29192,"count":0},{"startOffset":29194,"endOffset":29240,"count":0},{"startOffset":29513,"endOffset":29561,"count":0}],"isBlockCoverage":true},{"functionName":"Module.require","ranges":[{"startOffset":29765,"endOffset":30064,"count":217},{"startOffset":29825,"endOffset":29943,"count":0}],"isBlockCoverage":true},{"functionName":"wrapSafe","ranges":[{"startOffset":30244,"endOffset":31360,"count":84},{"startOffset":30317,"endOffset":30657,"count":0},{"startOffset":30946,"endOffset":31055,"count":0}],"isBlockCoverage":true},{"functionName":"importModuleDynamically","ranges":[{"startOffset":30498,"endOffset":30644,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":31183,"endOffset":31323,"count":0}],"isBlockCoverage":false},{"functionName":"Module._compile","ranges":[{"startOffset":31560,"endOffset":33402,"count":84},{"startOffset":31648,"endOffset":31815,"count":0},{"startOffset":31996,"endOffset":32020,"count":0},{"startOffset":32022,"endOffset":32758,"count":0},{"startOffset":32981,"endOffset":33003,"count":6},{"startOffset":33028,"endOffset":33167,"count":0},{"startOffset":33366,"endOffset":33383,"count":6}],"isBlockCoverage":true},{"functionName":"Module._extensions..js","ranges":[{"startOffset":33461,"endOffset":34235,"count":84},{"startOffset":33522,"endOffset":33918,"count":83},{"startOffset":33680,"endOffset":33914,"count":0},{"startOffset":34052,"endOffset":34068,"count":6},{"startOffset":34070,"endOffset":34135,"count":6},{"startOffset":34135,"endOffset":34195,"count":78}],"isBlockCoverage":true},{"functionName":"Module._extensions..json","ranges":[{"startOffset":34299,"endOffset":34663,"count":1},{"startOffset":34406,"endOffset":34515,"count":0},{"startOffset":34580,"endOffset":34661,"count":0}],"isBlockCoverage":true},{"functionName":"Module._extensions..node","ranges":[{"startOffset":34727,"endOffset":35045,"count":1},{"startOffset":34780,"endOffset":34936,"count":0}],"isBlockCoverage":true},{"functionName":"createRequireFromPath","ranges":[{"startOffset":35048,"endOffset":35473,"count":0}],"isBlockCoverage":false},{"functionName":"createRequire","ranges":[{"startOffset":35758,"endOffset":36311,"count":0}],"isBlockCoverage":false},{"functionName":"Module._initPaths","ranges":[{"startOffset":36372,"endOffset":37280,"count":1},{"startOffset":36413,"endOffset":36438,"count":0},{"startOffset":36490,"endOffset":36513,"count":0},{"startOffset":36721,"endOffset":36763,"count":0},{"startOffset":37030,"endOffset":37159,"count":0}],"isBlockCoverage":true},{"functionName":"pathsFilterCB","ranges":[{"startOffset":37082,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"Module._preloadModules","ranges":[{"startOffset":37308,"endOffset":37890,"count":0}],"isBlockCoverage":false},{"functionName":"syncBuiltinESMExports","ranges":[{"startOffset":37924,"endOffset":38080,"count":0}],"isBlockCoverage":false}]},{"scriptId":"58","url":"vm.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12941,"count":1}],"isBlockCoverage":false},{"functionName":"Script","ranges":[{"startOffset":1992,"endOffset":4152,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":4156,"endOffset":4436,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":4440,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":4850,"endOffset":5021,"count":0}],"isBlockCoverage":false},{"functionName":"validateContext","ranges":[{"startOffset":5025,"endOffset":5244,"count":0}],"isBlockCoverage":false},{"functionName":"getRunInContextArgs","ranges":[{"startOffset":5246,"endOffset":5837,"count":0}],"isBlockCoverage":false},{"functionName":"getContextOptions","ranges":[{"startOffset":5839,"endOffset":6907,"count":0}],"isBlockCoverage":false},{"functionName":"isContext","ranges":[{"startOffset":6909,"endOffset":7091,"count":0}],"isBlockCoverage":false},{"functionName":"createContext","ranges":[{"startOffset":7126,"endOffset":8261,"count":0}],"isBlockCoverage":false},{"functionName":"createScript","ranges":[{"startOffset":8263,"endOffset":8339,"count":0}],"isBlockCoverage":false},{"functionName":"sigintHandlersWrap","ranges":[{"startOffset":8493,"endOffset":8939,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":8941,"endOffset":9338,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":9340,"endOffset":9692,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":9694,"endOffset":9880,"count":0}],"isBlockCoverage":false},{"functionName":"compileFunction","ranges":[{"startOffset":9882,"endOffset":11615,"count":0}],"isBlockCoverage":false},{"functionName":"measureMemory","ranges":[{"startOffset":11892,"endOffset":12454,"count":0}],"isBlockCoverage":false}]},{"scriptId":"59","url":"internal/modules/package_json_reader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":279,"endOffset":946,"count":50},{"startOffset":332,"endOffset":369,"count":13},{"startOffset":369,"endOffset":593,"count":37},{"startOffset":593,"endOffset":896,"count":20},{"startOffset":627,"endOffset":761,"count":1},{"startOffset":686,"endOffset":739,"count":0},{"startOffset":789,"endOffset":892,"count":0},{"startOffset":896,"endOffset":945,"count":37}],"isBlockCoverage":true}]},{"scriptId":"60","url":"internal/process/esm_loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2326,"count":1}],"isBlockCoverage":false},{"functionName":"exports.initializeImportMetaObject","ranges":[{"startOffset":405,"endOffset":701,"count":0}],"isBlockCoverage":false},{"functionName":"exports.importModuleDynamicallyCallback","ranges":[{"startOffset":746,"endOffset":1137,"count":44},{"startOffset":1081,"endOffset":1136,"count":0}],"isBlockCoverage":true},{"functionName":"initializeLoader","ranges":[{"startOffset":1202,"endOffset":1969,"count":1},{"startOffset":1388,"endOffset":1968,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1722,"endOffset":1963,"count":0}],"isBlockCoverage":true},{"functionName":"loadESM","ranges":[{"startOffset":1989,"endOffset":2324,"count":1},{"startOffset":2097,"endOffset":2322,"count":0}],"isBlockCoverage":true}]},{"scriptId":"61","url":"internal/modules/esm/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8625,"count":1}],"isBlockCoverage":false},{"functionName":"Loader","ranges":[{"startOffset":1416,"endOffset":3189,"count":1}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":3193,"endOffset":3816,"count":83},{"startOffset":3298,"endOffset":3337,"count":82},{"startOffset":3514,"endOffset":3617,"count":0},{"startOffset":3689,"endOffset":3796,"count":0}],"isBlockCoverage":true},{"functionName":"getFormat","ranges":[{"startOffset":3820,"endOffset":5128,"count":83},{"startOffset":3977,"endOffset":4084,"count":0},{"startOffset":4153,"endOffset":4410,"count":0},{"startOffset":4447,"endOffset":4562,"count":0},{"startOffset":4594,"endOffset":4622,"count":8},{"startOffset":4622,"endOffset":4666,"count":75},{"startOffset":4666,"endOffset":4835,"count":0},{"startOffset":4835,"endOffset":4927,"count":75},{"startOffset":4928,"endOffset":4977,"count":0},{"startOffset":4984,"endOffset":5104,"count":0},{"startOffset":5104,"endOffset":5127,"count":75}],"isBlockCoverage":true},{"functionName":"eval","ranges":[{"startOffset":5132,"endOffset":5807,"count":0}],"isBlockCoverage":false},{"functionName":"import","ranges":[{"startOffset":5811,"endOffset":5982,"count":45}],"isBlockCoverage":true},{"functionName":"hook","ranges":[{"startOffset":5986,"endOffset":6947,"count":0}],"isBlockCoverage":false},{"functionName":"runGlobalPreloadCode","ranges":[{"startOffset":6951,"endOffset":7755,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleJob","ranges":[{"startOffset":7759,"endOffset":8549,"count":83},{"startOffset":8046,"endOffset":8083,"count":0},{"startOffset":8117,"endOffset":8128,"count":52},{"startOffset":8128,"endOffset":8170,"count":31},{"startOffset":8170,"endOffset":8214,"count":0},{"startOffset":8214,"endOffset":8316,"count":31},{"startOffset":8316,"endOffset":8346,"count":1},{"startOffset":8347,"endOffset":8381,"count":1}],"isBlockCoverage":true}]},{"scriptId":"62","url":"internal/modules/esm/module_map.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":878,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":175,"endOffset":200,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":419,"endOffset":492,"count":83}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":495,"endOffset":771,"count":31},{"startOffset":585,"endOffset":621,"count":0},{"startOffset":623,"endOffset":693,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":774,"endOffset":847,"count":0}],"isBlockCoverage":false}]},{"scriptId":"63","url":"internal/modules/esm/module_job.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5778,"count":1}],"isBlockCoverage":false},{"functionName":"ModuleJob","ranges":[{"startOffset":832,"endOffset":2478,"count":31}],"isBlockCoverage":true},{"functionName":"link","ranges":[{"startOffset":1301,"endOffset":2105,"count":31}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1757,"endOffset":1984,"count":38}],"isBlockCoverage":true},{"functionName":"instantiate","ranges":[{"startOffset":2482,"endOffset":2627,"count":45},{"startOffset":2539,"endOffset":2593,"count":7}],"isBlockCoverage":true},{"functionName":"_instantiate","ranges":[{"startOffset":2631,"endOffset":5498,"count":7},{"startOffset":3105,"endOffset":3282,"count":0},{"startOffset":3339,"endOffset":5251,"count":0},{"startOffset":5298,"endOffset":5494,"count":39}],"isBlockCoverage":true},{"functionName":"addJobsToDependencyGraph","ranges":[{"startOffset":2730,"endOffset":3004,"count":46},{"startOffset":2791,"endOffset":2816,"count":7},{"startOffset":2816,"endOffset":3003,"count":39}],"isBlockCoverage":true},{"functionName":"run","ranges":[{"startOffset":5502,"endOffset":5698,"count":45}],"isBlockCoverage":true}]},{"scriptId":"64","url":"internal/modules/esm/resolve.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":28247,"count":1}],"isBlockCoverage":false},{"functionName":"getConditionsSet","ranges":[{"startOffset":1873,"endOffset":2225,"count":75},{"startOffset":1982,"endOffset":2190,"count":0}],"isBlockCoverage":true},{"functionName":"tryStatSync","ranges":[{"startOffset":2336,"endOffset":2441,"count":116},{"startOffset":2404,"endOffset":2439,"count":20}],"isBlockCoverage":true},{"functionName":"getPackageConfig","ranges":[{"startOffset":2443,"endOffset":3781,"count":261},{"startOffset":2571,"endOffset":2597,"count":240},{"startOffset":2597,"endOffset":2680,"count":21},{"startOffset":2680,"endOffset":2955,"count":13},{"startOffset":2955,"endOffset":3025,"count":8},{"startOffset":3025,"endOffset":3204,"count":0},{"startOffset":3204,"endOffset":3326,"count":8},{"startOffset":3326,"endOffset":3345,"count":0},{"startOffset":3347,"endOffset":3400,"count":8},{"startOffset":3400,"endOffset":3417,"count":0},{"startOffset":3417,"endOffset":3450,"count":8},{"startOffset":3450,"endOffset":3467,"count":0},{"startOffset":3467,"endOffset":3545,"count":8},{"startOffset":3545,"endOffset":3567,"count":6},{"startOffset":3569,"endOffset":3583,"count":6},{"startOffset":3583,"endOffset":3780,"count":8}],"isBlockCoverage":true},{"functionName":"getPackageScopeConfig","ranges":[{"startOffset":3783,"endOffset":4883,"count":84},{"startOffset":3901,"endOffset":4554,"count":250},{"startOffset":4041,"endOffset":4047,"count":0},{"startOffset":4206,"endOffset":4227,"count":84},{"startOffset":4227,"endOffset":4544,"count":166},{"startOffset":4544,"endOffset":4550,"count":0},{"startOffset":4554,"endOffset":4882,"count":0}],"isBlockCoverage":true},{"functionName":"fileExists","ranges":[{"startOffset":5139,"endOffset":5218,"count":13}],"isBlockCoverage":true},{"functionName":"legacyMainResolve","ranges":[{"startOffset":5220,"endOffset":6891,"count":9},{"startOffset":5532,"endOffset":5559,"count":8},{"startOffset":5559,"endOffset":5678,"count":1},{"startOffset":5678,"endOffset":5705,"count":0},{"startOffset":5705,"endOffset":5826,"count":1},{"startOffset":5826,"endOffset":5853,"count":0},{"startOffset":5853,"endOffset":5974,"count":1},{"startOffset":5974,"endOffset":6001,"count":0},{"startOffset":6001,"endOffset":6153,"count":1},{"startOffset":6153,"endOffset":6461,"count":0},{"startOffset":6485,"endOffset":6890,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExtensionsWithTryExactName","ranges":[{"startOffset":6893,"endOffset":7024,"count":0}],"isBlockCoverage":false},{"functionName":"resolveExtensions","ranges":[{"startOffset":7080,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"resolveIndex","ranges":[{"startOffset":7339,"endOffset":7426,"count":0}],"isBlockCoverage":false},{"functionName":"finalizeResolution","ranges":[{"startOffset":7464,"endOffset":8671,"count":75},{"startOffset":7577,"endOffset":7720,"count":0},{"startOffset":7834,"endOffset":8243,"count":0},{"startOffset":8308,"endOffset":8344,"count":0},{"startOffset":8381,"endOffset":8508,"count":0},{"startOffset":8535,"endOffset":8649,"count":0}],"isBlockCoverage":true},{"functionName":"throwImportNotDefined","ranges":[{"startOffset":8673,"endOffset":8888,"count":0}],"isBlockCoverage":false},{"functionName":"throwExportsNotFound","ranges":[{"startOffset":8890,"endOffset":9089,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidSubpath","ranges":[{"startOffset":9091,"endOffset":9441,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidPackageTarget","ranges":[{"startOffset":9443,"endOffset":9825,"count":0}],"isBlockCoverage":false},{"functionName":"resolvePackageTargetString","ranges":[{"startOffset":9926,"endOffset":11589,"count":3},{"startOffset":10065,"endOffset":10076,"count":0},{"startOffset":10077,"endOffset":10113,"count":0},{"startOffset":10119,"endOffset":10192,"count":0},{"startOffset":10242,"endOffset":10782,"count":0},{"startOffset":10869,"endOffset":10942,"count":0},{"startOffset":11165,"endOffset":11238,"count":0},{"startOffset":11278,"endOffset":11588,"count":0}],"isBlockCoverage":true},{"functionName":"isArrayIndex","ranges":[{"startOffset":11644,"endOffset":11784,"count":12},{"startOffset":11736,"endOffset":11781,"count":0}],"isBlockCoverage":true},{"functionName":"resolvePackageTarget","ranges":[{"startOffset":11786,"endOffset":13918,"count":8},{"startOffset":11968,"endOffset":12111,"count":3},{"startOffset":12111,"endOffset":13803,"count":5},{"startOffset":12143,"endOffset":12915,"count":0},{"startOffset":13068,"endOffset":13296,"count":12},{"startOffset":13126,"endOffset":13290,"count":0},{"startOffset":13339,"endOffset":13728,"count":9},{"startOffset":13420,"endOffset":13722,"count":5},{"startOffset":13680,"endOffset":13689,"count":0},{"startOffset":13728,"endOffset":13803,"count":0},{"startOffset":13803,"endOffset":13917,"count":0}],"isBlockCoverage":true},{"functionName":"isConditionalExportsMainSugar","ranges":[{"startOffset":13920,"endOffset":14855,"count":3},{"startOffset":14052,"endOffset":14064,"count":0},{"startOffset":14120,"endOffset":14133,"count":0},{"startOffset":14273,"endOffset":14824,"count":6},{"startOffset":14383,"endOffset":14820,"count":3},{"startOffset":14496,"endOffset":14820,"count":0}],"isBlockCoverage":true},{"functionName":"packageExportsResolve","ranges":[{"startOffset":15040,"endOffset":16923,"count":3},{"startOffset":15252,"endOffset":15279,"count":0},{"startOffset":15579,"endOffset":15638,"count":0},{"startOffset":15680,"endOffset":16922,"count":0}],"isBlockCoverage":true},{"functionName":"packageImportsResolve","ranges":[{"startOffset":16925,"endOffset":18921,"count":0}],"isBlockCoverage":false},{"functionName":"getPackageType","ranges":[{"startOffset":18923,"endOffset":19036,"count":73}],"isBlockCoverage":true},{"functionName":"packageResolve","ranges":[{"startOffset":19149,"endOffset":21981,"count":11},{"startOffset":19350,"endOffset":19578,"count":0},{"startOffset":19640,"endOffset":19692,"count":0},{"startOffset":19835,"endOffset":19952,"count":83},{"startOffset":19896,"endOffset":19948,"count":0},{"startOffset":19979,"endOffset":20098,"count":0},{"startOffset":20159,"endOffset":20212,"count":0},{"startOffset":20426,"endOffset":20472,"count":0},{"startOffset":20473,"endOffset":20506,"count":0},{"startOffset":20508,"endOffset":20641,"count":0},{"startOffset":20816,"endOffset":21772,"count":28},{"startOffset":20998,"endOffset":21275,"count":17},{"startOffset":21075,"endOffset":21112,"count":0},{"startOffset":21275,"endOffset":21421,"count":11},{"startOffset":21421,"endOffset":21454,"count":2},{"startOffset":21462,"endOffset":21581,"count":2},{"startOffset":21581,"endOffset":21682,"count":9},{"startOffset":21682,"endOffset":21772,"count":0},{"startOffset":21772,"endOffset":21980,"count":0}],"isBlockCoverage":true},{"functionName":"isBareSpecifier","ranges":[{"startOffset":21983,"endOffset":22093,"count":0}],"isBlockCoverage":false},{"functionName":"isRelativeSpecifier","ranges":[{"startOffset":22095,"endOffset":22366,"count":75},{"startOffset":22165,"endOffset":22348,"count":63},{"startOffset":22223,"endOffset":22235,"count":54},{"startOffset":22235,"endOffset":22344,"count":9},{"startOffset":22348,"endOffset":22365,"count":12}],"isBlockCoverage":true},{"functionName":"shouldBeTreatedAsRelativeOrAbsolutePath","ranges":[{"startOffset":22368,"endOffset":22551,"count":75},{"startOffset":22454,"endOffset":22467,"count":0},{"startOffset":22496,"endOffset":22508,"count":0}],"isBlockCoverage":true},{"functionName":"moduleResolve","ranges":[{"startOffset":22664,"endOffset":23235,"count":75},{"startOffset":22892,"endOffset":22938,"count":63},{"startOffset":22938,"endOffset":23188,"count":12},{"startOffset":22970,"endOffset":23048,"count":0},{"startOffset":23109,"endOffset":23184,"count":11}],"isBlockCoverage":true},{"functionName":"resolveAsCommonJS","ranges":[{"startOffset":23381,"endOffset":24789,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolve","ranges":[{"startOffset":24791,"endOffset":28097,"count":83},{"startOffset":24923,"endOffset":24942,"count":82},{"startOffset":24944,"endOffset":25547,"count":0},{"startOffset":25640,"endOffset":25694,"count":0},{"startOffset":25699,"endOffset":25707,"count":82},{"startOffset":25721,"endOffset":25751,"count":1},{"startOffset":25757,"endOffset":25783,"count":0},{"startOffset":25797,"endOffset":25827,"count":1},{"startOffset":25828,"endOffset":25858,"count":0},{"startOffset":25864,"endOffset":25913,"count":0},{"startOffset":25966,"endOffset":26022,"count":8},{"startOffset":26022,"endOffset":26039,"count":75},{"startOffset":26039,"endOffset":26087,"count":74},{"startOffset":26089,"endOffset":26177,"count":0},{"startOffset":26177,"endOffset":26235,"count":75},{"startOffset":26235,"endOffset":26762,"count":1},{"startOffset":26719,"endOffset":26758,"count":0},{"startOffset":26762,"endOffset":26891,"count":75},{"startOffset":26891,"endOffset":27695,"count":0},{"startOffset":27695,"endOffset":27710,"count":75},{"startOffset":27710,"endOffset":27733,"count":1},{"startOffset":27734,"endOffset":27753,"count":74},{"startOffset":27755,"endOffset":28066,"count":75},{"startOffset":27995,"endOffset":28000,"count":0},{"startOffset":28066,"endOffset":28096,"count":75}],"isBlockCoverage":true}]},{"scriptId":"65","url":"internal/modules/esm/get_format.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2496,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetFormat","ranges":[{"startOffset":1131,"endOffset":2450,"count":83},{"startOffset":1244,"endOffset":1283,"count":8},{"startOffset":1283,"endOffset":1350,"count":75},{"startOffset":1350,"endOffset":1760,"count":0},{"startOffset":1760,"endOffset":2421,"count":75},{"startOffset":1882,"endOffset":1970,"count":73},{"startOffset":1940,"endOffset":1950,"count":65},{"startOffset":1951,"endOffset":1963,"count":8},{"startOffset":1970,"endOffset":2023,"count":2},{"startOffset":2041,"endOffset":2378,"count":0},{"startOffset":2407,"endOffset":2414,"count":0},{"startOffset":2421,"endOffset":2449,"count":0}],"isBlockCoverage":true}]},{"scriptId":"66","url":"internal/modules/esm/get_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1307,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetSource","ranges":[{"startOffset":609,"endOffset":1261,"count":19},{"startOffset":810,"endOffset":1155,"count":0},{"startOffset":1180,"endOffset":1238,"count":0}],"isBlockCoverage":true}]},{"scriptId":"67","url":"internal/fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20020,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2272,"endOffset":2432,"count":0}],"isBlockCoverage":false},{"functionName":"FileHandle","ranges":[{"startOffset":2480,"endOffset":2657,"count":19},{"startOffset":2594,"endOffset":2598,"count":0}],"isBlockCoverage":true},{"functionName":"getAsyncId","ranges":[{"startOffset":2661,"endOffset":2718,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":2722,"endOffset":2758,"count":57}],"isBlockCoverage":true},{"functionName":"appendFile","ranges":[{"startOffset":2762,"endOffset":2844,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":2848,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":2908,"endOffset":2972,"count":0}],"isBlockCoverage":false},{"functionName":"datasync","ranges":[{"startOffset":2976,"endOffset":3028,"count":0}],"isBlockCoverage":false},{"functionName":"sync","ranges":[{"startOffset":3032,"endOffset":3076,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":3080,"endOffset":3189,"count":0}],"isBlockCoverage":false},{"functionName":"readv","ranges":[{"startOffset":3193,"endOffset":3274,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":3278,"endOffset":3345,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":3349,"endOffset":3409,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":3413,"endOffset":3477,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":3481,"endOffset":3555,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":3559,"endOffset":3670,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":3674,"endOffset":3757,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":3761,"endOffset":3842,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3846,"endOffset":4538,"count":19}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":3854,"endOffset":4538,"count":19},{"startOffset":3888,"endOffset":3926,"count":0},{"startOffset":3957,"endOffset":3998,"count":0},{"startOffset":4192,"endOffset":4501,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4128,"endOffset":4184,"count":19}],"isBlockCoverage":true},{"functionName":".Promise.finally.","ranges":[{"startOffset":4240,"endOffset":4346,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4356,"endOffset":4493,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4542,"endOffset":5011,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5015,"endOffset":5068,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5072,"endOffset":5159,"count":0}],"isBlockCoverage":false},{"functionName":"fsCall","ranges":[{"startOffset":5163,"endOffset":5781,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileHandle","ranges":[{"startOffset":5783,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"readFileHandle","ranges":[{"startOffset":6461,"endOffset":7737,"count":19},{"startOffset":6572,"endOffset":6589,"count":0},{"startOffset":6591,"endOffset":6667,"count":0},{"startOffset":6760,"endOffset":6777,"count":0},{"startOffset":6779,"endOffset":6855,"count":0},{"startOffset":6964,"endOffset":6989,"count":0},{"startOffset":7022,"endOffset":7060,"count":0},{"startOffset":7114,"endOffset":7141,"count":0},{"startOffset":7216,"endOffset":7567,"count":38},{"startOffset":7233,"endOffset":7250,"count":0},{"startOffset":7252,"endOffset":7332,"count":0},{"startOffset":7523,"endOffset":7563,"count":19},{"startOffset":7638,"endOffset":7661,"count":0},{"startOffset":7690,"endOffset":7725,"count":0}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":7890,"endOffset":8111,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":8113,"endOffset":8471,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":8591,"endOffset":8916,"count":19}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":8918,"endOffset":9972,"count":38},{"startOffset":9057,"endOffset":9339,"count":0},{"startOffset":9363,"endOffset":9384,"count":0},{"startOffset":9476,"endOffset":9513,"count":0},{"startOffset":9542,"endOffset":9672,"count":0},{"startOffset":9776,"endOffset":9790,"count":0},{"startOffset":9932,"endOffset":9936,"count":19}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":9974,"endOffset":10294,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":10296,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":11219,"endOffset":11551,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":11553,"endOffset":11859,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":11861,"endOffset":12004,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":12006,"endOffset":12165,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":12167,"endOffset":12364,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":12366,"endOffset":12629,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":12631,"endOffset":12720,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":12722,"endOffset":12803,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":12805,"endOffset":13337,"count":7},{"startOffset":12909,"endOffset":12947,"count":0},{"startOffset":13012,"endOffset":13017,"count":0},{"startOffset":13094,"endOffset":13168,"count":0}],"isBlockCoverage":true},{"functionName":"readdir","ranges":[{"startOffset":13339,"endOffset":13791,"count":0}],"isBlockCoverage":false},{"functionName":"readlink","ranges":[{"startOffset":13793,"endOffset":14036,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":14038,"endOffset":14451,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":14453,"endOffset":14631,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":14633,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":14905,"endOffset":15172,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":15174,"endOffset":15497,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":15499,"endOffset":15637,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":15639,"endOffset":15772,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":15774,"endOffset":15960,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":15962,"endOffset":16200,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":16202,"endOffset":16478,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":16480,"endOffset":16677,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":16679,"endOffset":16952,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":16954,"endOffset":17226,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":17228,"endOffset":17427,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":17429,"endOffset":17706,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":17708,"endOffset":17885,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":17887,"endOffset":18217,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":18219,"endOffset":18938,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":18940,"endOffset":19181,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":19183,"endOffset":19613,"count":19},{"startOffset":19300,"endOffset":19306,"count":0},{"startOffset":19347,"endOffset":19384,"count":0},{"startOffset":19417,"endOffset":19493,"count":0}],"isBlockCoverage":true}]},{"scriptId":"68","url":"internal/fs/rimraf.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7039,"count":1}],"isBlockCoverage":false},{"functionName":"rimraf","ranges":[{"startOffset":1137,"endOffset":1597,"count":0}],"isBlockCoverage":false},{"functionName":"_rimraf","ranges":[{"startOffset":1600,"endOffset":2458,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERM","ranges":[{"startOffset":2461,"endOffset":2896,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdir","ranges":[{"startOffset":2899,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"_rmchildren","ranges":[{"startOffset":3200,"endOffset":3872,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafPromises","ranges":[{"startOffset":3875,"endOffset":4073,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafSync","ranges":[{"startOffset":4076,"endOffset":4781,"count":24},{"startOffset":4168,"endOffset":4351,"count":0},{"startOffset":4471,"endOffset":4503,"count":8},{"startOffset":4503,"endOffset":4546,"count":16},{"startOffset":4551,"endOffset":4779,"count":0}],"isBlockCoverage":true},{"functionName":"_unlinkSync","ranges":[{"startOffset":4784,"endOffset":5267,"count":16},{"startOffset":4947,"endOffset":5261,"count":0},{"startOffset":5265,"endOffset":5266,"count":0}],"isBlockCoverage":true},{"functionName":"_rmdirSync","ranges":[{"startOffset":5270,"endOffset":6540,"count":8},{"startOffset":5404,"endOffset":5411,"count":0},{"startOffset":5450,"endOffset":5468,"count":0},{"startOffset":6174,"endOffset":6520,"count":0},{"startOffset":6528,"endOffset":6534,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5892,"endOffset":6023,"count":23}],"isBlockCoverage":true},{"functionName":"fixWinEPERMSync","ranges":[{"startOffset":6543,"endOffset":6979,"count":0}],"isBlockCoverage":false}]},{"scriptId":"69","url":"internal/modules/esm/transform_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":215,"count":1}],"isBlockCoverage":false},{"functionName":"defaultTransformSource","ranges":[{"startOffset":15,"endOffset":157,"count":19}],"isBlockCoverage":true}]},{"scriptId":"70","url":"internal/modules/esm/translators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12048,"count":1}],"isBlockCoverage":false},{"functionName":"lazyTypes","ranges":[{"startOffset":416,"endOffset":528,"count":38},{"startOffset":462,"endOffset":476,"count":37},{"startOffset":476,"endOffset":527,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1202,"endOffset":1227,"count":1}],"isBlockCoverage":true},{"functionName":"initCJSParse","ranges":[{"startOffset":1860,"endOffset":2152,"count":2},{"startOffset":1934,"endOffset":2009,"count":0}],"isBlockCoverage":true},{"functionName":"assertBufferSource","ranges":[{"startOffset":2286,"endOffset":2706,"count":38},{"startOffset":2363,"endOffset":2390,"count":19},{"startOffset":2392,"endOffset":2409,"count":0},{"startOffset":2503,"endOffset":2528,"count":0},{"startOffset":2547,"endOffset":2626,"count":0},{"startOffset":2627,"endOffset":2631,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":2708,"endOffset":2926,"count":19},{"startOffset":2767,"endOffset":2779,"count":0},{"startOffset":2863,"endOffset":2882,"count":1},{"startOffset":2883,"endOffset":2892,"count":18}],"isBlockCoverage":true},{"functionName":"errPath","ranges":[{"startOffset":2928,"endOffset":3073,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":3075,"endOffset":3189,"count":44}],"isBlockCoverage":true},{"functionName":"createImportMetaResolve","ranges":[{"startOffset":3191,"endOffset":3539,"count":0}],"isBlockCoverage":false},{"functionName":"initializeImportMeta","ranges":[{"startOffset":3541,"endOffset":3711,"count":0}],"isBlockCoverage":false},{"functionName":"moduleStrategy","ranges":[{"startOffset":3793,"endOffset":4374,"count":19}],"isBlockCoverage":true},{"functionName":"enrichCJSError","ranges":[{"startOffset":4378,"endOffset":5277,"count":0}],"isBlockCoverage":false},{"functionName":"commonjsStrategy","ranges":[{"startOffset":5435,"endOffset":6741,"count":6},{"startOffset":5609,"endOffset":5672,"count":0},{"startOffset":5691,"endOffset":5712,"count":2},{"startOffset":5837,"endOffset":5859,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5950,"endOffset":6737,"count":6},{"startOffset":6069,"endOffset":6183,"count":0},{"startOffset":6275,"endOffset":6344,"count":0},{"startOffset":6394,"endOffset":6693,"count":14},{"startOffset":6505,"endOffset":6514,"count":0},{"startOffset":6638,"endOffset":6646,"count":0}],"isBlockCoverage":true},{"functionName":"cjsPreparseModuleExports","ranges":[{"startOffset":6745,"endOffset":8189,"count":6},{"startOffset":6848,"endOffset":6973,"count":0},{"startOffset":7272,"endOffset":7280,"count":0},{"startOffset":7362,"endOffset":7367,"count":0},{"startOffset":7375,"endOffset":7424,"count":0},{"startOffset":7585,"endOffset":7682,"count":0},{"startOffset":7719,"endOffset":8152,"count":0}],"isBlockCoverage":true},{"functionName":"builtinStrategy","ranges":[{"startOffset":8313,"endOffset":8701,"count":6},{"startOffset":8574,"endOffset":8626,"count":0}],"isBlockCoverage":true},{"functionName":"jsonStrategy","ranges":[{"startOffset":8765,"endOffset":10884,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10950,"endOffset":12045,"count":0}],"isBlockCoverage":false}]},{"scriptId":"71","url":"internal/modules/esm/create_dynamic_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1756,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":190,"endOffset":215,"count":0}],"isBlockCoverage":false},{"functionName":"createImport","ranges":[{"startOffset":219,"endOffset":409,"count":0}],"isBlockCoverage":false},{"functionName":"createExport","ranges":[{"startOffset":411,"endOffset":612,"count":0}],"isBlockCoverage":false},{"functionName":"createDynamicModule","ranges":[{"startOffset":642,"endOffset":1715,"count":0}],"isBlockCoverage":false}]},{"scriptId":"72","url":"internal/vm/module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12877,"count":1}],"isBlockCoverage":false},{"functionName":"Module","ranges":[{"startOffset":1618,"endOffset":3804,"count":0}],"isBlockCoverage":false},{"functionName":"get identifier","ranges":[{"startOffset":3808,"endOffset":3945,"count":0}],"isBlockCoverage":false},{"functionName":"get context","ranges":[{"startOffset":3949,"endOffset":4082,"count":0}],"isBlockCoverage":false},{"functionName":"get namespace","ranges":[{"startOffset":4086,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":4367,"endOffset":4520,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":4524,"endOffset":4774,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":4778,"endOffset":5257,"count":0}],"isBlockCoverage":false},{"functionName":"evaluate","ranges":[{"startOffset":5261,"endOffset":6213,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6217,"endOffset":6945,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":7092,"endOffset":7128,"count":0}],"isBlockCoverage":false},{"functionName":"SourceTextModule","ranges":[{"startOffset":7133,"endOffset":9559,"count":0}],"isBlockCoverage":false},{"functionName":"get dependencySpecifiers","ranges":[{"startOffset":9563,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":9866,"endOffset":10135,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":10139,"endOffset":10335,"count":0}],"isBlockCoverage":false},{"functionName":"createCachedData","ranges":[{"startOffset":10339,"endOffset":10601,"count":0}],"isBlockCoverage":false},{"functionName":"SyntheticModule","ranges":[{"startOffset":10646,"endOffset":11943,"count":0}],"isBlockCoverage":false},{"functionName":"setExport","ranges":[{"startOffset":11947,"endOffset":12249,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamicallyWrap","ranges":[{"startOffset":12253,"endOffset":12715,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleFromWrap","ranges":[{"startOffset":12837,"endOffset":12872,"count":44}],"isBlockCoverage":true}]},{"scriptId":"73","url":"internal/modules/run_main.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2582,"count":1}],"isBlockCoverage":false},{"functionName":"resolveMainPath","ranges":[{"startOffset":220,"endOffset":658,"count":1},{"startOffset":487,"endOffset":494,"count":0}],"isBlockCoverage":true},{"functionName":"shouldUseESMLoader","ranges":[{"startOffset":660,"endOffset":1215,"count":1},{"startOffset":784,"endOffset":796,"count":0},{"startOffset":944,"endOffset":956,"count":0},{"startOffset":1051,"endOffset":1063,"count":0},{"startOffset":1114,"endOffset":1127,"count":0}],"isBlockCoverage":true},{"functionName":"runMainESM","ranges":[{"startOffset":1217,"endOffset":1552,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1400,"endOffset":1547,"count":1},{"startOffset":1497,"endOffset":1507,"count":0}],"isBlockCoverage":true},{"functionName":"handleMainPromise","ranges":[{"startOffset":1554,"endOffset":1991,"count":1}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":1803,"endOffset":1896,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1953,"endOffset":1987,"count":1}],"isBlockCoverage":true},{"functionName":"executeUserEntryPoint","ranges":[{"startOffset":2177,"endOffset":2512,"count":1},{"startOffset":2387,"endOffset":2394,"count":0},{"startOffset":2400,"endOffset":2510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"74","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3159,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":212,"endOffset":913,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":949,"endOffset":1653,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1686,"endOffset":3156,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2730,"endOffset":2762,"count":2},{"startOffset":2758,"endOffset":2762,"count":0}],"isBlockCoverage":true}]},{"scriptId":"75","url":"internal/deps/cjs-module-lexer/dist/lexer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":33943,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":231,"endOffset":903,"count":6},{"startOffset":261,"endOffset":296,"count":0},{"startOffset":337,"endOffset":352,"count":0},{"startOffset":388,"endOffset":423,"count":1},{"startOffset":447,"endOffset":449,"count":0},{"startOffset":521,"endOffset":668,"count":0},{"startOffset":716,"endOffset":748,"count":0},{"startOffset":761,"endOffset":791,"count":0},{"startOffset":804,"endOffset":863,"count":14}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":903,"endOffset":1004,"count":0}],"isBlockCoverage":false},{"functionName":"C","ranges":[{"startOffset":1004,"endOffset":1078,"count":6},{"startOffset":1055,"endOffset":1077,"count":28254}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":1084,"endOffset":33943,"count":2},{"startOffset":1108,"endOffset":33942,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1114,"endOffset":33938,"count":1},{"startOffset":33782,"endOffset":33851,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":33832,"endOffset":33850,"count":0}],"isBlockCoverage":false}]},{"scriptId":"76","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/helpers/createTestServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1178,"count":1}],"isBlockCoverage":true},{"functionName":"getNewPort","ranges":[{"startOffset":425,"endOffset":492,"count":7}],"isBlockCoverage":true},{"functionName":"createTestServers","ranges":[{"startOffset":495,"endOffset":1142,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":641,"endOffset":1014,"count":7}],"isBlockCoverage":true},{"functionName":"servers.close","ranges":[{"startOffset":1040,"endOffset":1120,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1089,"endOffset":1113,"count":7}],"isBlockCoverage":true}]},{"scriptId":"77","url":"internal/fs/streams.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"ReadStream","ranges":[{"startOffset":702,"endOffset":2789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2928,"endOffset":2963,"count":0}],"isBlockCoverage":false},{"functionName":"_openReadFs","ranges":[{"startOffset":3063,"endOffset":3544,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._read","ranges":[{"startOffset":3575,"endOffset":4888,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._destroy","ranges":[{"startOffset":4923,"endOffset":5210,"count":0}],"isBlockCoverage":false},{"functionName":"closeFsStream","ranges":[{"startOffset":5213,"endOffset":5369,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.close","ranges":[{"startOffset":5400,"endOffset":5486,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5547,"endOffset":5581,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":5609,"endOffset":7859,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._final","ranges":[{"startOffset":8002,"endOffset":8159,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":8192,"endOffset":8228,"count":0}],"isBlockCoverage":false},{"functionName":"_openWriteFs","ranges":[{"startOffset":8331,"endOffset":8764,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._write","ranges":[{"startOffset":8798,"endOffset":9466,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._writev","ranges":[{"startOffset":9502,"endOffset":10392,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.close","ranges":[{"startOffset":10490,"endOffset":10872,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":11035,"endOffset":11069,"count":0}],"isBlockCoverage":false}]},{"scriptId":"78","url":"stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2187,"count":1}],"isBlockCoverage":false},{"functionName":"_uint8ArrayToBuffer","ranges":[{"startOffset":1978,"endOffset":2185,"count":0}],"isBlockCoverage":false}]},{"scriptId":"79","url":"internal/streams/pipeline.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7631,"count":1}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":543,"endOffset":1935,"count":0}],"isBlockCoverage":false},{"functionName":"popCallback","ranges":[{"startOffset":1937,"endOffset":2308,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":2392,"endOffset":2473,"count":0}],"isBlockCoverage":false},{"functionName":"isStream","ranges":[{"startOffset":2475,"endOffset":2546,"count":0}],"isBlockCoverage":false},{"functionName":"isIterable","ranges":[{"startOffset":2548,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"makeAsyncIterable","ranges":[{"startOffset":2873,"endOffset":3149,"count":0}],"isBlockCoverage":false},{"functionName":"fromReadable","ranges":[{"startOffset":3151,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"pump","ranges":[{"startOffset":3317,"endOffset":3794,"count":0}],"isBlockCoverage":false},{"functionName":"pipeline","ranges":[{"startOffset":3796,"endOffset":7602,"count":0}],"isBlockCoverage":false}]},{"scriptId":"80","url":"internal/streams/destroy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3954,"count":1}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":123,"endOffset":1394,"count":155},{"startOffset":227,"endOffset":241,"count":120},{"startOffset":243,"endOffset":264,"count":125},{"startOffset":266,"endOffset":343,"count":30},{"startOffset":302,"endOffset":321,"count":0},{"startOffset":343,"endOffset":356,"count":125},{"startOffset":356,"endOffset":576,"count":0},{"startOffset":576,"endOffset":735,"count":125},{"startOffset":735,"endOffset":764,"count":90},{"startOffset":764,"endOffset":832,"count":125}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":834,"endOffset":1374,"count":125},{"startOffset":858,"endOffset":1096,"count":0},{"startOffset":1109,"endOffset":1139,"count":90},{"startOffset":1217,"endOffset":1239,"count":0},{"startOffset":1254,"endOffset":1314,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorCloseNT","ranges":[{"startOffset":1396,"endOffset":1483,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":1485,"endOffset":1703,"count":125},{"startOffset":1633,"endOffset":1647,"count":90},{"startOffset":1672,"endOffset":1701,"count":35}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":1705,"endOffset":1992,"count":0}],"isBlockCoverage":false},{"functionName":"undestroy","ranges":[{"startOffset":1994,"endOffset":2557,"count":92}],"isBlockCoverage":true},{"functionName":"errorOrDestroy","ranges":[{"startOffset":2559,"endOffset":3458,"count":0}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":3460,"endOffset":3565,"count":0}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":3600,"endOffset":3876,"count":0}],"isBlockCoverage":false}]},{"scriptId":"81","url":"internal/streams/end-of-stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5791,"count":1}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":280,"endOffset":375,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":377,"endOffset":535,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":537,"endOffset":695,"count":0}],"isBlockCoverage":false},{"functionName":"isWritableFinished","ranges":[{"startOffset":697,"endOffset":934,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":936,"endOffset":953,"count":0}],"isBlockCoverage":false},{"functionName":"isReadableEnded","ranges":[{"startOffset":955,"endOffset":1188,"count":0}],"isBlockCoverage":false},{"functionName":"eos","ranges":[{"startOffset":1190,"endOffset":5767,"count":0}],"isBlockCoverage":false}]},{"scriptId":"82","url":"internal/streams/legacy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2081,"count":1}],"isBlockCoverage":false},{"functionName":"Stream","ranges":[{"startOffset":96,"endOffset":144,"count":219}],"isBlockCoverage":true},{"functionName":"Stream.pipe","ranges":[{"startOffset":258,"endOffset":2053,"count":0}],"isBlockCoverage":false}]},{"scriptId":"83","url":"internal/streams/readable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":40444,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1596,"endOffset":1621,"count":1}],"isBlockCoverage":true},{"functionName":"nop","ranges":[{"startOffset":2218,"endOffset":2235,"count":0}],"isBlockCoverage":false},{"functionName":"prependListener","ranges":[{"startOffset":2278,"endOffset":3085,"count":60},{"startOffset":2537,"endOffset":2900,"count":0},{"startOffset":2906,"endOffset":3083,"count":0}],"isBlockCoverage":true},{"functionName":"ReadableState","ranges":[{"startOffset":3087,"endOffset":6664,"count":127},{"startOffset":3486,"endOffset":3529,"count":0},{"startOffset":3729,"endOffset":3814,"count":92},{"startOffset":4062,"endOffset":4098,"count":0},{"startOffset":6476,"endOffset":6662,"count":0}],"isBlockCoverage":true},{"functionName":"Readable","ranges":[{"startOffset":6667,"endOffset":7237,"count":127},{"startOffset":6735,"endOffset":6764,"count":0},{"startOffset":7087,"endOffset":7113,"count":0},{"startOffset":7168,"endOffset":7200,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._destroy","ranges":[{"startOffset":7374,"endOffset":7406,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":7457,"endOffset":7495,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.push","ranges":[{"startOffset":7724,"endOffset":7810,"count":105}],"isBlockCoverage":true},{"functionName":"Readable.unshift","ranges":[{"startOffset":7906,"endOffset":7991,"count":0}],"isBlockCoverage":false},{"functionName":"readableAddChunk","ranges":[{"startOffset":7994,"endOffset":10247,"count":105},{"startOffset":8171,"endOffset":8986,"count":102},{"startOffset":8208,"endOffset":8672,"count":0},{"startOffset":8707,"endOffset":8735,"count":72},{"startOffset":8735,"endOffset":8982,"count":30},{"startOffset":8774,"endOffset":8851,"count":0},{"startOffset":8876,"endOffset":8982,"count":0},{"startOffset":8999,"endOffset":9037,"count":0},{"startOffset":9063,"endOffset":9126,"count":30},{"startOffset":9126,"endOffset":9963,"count":75},{"startOffset":9153,"endOffset":9183,"count":72},{"startOffset":9207,"endOffset":9373,"count":0},{"startOffset":9396,"endOffset":9466,"count":0},{"startOffset":9493,"endOffset":9520,"count":0},{"startOffset":9581,"endOffset":9593,"count":0},{"startOffset":9595,"endOffset":9802,"count":0},{"startOffset":9874,"endOffset":9963,"count":0},{"startOffset":10179,"endOffset":10244,"count":75},{"startOffset":10222,"endOffset":10243,"count":0}],"isBlockCoverage":true},{"functionName":"addChunk","ranges":[{"startOffset":10249,"endOffset":10949,"count":75},{"startOffset":10530,"endOffset":10576,"count":0},{"startOffset":10663,"endOffset":10915,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.isPaused","ranges":[{"startOffset":10981,"endOffset":11093,"count":30}],"isBlockCoverage":true},{"functionName":"Readable.setEncoding","ranges":[{"startOffset":11157,"endOffset":11801,"count":0}],"isBlockCoverage":false},{"functionName":"computeNewHighWaterMark","ranges":[{"startOffset":11862,"endOffset":12227,"count":0}],"isBlockCoverage":false},{"functionName":"howMuchToRead","ranges":[{"startOffset":12340,"endOffset":12734,"count":385},{"startOffset":12388,"endOffset":12426,"count":125},{"startOffset":12432,"endOffset":12441,"count":290},{"startOffset":12441,"endOffset":12470,"count":95},{"startOffset":12470,"endOffset":12479,"count":35},{"startOffset":12479,"endOffset":12652,"count":60},{"startOffset":12588,"endOffset":12623,"count":0},{"startOffset":12652,"endOffset":12727,"count":0},{"startOffset":12728,"endOffset":12731,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.read","ranges":[{"startOffset":12831,"endOffset":17061,"count":385},{"startOffset":13021,"endOffset":13039,"count":125},{"startOffset":13039,"endOffset":13106,"count":260},{"startOffset":13070,"endOffset":13106,"count":0},{"startOffset":13271,"endOffset":13320,"count":0},{"startOffset":13341,"endOffset":13371,"count":125},{"startOffset":13557,"endOffset":13584,"count":260},{"startOffset":13585,"endOffset":13718,"count":105},{"startOffset":13668,"endOffset":13694,"count":0},{"startOffset":13720,"endOffset":13905,"count":0},{"startOffset":14014,"endOffset":14028,"count":350},{"startOffset":14030,"endOffset":14105,"count":60},{"startOffset":14105,"endOffset":15381,"count":325},{"startOffset":15381,"endOffset":15422,"count":0},{"startOffset":15424,"endOffset":15692,"count":325},{"startOffset":15693,"endOffset":15711,"count":200},{"startOffset":15713,"endOffset":15777,"count":125},{"startOffset":15777,"endOffset":16310,"count":200},{"startOffset":16274,"endOffset":16306,"count":0},{"startOffset":16310,"endOffset":16340,"count":325},{"startOffset":16340,"endOffset":16365,"count":35},{"startOffset":16365,"endOffset":16388,"count":290},{"startOffset":16388,"endOffset":16488,"count":325},{"startOffset":16488,"endOffset":16651,"count":0},{"startOffset":16651,"endOffset":16995,"count":325},{"startOffset":16951,"endOffset":16965,"count":95},{"startOffset":16973,"endOffset":16991,"count":0},{"startOffset":16995,"endOffset":17021,"count":325},{"startOffset":17021,"endOffset":17044,"count":0},{"startOffset":17044,"endOffset":17060,"count":325}],"isBlockCoverage":true},{"functionName":"onEofChunk","ranges":[{"startOffset":17064,"endOffset":17884,"count":30},{"startOffset":17143,"endOffset":17150,"count":0},{"startOffset":17172,"endOffset":17346,"count":0},{"startOffset":17388,"endOffset":17590,"count":0}],"isBlockCoverage":true},{"functionName":"emitReadable","ranges":[{"startOffset":18085,"endOffset":18412,"count":0}],"isBlockCoverage":false},{"functionName":"emitReadable_","ranges":[{"startOffset":18414,"endOffset":19050,"count":30},{"startOffset":18969,"endOffset":18988,"count":0},{"startOffset":18989,"endOffset":19031,"count":0}],"isBlockCoverage":true},{"functionName":"maybeReadMore","ranges":[{"startOffset":19400,"endOffset":19556,"count":75}],"isBlockCoverage":true},{"functionName":"maybeReadMore_","ranges":[{"startOffset":19558,"endOffset":21350,"count":75},{"startOffset":21088,"endOffset":21138,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._read","ranges":[{"startOffset":21621,"endOffset":21687,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.pipe","ranges":[{"startOffset":21716,"endOffset":26193,"count":60},{"startOffset":21833,"endOffset":22029,"count":0},{"startOffset":22149,"endOffset":22174,"count":0},{"startOffset":22290,"endOffset":22298,"count":0},{"startOffset":22328,"endOffset":22352,"count":0},{"startOffset":26049,"endOffset":26100,"count":0},{"startOffset":26126,"endOffset":26175,"count":0}],"isBlockCoverage":true},{"functionName":"onunpipe","ranges":[{"startOffset":22422,"endOffset":22648,"count":0}],"isBlockCoverage":false},{"functionName":"onend","ranges":[{"startOffset":22652,"endOffset":22710,"count":30}],"isBlockCoverage":true},{"functionName":"cleanup","ranges":[{"startOffset":22755,"endOffset":23647,"count":0}],"isBlockCoverage":false},{"functionName":"pause","ranges":[{"startOffset":23651,"endOffset":24648,"count":0}],"isBlockCoverage":false},{"functionName":"ondata","ranges":[{"startOffset":24678,"endOffset":24838,"count":72},{"startOffset":24812,"endOffset":24834,"count":0}],"isBlockCoverage":true},{"functionName":"onerror","ranges":[{"startOffset":24960,"endOffset":25375,"count":0}],"isBlockCoverage":false},{"functionName":"onclose","ranges":[{"startOffset":25555,"endOffset":25638,"count":0}],"isBlockCoverage":false},{"functionName":"onfinish","ranges":[{"startOffset":25672,"endOffset":25777,"count":0}],"isBlockCoverage":false},{"functionName":"unpipe","ranges":[{"startOffset":25814,"endOffset":25880,"count":0}],"isBlockCoverage":false},{"functionName":"pipeOnDrain","ranges":[{"startOffset":26196,"endOffset":26870,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.unpipe","ranges":[{"startOffset":26901,"endOffset":27570,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.on","ranges":[{"startOffset":27696,"endOffset":28603,"count":1042},{"startOffset":27828,"endOffset":28160,"count":95},{"startOffset":28160,"endOffset":28586,"count":947},{"startOffset":28189,"endOffset":28586,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeListener","ranges":[{"startOffset":28698,"endOffset":29212,"count":334},{"startOffset":28809,"endOffset":29195,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeAllListeners","ranges":[{"startOffset":29315,"endOffset":29853,"count":0}],"isBlockCoverage":false},{"functionName":"updateReadableListening","ranges":[{"startOffset":29856,"endOffset":30366,"count":0}],"isBlockCoverage":false},{"functionName":"nReadingNextTick","ranges":[{"startOffset":30368,"endOffset":30456,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.resume","ranges":[{"startOffset":30610,"endOffset":30935,"count":95}],"isBlockCoverage":true},{"functionName":"resume","ranges":[{"startOffset":30938,"endOffset":31088,"count":95}],"isBlockCoverage":true},{"functionName":"resume_","ranges":[{"startOffset":31090,"endOffset":31341,"count":95},{"startOffset":31180,"endOffset":31205,"count":35},{"startOffset":31324,"endOffset":31339,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.pause","ranges":[{"startOffset":31370,"endOffset":31637,"count":0}],"isBlockCoverage":false},{"functionName":"flow","ranges":[{"startOffset":31640,"endOffset":31787,"count":125},{"startOffset":31784,"endOffset":31785,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.wrap","ranges":[{"startOffset":31971,"endOffset":33786,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":33831,"endOffset":34212,"count":0}],"isBlockCoverage":false},{"functionName":"createAsyncIterator","ranges":[{"startOffset":34215,"endOffset":35508,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":35706,"endOffset":36095,"count":60}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":36101,"endOffset":36231,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36297,"endOffset":36363,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36422,"endOffset":36504,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36564,"endOffset":36624,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36635,"endOffset":36744,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36798,"endOffset":36852,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36910,"endOffset":36998,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37054,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37188,"endOffset":37322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":37328,"endOffset":37617,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37670,"endOffset":37758,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37877,"endOffset":37922,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37980,"endOffset":38031,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":38037,"endOffset":38086,"count":0}],"isBlockCoverage":false},{"functionName":"fromList","ranges":[{"startOffset":38390,"endOffset":38952,"count":35},{"startOffset":38485,"endOffset":38951,"count":0}],"isBlockCoverage":true},{"functionName":"endReadable","ranges":[{"startOffset":38954,"endOffset":39175,"count":60}],"isBlockCoverage":true},{"functionName":"endReadableNT","ranges":[{"startOffset":39177,"endOffset":40109,"count":60},{"startOffset":39400,"endOffset":39421,"count":30},{"startOffset":39423,"endOffset":40107,"count":30},{"startOffset":39503,"endOffset":39536,"count":0},{"startOffset":39538,"endOffset":39599,"count":0},{"startOffset":39628,"endOffset":40103,"count":0}],"isBlockCoverage":true},{"functionName":"endWritableNT","ranges":[{"startOffset":40111,"endOffset":40278,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.from","ranges":[{"startOffset":40296,"endOffset":40442,"count":0}],"isBlockCoverage":false}]},{"scriptId":"84","url":"internal/streams/buffer_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3798,"count":1}],"isBlockCoverage":false},{"functionName":"BufferList","ranges":[{"startOffset":204,"endOffset":288,"count":127}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":292,"endOffset":479,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":483,"endOffset":641,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":645,"endOffset":872,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":876,"endOffset":944,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":948,"endOffset":1119,"count":0}],"isBlockCoverage":false},{"functionName":"concat","ranges":[{"startOffset":1123,"endOffset":1386,"count":0}],"isBlockCoverage":false},{"functionName":"consume","ranges":[{"startOffset":1470,"endOffset":1924,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":1928,"endOffset":1968,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":1972,"endOffset":2068,"count":0}],"isBlockCoverage":false},{"functionName":"_getString","ranges":[{"startOffset":2143,"endOffset":2738,"count":0}],"isBlockCoverage":false},{"functionName":"_getBuffer","ranges":[{"startOffset":2808,"endOffset":3518,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":3599,"endOffset":3794,"count":0}],"isBlockCoverage":false}]},{"scriptId":"85","url":"internal/streams/state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":881,"count":1}],"isBlockCoverage":false},{"functionName":"highWaterMarkFrom","ranges":[{"startOffset":142,"endOffset":309,"count":219},{"startOffset":240,"endOffset":263,"count":35},{"startOffset":264,"endOffset":306,"count":184},{"startOffset":300,"endOffset":306,"count":0}],"isBlockCoverage":true},{"functionName":"getDefaultHighWaterMark","ranges":[{"startOffset":311,"endOffset":397,"count":184},{"startOffset":378,"endOffset":382,"count":0}],"isBlockCoverage":true},{"functionName":"getHighWaterMark","ranges":[{"startOffset":399,"endOffset":811,"count":219},{"startOffset":546,"endOffset":737,"count":35},{"startOffset":590,"endOffset":706,"count":0},{"startOffset":737,"endOffset":810,"count":184}],"isBlockCoverage":true}]},{"scriptId":"86","url":"internal/streams/writable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":22800,"count":1}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":2223,"endOffset":2240,"count":75}],"isBlockCoverage":true},{"functionName":"WritableState","ranges":[{"startOffset":2242,"endOffset":6406,"count":92},{"startOffset":2637,"endOffset":2680,"count":0},{"startOffset":3231,"endOffset":3267,"count":0}],"isBlockCoverage":true},{"functionName":"resetBuffer","ranges":[{"startOffset":6408,"endOffset":6540,"count":96}],"isBlockCoverage":true},{"functionName":"getBuffer","ranges":[{"startOffset":6578,"endOffset":6652,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6729,"endOffset":6794,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":7121,"endOffset":7335,"count":0}],"isBlockCoverage":false},{"functionName":"realHasInstance","ranges":[{"startOffset":7371,"endOffset":7428,"count":0}],"isBlockCoverage":false},{"functionName":"Writable","ranges":[{"startOffset":7433,"endOffset":8605,"count":92},{"startOffset":8074,"endOffset":8114,"count":0},{"startOffset":8120,"endOffset":8149,"count":0},{"startOffset":8288,"endOffset":8316,"count":0},{"startOffset":8370,"endOffset":8400,"count":0},{"startOffset":8455,"endOffset":8487,"count":0},{"startOffset":8540,"endOffset":8568,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.pipe","ranges":[{"startOffset":8701,"endOffset":8769,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.write","ranges":[{"startOffset":8799,"endOffset":10008,"count":111},{"startOffset":8907,"endOffset":8969,"count":34},{"startOffset":8969,"endOffset":9089,"count":77},{"startOffset":9113,"endOffset":9158,"count":0},{"startOffset":9267,"endOffset":9351,"count":0},{"startOffset":9357,"endOffset":9660,"count":0},{"startOffset":9697,"endOffset":9746,"count":0},{"startOffset":9773,"endOffset":9823,"count":0},{"startOffset":9836,"endOffset":9927,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.cork","ranges":[{"startOffset":10037,"endOffset":10083,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.uncork","ranges":[{"startOffset":10114,"endOffset":10269,"count":0}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":10312,"endOffset":10623,"count":0}],"isBlockCoverage":false},{"functionName":"writeOrBuffer","ranges":[{"startOffset":10813,"endOffset":11804,"count":111},{"startOffset":10911,"endOffset":10914,"count":0},{"startOffset":11133,"endOffset":11156,"count":0},{"startOffset":11178,"endOffset":11193,"count":105},{"startOffset":11194,"endOffset":11210,"count":105},{"startOffset":11212,"endOffset":11444,"count":6},{"startOffset":11295,"endOffset":11319,"count":4},{"startOffset":11321,"endOffset":11360,"count":4},{"startOffset":11404,"endOffset":11440,"count":0},{"startOffset":11444,"endOffset":11635,"count":105}],"isBlockCoverage":true},{"functionName":"doWrite","ranges":[{"startOffset":11806,"endOffset":12184,"count":4},{"startOffset":11992,"endOffset":12041,"count":0},{"startOffset":12065,"endOffset":12160,"count":2}],"isBlockCoverage":true},{"functionName":"onwriteError","ranges":[{"startOffset":12186,"endOffset":12606,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":12608,"endOffset":14202,"count":109},{"startOffset":12766,"endOffset":12840,"count":0},{"startOffset":12958,"endOffset":13469,"count":0},{"startOffset":13530,"endOffset":13571,"count":4},{"startOffset":13587,"endOffset":14143,"count":37},{"startOffset":13886,"endOffset":13933,"count":31},{"startOffset":13935,"endOffset":13986,"count":29},{"startOffset":13986,"endOffset":14137,"count":8},{"startOffset":14143,"endOffset":14196,"count":72}],"isBlockCoverage":true},{"functionName":"afterWriteTick","ranges":[{"startOffset":14204,"endOffset":14343,"count":8}],"isBlockCoverage":true},{"functionName":"afterWrite","ranges":[{"startOffset":14345,"endOffset":14755,"count":80},{"startOffset":14470,"endOffset":14492,"count":76},{"startOffset":14511,"endOffset":14571,"count":0},{"startOffset":14595,"endOffset":14633,"count":109},{"startOffset":14658,"endOffset":14722,"count":0}],"isBlockCoverage":true},{"functionName":"errorBuffer","ranges":[{"startOffset":14827,"endOffset":15148,"count":0}],"isBlockCoverage":false},{"functionName":"clearBuffer","ranges":[{"startOffset":15214,"endOffset":16647,"count":4},{"startOffset":15317,"endOffset":15334,"count":0},{"startOffset":15475,"endOffset":15492,"count":0},{"startOffset":15578,"endOffset":15595,"count":2},{"startOffset":15597,"endOffset":16139,"count":2},{"startOffset":15684,"endOffset":15795,"count":0},{"startOffset":15977,"endOffset":15996,"count":0},{"startOffset":16139,"endOffset":16611,"count":2},{"startOffset":16270,"endOffset":16273,"count":0},{"startOffset":16392,"endOffset":16409,"count":0},{"startOffset":16477,"endOffset":16607,"count":0}],"isBlockCoverage":true},{"functionName":"callback","ranges":[{"startOffset":15686,"endOffset":15795,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._write","ranges":[{"startOffset":16677,"endOffset":16846,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.end","ranges":[{"startOffset":16910,"endOffset":18094,"count":30},{"startOffset":17015,"endOffset":17075,"count":0},{"startOffset":17117,"endOffset":17162,"count":0},{"startOffset":17213,"endOffset":17241,"count":0},{"startOffset":17290,"endOffset":17336,"count":0},{"startOffset":17780,"endOffset":17936,"count":0},{"startOffset":17970,"endOffset":18076,"count":0}],"isBlockCoverage":true},{"functionName":"needFinish","ranges":[{"startOffset":18097,"endOffset":18310,"count":140},{"startOffset":18149,"endOffset":18180,"count":60},{"startOffset":18181,"endOffset":18208,"count":60},{"startOffset":18209,"endOffset":18249,"count":60},{"startOffset":18250,"endOffset":18278,"count":60},{"startOffset":18279,"endOffset":18306,"count":60}],"isBlockCoverage":true},{"functionName":"callFinal","ranges":[{"startOffset":18312,"endOffset":18572,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":18364,"endOffset":18568,"count":30},{"startOffset":18411,"endOffset":18453,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":18574,"endOffset":18922,"count":60},{"startOffset":18635,"endOffset":18656,"count":30},{"startOffset":18658,"endOffset":18920,"count":30},{"startOffset":18839,"endOffset":18916,"count":0}],"isBlockCoverage":true},{"functionName":"finishMaybe","ranges":[{"startOffset":18924,"endOffset":19251,"count":140},{"startOffset":19014,"endOffset":19234,"count":60},{"startOffset":19077,"endOffset":19230,"count":30},{"startOffset":19120,"endOffset":19178,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":19253,"endOffset":19871,"count":30},{"startOffset":19337,"endOffset":19344,"count":0},{"startOffset":19422,"endOffset":19869,"count":0}],"isBlockCoverage":true},{"functionName":"onFinished","ranges":[{"startOffset":19937,"endOffset":20401,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20468,"endOffset":20555,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":20561,"endOffset":20743,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20768,"endOffset":21160,"count":120},{"startOffset":21142,"endOffset":21153,"count":90}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":21166,"endOffset":21300,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":21333,"endOffset":21419,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21454,"endOffset":21542,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21573,"endOffset":21655,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21685,"endOffset":21769,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21803,"endOffset":21961,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21999,"endOffset":22083,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22114,"endOffset":22194,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22225,"endOffset":22302,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.destroy","ranges":[{"startOffset":22378,"endOffset":22589,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._destroy","ranges":[{"startOffset":22677,"endOffset":22709,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.","ranges":[{"startOffset":22760,"endOffset":22798,"count":0}],"isBlockCoverage":false}]},{"scriptId":"87","url":"internal/streams/duplex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3759,"count":1}],"isBlockCoverage":false},{"functionName":"Duplex","ranges":[{"startOffset":1936,"endOffset":2360,"count":92},{"startOffset":2000,"endOffset":2027,"count":0},{"startOffset":2182,"endOffset":2204,"count":2},{"startOffset":2248,"endOffset":2270,"count":0},{"startOffset":2313,"endOffset":2354,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3271,"endOffset":3483,"count":434},{"startOffset":3369,"endOffset":3400,"count":0},{"startOffset":3444,"endOffset":3476,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3489,"endOffset":3750,"count":0}],"isBlockCoverage":false}]},{"scriptId":"88","url":"internal/streams/transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8217,"count":1}],"isBlockCoverage":false},{"functionName":"afterTransform","ranges":[{"startOffset":4032,"endOffset":4550,"count":0}],"isBlockCoverage":false},{"functionName":"Transform","ranges":[{"startOffset":4553,"endOffset":5382,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":5384,"endOffset":5596,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5691,"endOffset":5741,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5838,"endOffset":5890,"count":0}],"isBlockCoverage":false},{"functionName":"Transform.push","ranges":[{"startOffset":5988,"endOffset":6124,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._transform","ranges":[{"startOffset":6607,"endOffset":6696,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._write","ranges":[{"startOffset":6728,"endOffset":7067,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._read","ranges":[{"startOffset":7239,"endOffset":7613,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._destroy","ranges":[{"startOffset":7648,"endOffset":7745,"count":0}],"isBlockCoverage":false},{"functionName":"done","ranges":[{"startOffset":7749,"endOffset":8216,"count":0}],"isBlockCoverage":false}]},{"scriptId":"89","url":"internal/streams/passthrough.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1762,"count":1}],"isBlockCoverage":false},{"functionName":"PassThrough","ranges":[{"startOffset":1529,"endOffset":1671,"count":0}],"isBlockCoverage":false},{"functionName":"PassThrough._transform","ranges":[{"startOffset":1708,"endOffset":1760,"count":0}],"isBlockCoverage":false}]},{"scriptId":"90","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1},{"startOffset":473,"endOffset":550,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":508,"endOffset":546,"count":0}],"isBlockCoverage":false}]},{"scriptId":"92","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/wrapper.mjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":323,"count":1}],"isBlockCoverage":true}]},{"scriptId":"93","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4076,"count":1}],"isBlockCoverage":true},{"functionName":"persistNode","ranges":[{"startOffset":284,"endOffset":618,"count":27}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":620,"endOffset":2047,"count":181},{"startOffset":671,"endOffset":735,"count":0},{"startOffset":927,"endOffset":944,"count":154},{"startOffset":944,"endOffset":2046,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":856,"endOffset":904,"count":504}],"isBlockCoverage":true},{"functionName":"handleError","ranges":[{"startOffset":1172,"endOffset":1445,"count":27},{"startOffset":1369,"endOffset":1444,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1601,"endOffset":1639,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1669,"endOffset":1760,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1844,"endOffset":1904,"count":50}],"isBlockCoverage":true},{"functionName":"node.close","ranges":[{"startOffset":1923,"endOffset":1991,"count":27}],"isBlockCoverage":true},{"functionName":"canhazdb","ranges":[{"startOffset":2049,"endOffset":4049,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2491,"endOffset":2577,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2673,"endOffset":2727,"count":0}],"isBlockCoverage":false},{"functionName":"syncNodesInfo","ranges":[{"startOffset":2733,"endOffset":3334,"count":7},{"startOffset":2785,"endOffset":2806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2834,"endOffset":3261,"count":27},{"startOffset":3148,"endOffset":3173,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2977,"endOffset":3057,"count":127}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3373,"endOffset":3514,"count":732}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3428,"endOffset":3450,"count":3272}],"isBlockCoverage":true},{"functionName":"context.close","ranges":[{"startOffset":3536,"endOffset":3813,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3700,"endOffset":3742,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3980,"endOffset":4026,"count":17}],"isBlockCoverage":true}]},{"scriptId":"94","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/prepareOptions.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1328,"count":1}],"isBlockCoverage":true},{"functionName":"prepareOptions","ranges":[{"startOffset":91,"endOffset":1295,"count":7},{"startOffset":201,"endOffset":206,"count":0},{"startOffset":254,"endOffset":287,"count":0},{"startOffset":288,"endOffset":304,"count":0},{"startOffset":378,"endOffset":622,"count":0},{"startOffset":763,"endOffset":1152,"count":0},{"startOffset":1205,"endOffset":1273,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":575,"endOffset":616,"count":0}],"isBlockCoverage":false}]},{"scriptId":"95","url":"dns.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9368,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":2019,"endOffset":2220,"count":30},{"startOffset":2066,"endOffset":2146,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupall","ranges":[{"startOffset":2223,"endOffset":2587,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2658,"endOffset":4319,"count":30},{"startOffset":2854,"endOffset":2927,"count":0},{"startOffset":2968,"endOffset":3013,"count":0},{"startOffset":3055,"endOffset":3106,"count":0},{"startOffset":3339,"endOffset":3378,"count":0},{"startOffset":3450,"endOffset":3658,"count":0},{"startOffset":3721,"endOffset":3937,"count":0},{"startOffset":4079,"endOffset":4092,"count":0},{"startOffset":4207,"endOffset":4303,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupservice","ranges":[{"startOffset":4448,"endOffset":4629,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":4632,"endOffset":5263,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":5401,"endOffset":5667,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":5669,"endOffset":6415,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":5704,"endOffset":6334,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":7404,"endOffset":7865,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolverSetServers","ranges":[{"startOffset":7867,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9174,"endOffset":9359,"count":2},{"startOffset":9211,"endOffset":9330,"count":1}],"isBlockCoverage":true}]},{"scriptId":"96","url":"internal/net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1694,"count":1}],"isBlockCoverage":false},{"functionName":"isIPv4","ranges":[{"startOffset":974,"endOffset":1022,"count":150}],"isBlockCoverage":true},{"functionName":"isIPv6","ranges":[{"startOffset":1024,"endOffset":1072,"count":90}],"isBlockCoverage":true},{"functionName":"isIP","ranges":[{"startOffset":1074,"endOffset":1160,"count":150},{"startOffset":1110,"endOffset":1119,"count":60},{"startOffset":1119,"endOffset":1137,"count":90},{"startOffset":1137,"endOffset":1146,"count":0},{"startOffset":1146,"endOffset":1159,"count":90}],"isBlockCoverage":true},{"functionName":"makeSyncWrite","ranges":[{"startOffset":1162,"endOffset":1576,"count":0}],"isBlockCoverage":false}]},{"scriptId":"97","url":"internal/dns/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4700,"count":1}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":610,"endOffset":770,"count":1}],"isBlockCoverage":true},{"functionName":"Resolver","ranges":[{"startOffset":848,"endOffset":977,"count":1}],"isBlockCoverage":true},{"functionName":"cancel","ranges":[{"startOffset":981,"endOffset":1022,"count":0}],"isBlockCoverage":false},{"functionName":"getServers","ranges":[{"startOffset":1026,"endOffset":1273,"count":0}],"isBlockCoverage":false},{"functionName":"setServers","ranges":[{"startOffset":1277,"endOffset":3072,"count":0}],"isBlockCoverage":false},{"functionName":"setLocalAddress","ranges":[{"startOffset":3076,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultResolver","ranges":[{"startOffset":3703,"endOffset":3762,"count":1}],"isBlockCoverage":true},{"functionName":"setDefaultResolver","ranges":[{"startOffset":3764,"endOffset":3835,"count":0}],"isBlockCoverage":false},{"functionName":"bindDefaultResolver","ranges":[{"startOffset":3837,"endOffset":3978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3907,"endOffset":3974,"count":30}],"isBlockCoverage":true},{"functionName":"validateHints","ranges":[{"startOffset":3980,"endOffset":4135,"count":30},{"startOffset":4075,"endOffset":4133,"count":0}],"isBlockCoverage":true},{"functionName":"emitInvalidHostnameWarning","ranges":[{"startOffset":4181,"endOffset":4531,"count":0}],"isBlockCoverage":false}]},{"scriptId":"98","url":"internal/dns/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6786,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":733,"endOffset":982,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupall","ranges":[{"startOffset":984,"endOffset":1359,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupPromise","ranges":[{"startOffset":1361,"endOffset":2205,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2207,"endOffset":2864,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupservice","ranges":[{"startOffset":2867,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupServicePromise","ranges":[{"startOffset":3052,"endOffset":3463,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":3465,"endOffset":3749,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":3752,"endOffset":4019,"count":0}],"isBlockCoverage":false},{"functionName":"createResolverPromise","ranges":[{"startOffset":4021,"endOffset":4489,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":4491,"endOffset":4786,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":4526,"endOffset":4704,"count":0}],"isBlockCoverage":false},{"functionName":"Resolver","ranges":[{"startOffset":4905,"endOffset":5034,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":6261,"endOffset":6671,"count":0}],"isBlockCoverage":false}]},{"scriptId":"99","url":"os.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8688,"count":1}],"isBlockCoverage":false},{"functionName":"getCheckedFunction","ranges":[{"startOffset":1911,"endOffset":2152,"count":3}],"isBlockCoverage":true},{"functionName":"checkError","ranges":[{"startOffset":1970,"endOffset":2148,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease","ranges":[{"startOffset":2459,"endOffset":2472,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType","ranges":[{"startOffset":2521,"endOffset":2531,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion","ranges":[{"startOffset":2583,"endOffset":2596,"count":0}],"isBlockCoverage":false},{"functionName":"getFreeMem.","ranges":[{"startOffset":2631,"endOffset":2649,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname.","ranges":[{"startOffset":2684,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion.","ranges":[{"startOffset":2739,"endOffset":2759,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType.","ranges":[{"startOffset":2792,"endOffset":2809,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease.","ranges":[{"startOffset":2845,"endOffset":2865,"count":0}],"isBlockCoverage":false},{"functionName":"getHomeDirectory.","ranges":[{"startOffset":2905,"endOffset":2929,"count":0}],"isBlockCoverage":false},{"functionName":"getTotalMem.","ranges":[{"startOffset":2964,"endOffset":2983,"count":0}],"isBlockCoverage":false},{"functionName":"getUptime.","ranges":[{"startOffset":3016,"endOffset":3033,"count":0}],"isBlockCoverage":false},{"functionName":"loadavg","ranges":[{"startOffset":3171,"endOffset":3271,"count":0}],"isBlockCoverage":false},{"functionName":"cpus","ranges":[{"startOffset":3546,"endOffset":3958,"count":0}],"isBlockCoverage":false},{"functionName":"arch","ranges":[{"startOffset":3989,"endOffset":4031,"count":0}],"isBlockCoverage":false},{"functionName":"arch.","ranges":[{"startOffset":4058,"endOffset":4076,"count":0}],"isBlockCoverage":false},{"functionName":"platform","ranges":[{"startOffset":4108,"endOffset":4158,"count":0}],"isBlockCoverage":false},{"functionName":"platform.","ranges":[{"startOffset":4189,"endOffset":4211,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir","ranges":[{"startOffset":4243,"endOffset":4760,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir.","ranges":[{"startOffset":4789,"endOffset":4803,"count":0}],"isBlockCoverage":false},{"functionName":"endianness","ranges":[{"startOffset":4840,"endOffset":4887,"count":0}],"isBlockCoverage":false},{"functionName":"endianness.","ranges":[{"startOffset":4920,"endOffset":4937,"count":0}],"isBlockCoverage":false},{"functionName":"countBinaryOnes","ranges":[{"startOffset":5025,"endOffset":5278,"count":0}],"isBlockCoverage":false},{"functionName":"getCIDR","ranges":[{"startOffset":5280,"endOffset":6000,"count":0}],"isBlockCoverage":false},{"functionName":"networkInterfaces","ranges":[{"startOffset":6204,"endOffset":6881,"count":0}],"isBlockCoverage":false},{"functionName":"setPriority","ranges":[{"startOffset":6961,"endOffset":7250,"count":0}],"isBlockCoverage":false},{"functionName":"getPriority","ranges":[{"startOffset":7304,"endOffset":7559,"count":0}],"isBlockCoverage":false},{"functionName":"userInfo","ranges":[{"startOffset":7869,"endOffset":8095,"count":0}],"isBlockCoverage":false}]},{"scriptId":"100","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3290,"count":1}],"isBlockCoverage":true},{"functionName":"formatColor","ranges":[{"startOffset":614,"endOffset":938,"count":0}],"isBlockCoverage":false},{"functionName":"padStartAll","ranges":[{"startOffset":940,"endOffset":1063,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":1090,"endOffset":2704,"count":10}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1152,"endOffset":2701,"count":34},{"startOffset":1249,"endOffset":1270,"count":7},{"startOffset":1270,"endOffset":1321,"count":27},{"startOffset":1321,"endOffset":2487,"count":0},{"startOffset":2487,"endOffset":2602,"count":27},{"startOffset":2609,"endOffset":2696,"count":0}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":2706,"endOffset":3035,"count":2}],"isBlockCoverage":true},{"functionName":"log.setLogger","ranges":[{"startOffset":3053,"endOffset":3091,"count":0}],"isBlockCoverage":false},{"functionName":"log.setLogLevel","ranges":[{"startOffset":3112,"endOffset":3213,"count":1}],"isBlockCoverage":true}]},{"scriptId":"101","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/createHandler.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1181,"count":1}],"isBlockCoverage":true},{"functionName":"createHandler","ranges":[{"startOffset":193,"endOffset":1149,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":319,"endOffset":1145,"count":37},{"startOffset":669,"endOffset":747,"count":0},{"startOffset":793,"endOffset":805,"count":33},{"startOffset":806,"endOffset":818,"count":4},{"startOffset":919,"endOffset":997,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1075,"endOffset":1139,"count":0}],"isBlockCoverage":false}]},{"scriptId":"102","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/waitUntil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":63,"endOffset":190,"count":732},{"startOffset":121,"endOffset":179,"count":725},{"startOffset":179,"endOffset":189,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":138,"endOffset":161,"count":725}],"isBlockCoverage":true}]},{"scriptId":"103","url":"util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8146,"count":1}],"isBlockCoverage":false},{"functionName":"isBoolean","ranges":[{"startOffset":2097,"endOffset":2159,"count":0}],"isBlockCoverage":false},{"functionName":"isNull","ranges":[{"startOffset":2161,"endOffset":2208,"count":0}],"isBlockCoverage":false},{"functionName":"isNullOrUndefined","ranges":[{"startOffset":2210,"endOffset":2289,"count":0}],"isBlockCoverage":false},{"functionName":"isNumber","ranges":[{"startOffset":2291,"endOffset":2351,"count":0}],"isBlockCoverage":false},{"functionName":"isString","ranges":[{"startOffset":2353,"endOffset":2413,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbol","ranges":[{"startOffset":2415,"endOffset":2475,"count":0}],"isBlockCoverage":false},{"functionName":"isUndefined","ranges":[{"startOffset":2477,"endOffset":2534,"count":0}],"isBlockCoverage":false},{"functionName":"isObject","ranges":[{"startOffset":2536,"endOffset":2612,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":2614,"endOffset":2717,"count":0}],"isBlockCoverage":false},{"functionName":"isFunction","ranges":[{"startOffset":2719,"endOffset":2783,"count":0}],"isBlockCoverage":false},{"functionName":"isPrimitive","ranges":[{"startOffset":2785,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":2906,"endOffset":2965,"count":0}],"isBlockCoverage":false},{"functionName":"timestamp","ranges":[{"startOffset":3104,"endOffset":3334,"count":0}],"isBlockCoverage":false},{"functionName":"log","ranges":[{"startOffset":3420,"endOffset":3573,"count":0}],"isBlockCoverage":false},{"functionName":"inherits","ranges":[{"startOffset":4309,"endOffset":4925,"count":0}],"isBlockCoverage":false},{"functionName":"_extend","ranges":[{"startOffset":4927,"endOffset":5215,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5263,"endOffset":5688,"count":0}],"isBlockCoverage":false},{"functionName":"callbackify","ranges":[{"startOffset":5692,"endOffset":7073,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7075,"endOffset":7291,"count":0}],"isBlockCoverage":false},{"functionName":"isDeepStrictEqual","ranges":[{"startOffset":7692,"endOffset":7897,"count":0}],"isBlockCoverage":false}]},{"scriptId":"104","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/replaceErrors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":283,"count":1}],"isBlockCoverage":true},{"functionName":"replaceErrors","ranges":[{"startOffset":0,"endOffset":251,"count":216},{"startOffset":68,"endOffset":232,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":139,"endOffset":207,"count":0}],"isBlockCoverage":false}]},{"scriptId":"105","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":307,"endOffset":546,"count":37},{"startOffset":434,"endOffset":451,"count":0}],"isBlockCoverage":true}]},{"scriptId":"106","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/formatDate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":146,"count":1}],"isBlockCoverage":true},{"functionName":"formatDate","ranges":[{"startOffset":0,"endOffset":117,"count":34}],"isBlockCoverage":true}]},{"scriptId":"107","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1239,"count":1}],"isBlockCoverage":true},{"functionName":"createTest","ranges":[{"startOffset":131,"endOffset":187,"count":3}],"isBlockCoverage":true},{"functionName":"createTest.skip","ranges":[{"startOffset":206,"endOffset":270,"count":0}],"isBlockCoverage":false},{"functionName":"createTest.only","ranges":[{"startOffset":290,"endOffset":354,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":444,"endOffset":1236,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":513,"endOffset":710,"count":3},{"startOffset":548,"endOffset":570,"count":0},{"startOffset":572,"endOffset":603,"count":0},{"startOffset":634,"endOffset":665,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":800,"endOffset":1232,"count":1},{"startOffset":895,"endOffset":935,"count":0},{"startOffset":982,"endOffset":1078,"count":0},{"startOffset":1115,"endOffset":1228,"count":0}],"isBlockCoverage":true}]},{"scriptId":"108","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/colorette/index.cjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2168,"count":1}],"isBlockCoverage":true},{"functionName":"raw","ranges":[{"startOffset":255,"endOffset":468,"count":41}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":299,"endOffset":468,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":483,"endOffset":626,"count":39}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":692,"endOffset":705,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":714,"endOffset":742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"109","url":"tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5057,"count":1}],"isBlockCoverage":false},{"functionName":"isatty","ranges":[{"startOffset":1534,"endOffset":1640,"count":2}],"isBlockCoverage":true},{"functionName":"ReadStream","ranges":[{"startOffset":1642,"endOffset":2126,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.setRawMode","ranges":[{"startOffset":2275,"endOffset":2491,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":2494,"endOffset":3460,"count":2},{"startOffset":2563,"endOffset":2590,"count":0},{"startOffset":2627,"endOffset":2656,"count":0},{"startOffset":2745,"endOffset":2790,"count":0}],"isBlockCoverage":true},{"functionName":"WriteStream._refreshSize","ranges":[{"startOffset":3751,"endOffset":4179,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.cursorTo","ranges":[{"startOffset":4235,"endOffset":4375,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.moveCursor","ranges":[{"startOffset":4412,"endOffset":4558,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearLine","ranges":[{"startOffset":4594,"endOffset":4733,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearScreenDown","ranges":[{"startOffset":4775,"endOffset":4910,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.getWindowSize","ranges":[{"startOffset":4950,"endOffset":5000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"110","url":"net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47106,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1448,"endOffset":1473,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3388,"endOffset":3406,"count":0}],"isBlockCoverage":false},{"functionName":"getFlags","ranges":[{"startOffset":3408,"endOffset":3502,"count":7},{"startOffset":3465,"endOffset":3495,"count":0}],"isBlockCoverage":true},{"functionName":"createHandle","ranges":[{"startOffset":3504,"endOffset":3885,"count":0}],"isBlockCoverage":false},{"functionName":"getNewAsyncId","ranges":[{"startOffset":3888,"endOffset":4026,"count":191},{"startOffset":3983,"endOffset":4001,"count":0}],"isBlockCoverage":true},{"functionName":"isPipeName","ranges":[{"startOffset":4029,"endOffset":4112,"count":7},{"startOffset":4085,"endOffset":4109,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":4114,"endOffset":4218,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":4441,"endOffset":4732,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeArgs","ranges":[{"startOffset":5227,"endOffset":5953,"count":67},{"startOffset":5295,"endOffset":5376,"count":0},{"startOffset":5453,"endOffset":5469,"count":60},{"startOffset":5471,"endOffset":5524,"count":60},{"startOffset":5524,"endOffset":5772,"count":7},{"startOffset":5552,"endOffset":5607,"count":0},{"startOffset":5699,"endOffset":5729,"count":0},{"startOffset":5731,"endOffset":5768,"count":0},{"startOffset":5846,"endOffset":5868,"count":7},{"startOffset":5868,"endOffset":5900,"count":60}],"isBlockCoverage":true},{"functionName":"initSocketHandle","ranges":[{"startOffset":6025,"endOffset":6628,"count":92},{"startOffset":6381,"endOffset":6622,"count":0}],"isBlockCoverage":true},{"functionName":"Socket","ranges":[{"startOffset":6763,"endOffset":10585,"count":92},{"startOffset":6823,"endOffset":6850,"count":0},{"startOffset":7400,"endOffset":7426,"count":0},{"startOffset":8078,"endOffset":9811,"count":0},{"startOffset":10167,"endOffset":10432,"count":90},{"startOffset":10200,"endOffset":10369,"count":0},{"startOffset":10401,"endOffset":10428,"count":30}],"isBlockCoverage":true},{"functionName":"_unrefTimer","ranges":[{"startOffset":10758,"endOffset":10888,"count":373},{"startOffset":10831,"endOffset":10886,"count":512},{"startOffset":10860,"endOffset":10882,"count":139}],"isBlockCoverage":true},{"functionName":"Socket._final","ranges":[{"startOffset":11008,"endOffset":11656,"count":30},{"startOffset":11122,"endOffset":11223,"count":0},{"startOffset":11250,"endOffset":11262,"count":0},{"startOffset":11540,"endOffset":11574,"count":0},{"startOffset":11601,"endOffset":11654,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11196,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"afterShutdown","ranges":[{"startOffset":11660,"endOffset":12039,"count":30},{"startOffset":11913,"endOffset":11920,"count":0},{"startOffset":11943,"endOffset":11964,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterFIN","ranges":[{"startOffset":12246,"endOffset":12702,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._onTimeout","ranges":[{"startOffset":12784,"endOffset":13288,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setNoDelay","ranges":[{"startOffset":13322,"endOffset":13771,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setKeepAlive","ranges":[{"startOffset":13807,"endOffset":14054,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":14085,"endOffset":14129,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14196,"endOffset":14240,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14300,"endOffset":14356,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14447,"endOffset":14762,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14831,"endOffset":14911,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14979,"endOffset":15024,"count":174}],"isBlockCoverage":true},{"functionName":"tryReadStart","ranges":[{"startOffset":15031,"endOffset":15277,"count":60},{"startOffset":15231,"endOffset":15275,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._read","ranges":[{"startOffset":15369,"endOffset":15598,"count":192},{"startOffset":15424,"endOffset":15440,"count":162},{"startOffset":15442,"endOffset":15534,"count":30},{"startOffset":15534,"endOffset":15596,"count":162},{"startOffset":15567,"endOffset":15596,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15509,"endOffset":15528,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.end","ranges":[{"startOffset":15625,"endOffset":15777,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.pause","ranges":[{"startOffset":15806,"endOffset":16140,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.resume","ranges":[{"startOffset":16170,"endOffset":16354,"count":60},{"startOffset":16203,"endOffset":16222,"count":0},{"startOffset":16223,"endOffset":16238,"count":0},{"startOffset":16239,"endOffset":16269,"count":0},{"startOffset":16271,"endOffset":16300,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.read","ranges":[{"startOffset":16382,"endOffset":16568,"count":312},{"startOffset":16416,"endOffset":16435,"count":0},{"startOffset":16436,"endOffset":16451,"count":0},{"startOffset":16452,"endOffset":16482,"count":0},{"startOffset":16484,"endOffset":16513,"count":0}],"isBlockCoverage":true},{"functionName":"onReadableStreamEnd","ranges":[{"startOffset":16615,"endOffset":16900,"count":30},{"startOffset":16749,"endOffset":16806,"count":0},{"startOffset":16810,"endOffset":16898,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.destroySoon","ranges":[{"startOffset":16934,"endOffset":17081,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._destroy","ranges":[{"startOffset":17113,"endOffset":18067,"count":90},{"startOffset":17236,"endOffset":17272,"count":120},{"startOffset":17410,"endOffset":17416,"count":0},{"startOffset":17817,"endOffset":17888,"count":0},{"startOffset":17910,"endOffset":18065,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17629,"endOffset":17708,"count":90}],"isBlockCoverage":true},{"functionName":"Socket._getpeername","ranges":[{"startOffset":18102,"endOffset":18393,"count":0}],"isBlockCoverage":false},{"functionName":"protoGetter","ranges":[{"startOffset":18396,"endOffset":18556,"count":8}],"isBlockCoverage":true},{"functionName":"bytesRead","ranges":[{"startOffset":18583,"endOffset":18674,"count":0}],"isBlockCoverage":false},{"functionName":"remoteAddress","ranges":[{"startOffset":18707,"endOffset":18773,"count":0}],"isBlockCoverage":false},{"functionName":"remoteFamily","ranges":[{"startOffset":18805,"endOffset":18869,"count":0}],"isBlockCoverage":false},{"functionName":"remotePort","ranges":[{"startOffset":18899,"endOffset":18959,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._getsockname","ranges":[{"startOffset":18996,"endOffset":19281,"count":0}],"isBlockCoverage":false},{"functionName":"localAddress","ranges":[{"startOffset":19313,"endOffset":19378,"count":0}],"isBlockCoverage":false},{"functionName":"localPort","ranges":[{"startOffset":19408,"endOffset":19467,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.","ranges":[{"startOffset":19509,"endOffset":19556,"count":72}],"isBlockCoverage":true},{"functionName":"Socket._writeGeneric","ranges":[{"startOffset":19592,"endOffset":20353,"count":109},{"startOffset":19814,"endOffset":20007,"count":0},{"startOffset":20088,"endOffset":20144,"count":0},{"startOffset":20198,"endOffset":20234,"count":2},{"startOffset":20234,"endOffset":20291,"count":107},{"startOffset":20313,"endOffset":20351,"count":72}],"isBlockCoverage":true},{"functionName":"connect","ranges":[{"startOffset":19909,"endOffset":19989,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._writev","ranges":[{"startOffset":20384,"endOffset":20452,"count":2}],"isBlockCoverage":true},{"functionName":"Socket._write","ranges":[{"startOffset":20482,"endOffset":20563,"count":107}],"isBlockCoverage":true},{"functionName":"_bytesDispatched","ranges":[{"startOffset":20756,"endOffset":20860,"count":0}],"isBlockCoverage":false},{"functionName":"bytesWritten","ranges":[{"startOffset":20892,"endOffset":21821,"count":0}],"isBlockCoverage":false},{"functionName":"checkBindError","ranges":[{"startOffset":21826,"endOffset":22625,"count":0}],"isBlockCoverage":false},{"functionName":"internalConnect","ranges":[{"startOffset":22628,"endOffset":24333,"count":30},{"startOffset":22883,"endOffset":23509,"count":0},{"startOffset":23829,"endOffset":23893,"count":0},{"startOffset":23897,"endOffset":24070,"count":0},{"startOffset":24083,"endOffset":24331,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.connect","ranges":[{"startOffset":24363,"endOffset":25667,"count":30},{"startOffset":24707,"endOffset":24739,"count":0},{"startOffset":24741,"endOffset":24772,"count":0},{"startOffset":24933,"endOffset":24969,"count":0},{"startOffset":24993,"endOffset":25077,"count":0},{"startOffset":25181,"endOffset":25315,"count":0},{"startOffset":25459,"endOffset":25602,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndConnect","ranges":[{"startOffset":25671,"endOffset":28698,"count":30},{"startOffset":25789,"endOffset":25803,"count":0},{"startOffset":25851,"endOffset":25873,"count":0},{"startOffset":25875,"endOffset":25932,"count":0},{"startOffset":25950,"endOffset":25982,"count":0},{"startOffset":25984,"endOffset":26067,"count":0},{"startOffset":26139,"endOffset":26166,"count":0},{"startOffset":26168,"endOffset":26294,"count":0},{"startOffset":26438,"endOffset":26742,"count":0},{"startOffset":26765,"endOffset":26804,"count":0},{"startOffset":26810,"endOffset":26922,"count":0},{"startOffset":26950,"endOffset":26971,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":26512,"endOffset":26724,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":27405,"endOffset":28694,"count":30}],"isBlockCoverage":true},{"functionName":"emitLookup","ranges":[{"startOffset":27444,"endOffset":28688,"count":30},{"startOffset":27732,"endOffset":27739,"count":0},{"startOffset":27756,"endOffset":28051,"count":0},{"startOffset":28072,"endOffset":28180,"count":0},{"startOffset":28208,"endOffset":28228,"count":0},{"startOffset":28230,"endOffset":28469,"count":0}],"isBlockCoverage":true},{"functionName":"connectErrorNT","ranges":[{"startOffset":28701,"endOffset":28760,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":28786,"endOffset":28973,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":29002,"endOffset":29195,"count":0}],"isBlockCoverage":false},{"functionName":"afterConnect","ranges":[{"startOffset":29199,"endOffset":30447,"count":30},{"startOffset":29369,"endOffset":29386,"count":0},{"startOffset":29552,"endOffset":29601,"count":0},{"startOffset":29638,"endOffset":29663,"count":0},{"startOffset":29919,"endOffset":30445,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":30450,"endOffset":31779,"count":7},{"startOffset":30534,"endOffset":30581,"count":0},{"startOffset":30648,"endOffset":30752,"count":0},{"startOffset":30953,"endOffset":31030,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":31123,"endOffset":31230,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":31363,"endOffset":31397,"count":0}],"isBlockCoverage":false},{"functionName":"toNumber","ranges":[{"startOffset":31890,"endOffset":31955,"count":14},{"startOffset":31945,"endOffset":31952,"count":0}],"isBlockCoverage":true},{"functionName":"createServerHandle","ranges":[{"startOffset":32023,"endOffset":33475,"count":7},{"startOffset":32239,"endOffset":32249,"count":0},{"startOffset":32251,"endOffset":32562,"count":0},{"startOffset":32584,"endOffset":32605,"count":0},{"startOffset":32607,"endOffset":32857,"count":0},{"startOffset":32945,"endOffset":32952,"count":0},{"startOffset":32953,"endOffset":32961,"count":0},{"startOffset":32994,"endOffset":33002,"count":0},{"startOffset":33023,"endOffset":33260,"count":0},{"startOffset":33344,"endOffset":33397,"count":0},{"startOffset":33414,"endOffset":33455,"count":0}],"isBlockCoverage":true},{"functionName":"setupListenHandle","ranges":[{"startOffset":33477,"endOffset":35828,"count":7},{"startOffset":33782,"endOffset":33842,"count":0},{"startOffset":34154,"endOffset":34246,"count":0},{"startOffset":34360,"endOffset":34425,"count":0},{"startOffset":34461,"endOffset":34608,"count":0},{"startOffset":35043,"endOffset":35401,"count":0},{"startOffset":35631,"endOffset":35644,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":35895,"endOffset":35957,"count":0}],"isBlockCoverage":false},{"functionName":"emitListeningNT","ranges":[{"startOffset":35960,"endOffset":36075,"count":7}],"isBlockCoverage":true},{"functionName":"listenInCluster","ranges":[{"startOffset":36078,"endOffset":37296,"count":7},{"startOffset":36254,"endOffset":36283,"count":1},{"startOffset":36308,"endOffset":36320,"count":0},{"startOffset":36566,"endOffset":37295,"count":0}],"isBlockCoverage":true},{"functionName":"listenOnMasterHandle","ranges":[{"startOffset":36811,"endOffset":37294,"count":0}],"isBlockCoverage":false},{"functionName":"Server.listen","ranges":[{"startOffset":37325,"endOffset":40823,"count":7},{"startOffset":37467,"endOffset":37515,"count":0},{"startOffset":37536,"endOffset":37573,"count":0},{"startOffset":37692,"endOffset":37702,"count":0},{"startOffset":37736,"endOffset":37746,"count":0},{"startOffset":37979,"endOffset":38142,"count":0},{"startOffset":38247,"endOffset":38265,"count":0},{"startOffset":38267,"endOffset":38363,"count":0},{"startOffset":38721,"endOffset":38741,"count":0},{"startOffset":38775,"endOffset":38802,"count":0},{"startOffset":39026,"endOffset":39061,"count":0},{"startOffset":39232,"endOffset":39357,"count":0},{"startOffset":39630,"endOffset":39798,"count":0},{"startOffset":39800,"endOffset":40621,"count":0},{"startOffset":40624,"endOffset":40822,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndListen","ranges":[{"startOffset":40826,"endOffset":41238,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":41301,"endOffset":41344,"count":0}],"isBlockCoverage":false},{"functionName":"Server.address","ranges":[{"startOffset":41419,"endOffset":41708,"count":0}],"isBlockCoverage":false},{"functionName":"onconnection","ranges":[{"startOffset":41711,"endOffset":42372,"count":30},{"startOffset":41852,"endOffset":41924,"count":0},{"startOffset":41952,"endOffset":41995,"count":0},{"startOffset":41997,"endOffset":42040,"count":0}],"isBlockCoverage":true},{"functionName":"Server.getConnections","ranges":[{"startOffset":42409,"endOffset":43162,"count":0}],"isBlockCoverage":false},{"functionName":"Server.close","ranges":[{"startOffset":43191,"endOffset":44058,"count":7},{"startOffset":43238,"endOffset":43413,"count":0},{"startOffset":43519,"endOffset":43997,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":43290,"endOffset":43358,"count":0}],"isBlockCoverage":false},{"functionName":"onWorkerClose","ranges":[{"startOffset":43584,"endOffset":43693,"count":0}],"isBlockCoverage":false},{"functionName":"Server._emitCloseIfDrained","ranges":[{"startOffset":44100,"endOffset":44486,"count":37},{"startOffset":44172,"endOffset":44192,"count":7},{"startOffset":44194,"endOffset":44306,"count":30},{"startOffset":44306,"endOffset":44485,"count":7}],"isBlockCoverage":true},{"functionName":"emitCloseNT","ranges":[{"startOffset":44490,"endOffset":44573,"count":7}],"isBlockCoverage":true},{"functionName":"Server.","ranges":[{"startOffset":44632,"endOffset":44794,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":44997,"endOffset":45033,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":45037,"endOffset":45078,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":45138,"endOffset":45169,"count":2729}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":45173,"endOffset":45209,"count":182}],"isBlockCoverage":true},{"functionName":"Server._setupWorker","ranges":[{"startOffset":45247,"endOffset":45473,"count":0}],"isBlockCoverage":false},{"functionName":"Server.ref","ranges":[{"startOffset":45499,"endOffset":45597,"count":0}],"isBlockCoverage":false},{"functionName":"Server.unref","ranges":[{"startOffset":45625,"endOffset":45724,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":45866,"endOffset":46535,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":46574,"endOffset":46815,"count":0}],"isBlockCoverage":false}]},{"scriptId":"111","url":"internal/stream_base_commons.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7120,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":987,"endOffset":1012,"count":1}],"isBlockCoverage":true},{"functionName":"handleWriteReq","ranges":[{"startOffset":1131,"endOffset":1986,"count":107},{"startOffset":1231,"endOffset":1398,"count":0},{"startOffset":1403,"endOffset":1417,"count":0},{"startOffset":1422,"endOffset":1486,"count":0},{"startOffset":1574,"endOffset":1636,"count":0},{"startOffset":1641,"endOffset":1653,"count":0},{"startOffset":1658,"endOffset":1671,"count":0},{"startOffset":1676,"endOffset":1691,"count":0},{"startOffset":1696,"endOffset":1760,"count":0},{"startOffset":1765,"endOffset":1980,"count":0}],"isBlockCoverage":true},{"functionName":"onWriteComplete","ranges":[{"startOffset":1988,"endOffset":2498,"count":72},{"startOffset":2141,"endOffset":2230,"count":0},{"startOffset":2250,"endOffset":2366,"count":0}],"isBlockCoverage":true},{"functionName":"createWriteWrap","ranges":[{"startOffset":2500,"endOffset":2701,"count":109}],"isBlockCoverage":true},{"functionName":"writevGeneric","ranges":[{"startOffset":2703,"endOffset":3344,"count":2},{"startOffset":2860,"endOffset":2957,"count":0},{"startOffset":3049,"endOffset":3162,"count":4}],"isBlockCoverage":true},{"functionName":"writeGeneric","ranges":[{"startOffset":3346,"endOffset":3553,"count":107}],"isBlockCoverage":true},{"functionName":"afterWriteDispatched","ranges":[{"startOffset":3555,"endOffset":3864,"count":109},{"startOffset":3728,"endOffset":3793,"count":0},{"startOffset":3813,"endOffset":3828,"count":37},{"startOffset":3828,"endOffset":3862,"count":72}],"isBlockCoverage":true},{"functionName":"onStreamRead","ranges":[{"startOffset":3866,"endOffset":5991,"count":102},{"startOffset":4060,"endOffset":4080,"count":72},{"startOffset":4082,"endOffset":4818,"count":72},{"startOffset":4167,"endOffset":4426,"count":0},{"startOffset":4610,"endOffset":4797,"count":0},{"startOffset":4818,"endOffset":4839,"count":30},{"startOffset":4839,"endOffset":4856,"count":0},{"startOffset":4856,"endOffset":4882,"count":30},{"startOffset":4882,"endOffset":5071,"count":0},{"startOffset":5071,"endOffset":5156,"count":30},{"startOffset":5156,"endOffset":5223,"count":0},{"startOffset":5223,"endOffset":5989,"count":30},{"startOffset":5268,"endOffset":5308,"count":0},{"startOffset":5594,"endOffset":5801,"count":0}],"isBlockCoverage":true},{"functionName":"setStreamTimeout","ranges":[{"startOffset":5993,"endOffset":6895,"count":60},{"startOffset":6064,"endOffset":6076,"count":0},{"startOffset":6382,"endOffset":6567,"count":30},{"startOffset":6468,"endOffset":6509,"count":0},{"startOffset":6567,"endOffset":6878,"count":30},{"startOffset":6672,"endOffset":6703,"count":0},{"startOffset":6789,"endOffset":6830,"count":0}],"isBlockCoverage":true}]},{"scriptId":"112","url":"internal/dtrace.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":568,"count":1}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_REQUEST","ranges":[{"startOffset":97,"endOffset":105,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_RESPONSE","ranges":[{"startOffset":139,"endOffset":147,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_REQUEST","ranges":[{"startOffset":180,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_RESPONSE","ranges":[{"startOffset":222,"endOffset":230,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_NET_SERVER_CONNECTION","ranges":[{"startOffset":265,"endOffset":273,"count":30}],"isBlockCoverage":true},{"functionName":"DTRACE_NET_STREAM_END","ranges":[{"startOffset":301,"endOffset":309,"count":30}],"isBlockCoverage":true}]},{"scriptId":"113","url":"internal/tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6292,"count":1}],"isBlockCoverage":false},{"functionName":"warnOnDeactivatedColors","ranges":[{"startOffset":2451,"endOffset":2903,"count":0}],"isBlockCoverage":false},{"functionName":"getColorDepth","ranges":[{"startOffset":3061,"endOffset":5813,"count":34},{"startOffset":3265,"endOffset":3623,"count":0},{"startOffset":3964,"endOffset":3990,"count":0},{"startOffset":4028,"endOffset":4570,"count":0},{"startOffset":4588,"endOffset":4616,"count":0},{"startOffset":4632,"endOffset":4816,"count":0},{"startOffset":4851,"endOffset":4956,"count":0},{"startOffset":4992,"endOffset":5161,"count":0},{"startOffset":5166,"endOffset":5183,"count":0},{"startOffset":5188,"endOffset":5228,"count":0},{"startOffset":5233,"endOffset":5280,"count":0},{"startOffset":5322,"endOffset":5350,"count":0},{"startOffset":5380,"endOffset":5812,"count":0}],"isBlockCoverage":true},{"functionName":"hasColors","ranges":[{"startOffset":5815,"endOffset":6239,"count":0}],"isBlockCoverage":false}]},{"scriptId":"114","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/runner.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5423,"count":1}],"isBlockCoverage":true},{"functionName":"indent","ranges":[{"startOffset":154,"endOffset":297,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":299,"endOffset":468,"count":3}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":348,"endOffset":410,"count":24}],"isBlockCoverage":true},{"functionName":"getLogData","ranges":[{"startOffset":448,"endOffset":461,"count":3}],"isBlockCoverage":true},{"functionName":"runner","ranges":[{"startOffset":470,"endOffset":5396,"count":1},{"startOffset":615,"endOffset":619,"count":0}],"isBlockCoverage":true},{"functionName":"testRunner","ranges":[{"startOffset":858,"endOffset":4788,"count":3}],"isBlockCoverage":true},{"functionName":"createAssert","ranges":[{"startOffset":1181,"endOffset":2522,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1264,"endOffset":2515,"count":21},{"startOffset":1465,"endOffset":1509,"count":0},{"startOffset":1770,"endOffset":1787,"count":0},{"startOffset":1802,"endOffset":2489,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":2528,"endOffset":3324,"count":21},{"startOffset":2603,"endOffset":2628,"count":18},{"startOffset":2628,"endOffset":2738,"count":3},{"startOffset":2738,"endOffset":3104,"count":0},{"startOffset":3104,"endOffset":3177,"count":3},{"startOffset":3177,"endOffset":3237,"count":0},{"startOffset":3237,"endOffset":3323,"count":3}],"isBlockCoverage":true},{"functionName":"plan","ranges":[{"startOffset":3348,"endOffset":3410,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3602,"endOffset":3650,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4972,"endOffset":5023,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5062,"endOffset":5070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5095,"endOffset":5392,"count":1}],"isBlockCoverage":true}]},{"scriptId":"115","url":"assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30746,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadComparison","ranges":[{"startOffset":2200,"endOffset":2384,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":2964,"endOffset":2996,"count":0}],"isBlockCoverage":false},{"functionName":"innerFail","ranges":[{"startOffset":3550,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"fail","ranges":[{"startOffset":3847,"endOffset":4826,"count":0}],"isBlockCoverage":false},{"functionName":"findColumn","ranges":[{"startOffset":4942,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"getCode","ranges":[{"startOffset":5884,"endOffset":7528,"count":0}],"isBlockCoverage":false},{"functionName":"parseCode","ranges":[{"startOffset":7530,"endOffset":9132,"count":0}],"isBlockCoverage":false},{"functionName":"getErrMessage","ranges":[{"startOffset":9134,"endOffset":11930,"count":0}],"isBlockCoverage":false},{"functionName":"innerOk","ranges":[{"startOffset":11932,"endOffset":12539,"count":4},{"startOffset":11993,"endOffset":12537,"count":0}],"isBlockCoverage":true},{"functionName":"ok","ranges":[{"startOffset":12672,"endOffset":12733,"count":4}],"isBlockCoverage":true},{"functionName":"equal","ranges":[{"startOffset":12992,"endOffset":13363,"count":0}],"isBlockCoverage":false},{"functionName":"notEqual","ranges":[{"startOffset":13582,"endOffset":13957,"count":0}],"isBlockCoverage":false},{"functionName":"deepEqual","ranges":[{"startOffset":14157,"endOffset":14521,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepEqual","ranges":[{"startOffset":14727,"endOffset":15099,"count":0}],"isBlockCoverage":false},{"functionName":"deepStrictEqual","ranges":[{"startOffset":15342,"endOffset":15730,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepStrictEqual","ranges":[{"startOffset":15979,"endOffset":16375,"count":0}],"isBlockCoverage":false},{"functionName":"strictEqual","ranges":[{"startOffset":16580,"endOffset":16892,"count":17},{"startOffset":16658,"endOffset":16717,"count":0},{"startOffset":16753,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"notStrictEqual","ranges":[{"startOffset":17104,"endOffset":17424,"count":0}],"isBlockCoverage":false},{"functionName":"Comparison","ranges":[{"startOffset":17448,"endOffset":17821,"count":0}],"isBlockCoverage":false},{"functionName":"compareExceptionKey","ranges":[{"startOffset":17825,"endOffset":18542,"count":0}],"isBlockCoverage":false},{"functionName":"expectedException","ranges":[{"startOffset":18544,"endOffset":21902,"count":0}],"isBlockCoverage":false},{"functionName":"getActual","ranges":[{"startOffset":21904,"endOffset":22110,"count":0}],"isBlockCoverage":false},{"functionName":"checkIsPromise","ranges":[{"startOffset":22112,"endOffset":22476,"count":0}],"isBlockCoverage":false},{"functionName":"waitForActual","ranges":[{"startOffset":22478,"endOffset":23192,"count":0}],"isBlockCoverage":false},{"functionName":"expectsError","ranges":[{"startOffset":23194,"endOffset":24808,"count":0}],"isBlockCoverage":false},{"functionName":"hasMatchingError","ranges":[{"startOffset":24810,"endOffset":25407,"count":0}],"isBlockCoverage":false},{"functionName":"expectsNoError","ranges":[{"startOffset":25409,"endOffset":26059,"count":0}],"isBlockCoverage":false},{"functionName":"throws","ranges":[{"startOffset":26217,"endOffset":26311,"count":0}],"isBlockCoverage":false},{"functionName":"rejects","ranges":[{"startOffset":26490,"endOffset":26602,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotThrow","ranges":[{"startOffset":26764,"endOffset":26858,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotReject","ranges":[{"startOffset":27024,"endOffset":27136,"count":0}],"isBlockCoverage":false},{"functionName":"ifError","ranges":[{"startOffset":27264,"endOffset":28633,"count":0}],"isBlockCoverage":false},{"functionName":"internalMatch","ranges":[{"startOffset":28636,"endOffset":29708,"count":0}],"isBlockCoverage":false},{"functionName":"match","ranges":[{"startOffset":29904,"endOffset":29996,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotMatch","ranges":[{"startOffset":30204,"endOffset":30310,"count":0}],"isBlockCoverage":false},{"functionName":"strict","ranges":[{"startOffset":30442,"endOffset":30511,"count":0}],"isBlockCoverage":false}]},{"scriptId":"116","url":"internal/assert/assertion_error.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":17019,"count":1}],"isBlockCoverage":false},{"functionName":"copyError","ranges":[{"startOffset":1418,"endOffset":1694,"count":0}],"isBlockCoverage":false},{"functionName":"inspectValue","ranges":[{"startOffset":1696,"endOffset":2303,"count":0}],"isBlockCoverage":false},{"functionName":"createErrDiff","ranges":[{"startOffset":2305,"endOffset":10859,"count":0}],"isBlockCoverage":false},{"functionName":"AssertionError","ranges":[{"startOffset":10900,"endOffset":15822,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":15826,"endOffset":15901,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15905,"endOffset":16982,"count":0}],"isBlockCoverage":false}]},{"scriptId":"117","url":"internal/assert/calltracker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2344,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":395,"endOffset":422,"count":0}],"isBlockCoverage":false},{"functionName":"calls","ranges":[{"startOffset":426,"endOffset":1443,"count":0}],"isBlockCoverage":false},{"functionName":"report","ranges":[{"startOffset":1447,"endOffset":2078,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":2082,"endOffset":2310,"count":0}],"isBlockCoverage":false}]},{"scriptId":"118","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/concurrun/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1562,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":17,"endOffset":1561,"count":1},{"startOffset":112,"endOffset":187,"count":0},{"startOffset":234,"endOffset":240,"count":0}],"isBlockCoverage":true},{"functionName":"getRate","ranges":[{"startOffset":243,"endOffset":304,"count":9}],"isBlockCoverage":true},{"functionName":"runNext","ranges":[{"startOffset":400,"endOffset":879,"count":9}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":543,"endOffset":862,"count":9},{"startOffset":598,"endOffset":667,"count":0},{"startOffset":711,"endOffset":727,"count":4},{"startOffset":728,"endOffset":848,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":892,"endOffset":1558,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":923,"endOffset":1551,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1061,"endOffset":1515,"count":3},{"startOffset":1111,"endOffset":1178,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1225,"endOffset":1498,"count":3}],"isBlockCoverage":true}]},{"scriptId":"119","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/righto/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15767,"count":1},{"startOffset":137,"endOffset":159,"count":0},{"startOffset":15701,"endOffset":15741,"count":18}],"isBlockCoverage":true},{"functionName":"isRighto","ranges":[{"startOffset":162,"endOffset":265,"count":21},{"startOffset":219,"endOffset":262,"count":17}],"isBlockCoverage":true},{"functionName":"isThenable","ranges":[{"startOffset":267,"endOffset":354,"count":6},{"startOffset":336,"endOffset":351,"count":3}],"isBlockCoverage":true},{"functionName":"isResolvable","ranges":[{"startOffset":356,"endOffset":424,"count":6},{"startOffset":405,"endOffset":421,"count":3}],"isBlockCoverage":true},{"functionName":"isTake","ranges":[{"startOffset":426,"endOffset":505,"count":3},{"startOffset":484,"endOffset":502,"count":0}],"isBlockCoverage":true},{"functionName":"getCallLine","ranges":[{"startOffset":576,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"takeWrap","ranges":[{"startOffset":847,"endOffset":904,"count":0}],"isBlockCoverage":false},{"functionName":"take","ranges":[{"startOffset":906,"endOffset":1253,"count":0}],"isBlockCoverage":false},{"functionName":"resolveDependency","ranges":[{"startOffset":1255,"endOffset":1826,"count":3},{"startOffset":1319,"endOffset":1363,"count":0},{"startOffset":1421,"endOffset":1566,"count":0},{"startOffset":1567,"endOffset":1597,"count":0},{"startOffset":1598,"endOffset":1626,"count":0},{"startOffset":1627,"endOffset":1656,"count":0},{"startOffset":1662,"endOffset":1825,"count":0}],"isBlockCoverage":true},{"functionName":"traceGet","ranges":[{"startOffset":1828,"endOffset":2088,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2090,"endOffset":2393,"count":0}],"isBlockCoverage":false},{"functionName":"noOp","ranges":[{"startOffset":2406,"endOffset":2418,"count":0}],"isBlockCoverage":false},{"functionName":"proxy","ranges":[{"startOffset":2421,"endOffset":3114,"count":0}],"isBlockCoverage":false},{"functionName":"createIterator","ranges":[{"startOffset":3116,"endOffset":4145,"count":0}],"isBlockCoverage":false},{"functionName":"addTracing","ranges":[{"startOffset":4147,"endOffset":5488,"count":0}],"isBlockCoverage":false},{"functionName":"errorOut","ranges":[{"startOffset":5490,"endOffset":5766,"count":0}],"isBlockCoverage":false},{"functionName":"debugResolve","ranges":[{"startOffset":5768,"endOffset":6045,"count":0}],"isBlockCoverage":false},{"functionName":"resolveWithDependencies","ranges":[{"startOffset":6047,"endOffset":7514,"count":4},{"startOffset":6144,"endOffset":6346,"count":0},{"startOffset":6988,"endOffset":7042,"count":0},{"startOffset":7155,"endOffset":7191,"count":0},{"startOffset":7204,"endOffset":7249,"count":3},{"startOffset":7262,"endOffset":7316,"count":0},{"startOffset":7329,"endOffset":7392,"count":1},{"startOffset":7405,"endOffset":7496,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6381,"endOffset":6589,"count":6},{"startOffset":6422,"endOffset":6449,"count":3},{"startOffset":6450,"endOffset":6518,"count":0}],"isBlockCoverage":true},{"functionName":"complete","ranges":[{"startOffset":6601,"endOffset":6965,"count":4},{"startOffset":6644,"endOffset":6660,"count":0},{"startOffset":6661,"endOffset":6716,"count":0}],"isBlockCoverage":true},{"functionName":"resolveDependencies","ranges":[{"startOffset":7516,"endOffset":8287,"count":4},{"startOffset":7662,"endOffset":7697,"count":0},{"startOffset":8070,"endOffset":8285,"count":6},{"startOffset":8106,"endOffset":8125,"count":3},{"startOffset":8126,"endOffset":8285,"count":3}],"isBlockCoverage":true},{"functionName":"dependencyResolved","ranges":[{"startOffset":7703,"endOffset":8028,"count":6},{"startOffset":7776,"endOffset":7807,"count":0},{"startOffset":7826,"endOffset":7904,"count":0},{"startOffset":7974,"endOffset":8022,"count":4}],"isBlockCoverage":true},{"functionName":"resolver","ranges":[{"startOffset":8289,"endOffset":9506,"count":4},{"startOffset":8407,"endOffset":8439,"count":0},{"startOffset":8467,"endOffset":8570,"count":0},{"startOffset":8610,"endOffset":8673,"count":0},{"startOffset":8698,"endOffset":8784,"count":0},{"startOffset":8912,"endOffset":8951,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8813,"endOffset":8883,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8839,"endOffset":8876,"count":4}],"isBlockCoverage":true},{"functionName":"dependenciesResolved","ranges":[{"startOffset":8973,"endOffset":9285,"count":4},{"startOffset":9046,"endOffset":9235,"count":0}],"isBlockCoverage":true},{"functionName":"thenMethod","ranges":[{"startOffset":9509,"endOffset":9685,"count":0}],"isBlockCoverage":false},{"functionName":"catchMethod","ranges":[{"startOffset":9687,"endOffset":9834,"count":0}],"isBlockCoverage":false},{"functionName":"finallyMethod","ranges":[{"startOffset":9836,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"righto","ranges":[{"startOffset":9985,"endOffset":10814,"count":4},{"startOffset":10097,"endOffset":10166,"count":0},{"startOffset":10188,"endOffset":10206,"count":0},{"startOffset":10207,"endOffset":10288,"count":0},{"startOffset":10745,"endOffset":10791,"count":0}],"isBlockCoverage":true},{"functionName":"righto.sync","ranges":[{"startOffset":10830,"endOffset":11156,"count":0}],"isBlockCoverage":false},{"functionName":"righto.all","ranges":[{"startOffset":11172,"endOffset":11622,"count":1},{"startOffset":11239,"endOffset":11279,"count":0},{"startOffset":11489,"endOffset":11593,"count":0}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":11285,"endOffset":11465,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11345,"endOffset":11442,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11513,"endOffset":11579,"count":0}],"isBlockCoverage":false},{"functionName":"righto.reduce","ranges":[{"startOffset":11641,"endOffset":12347,"count":0}],"isBlockCoverage":false},{"functionName":"righto.from","ranges":[{"startOffset":12364,"endOffset":12716,"count":0}],"isBlockCoverage":false},{"functionName":"righto.mate","ranges":[{"startOffset":12733,"endOffset":12915,"count":0}],"isBlockCoverage":false},{"functionName":"righto.take","ranges":[{"startOffset":12932,"endOffset":13086,"count":0}],"isBlockCoverage":false},{"functionName":"righto.after","ranges":[{"startOffset":13104,"endOffset":13352,"count":0}],"isBlockCoverage":false},{"functionName":"righto.resolve","ranges":[{"startOffset":13372,"endOffset":14272,"count":0}],"isBlockCoverage":false},{"functionName":"righto.value","ranges":[{"startOffset":14324,"endOffset":14459,"count":0}],"isBlockCoverage":false},{"functionName":"righto.surely","ranges":[{"startOffset":14478,"endOffset":14711,"count":0}],"isBlockCoverage":false},{"functionName":"righto.handle","ranges":[{"startOffset":14730,"endOffset":15022,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fail","ranges":[{"startOffset":15039,"endOffset":15134,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fork","ranges":[{"startOffset":15151,"endOffset":15383,"count":0}],"isBlockCoverage":false},{"functionName":"righto.proxy","ranges":[{"startOffset":15498,"endOffset":15676,"count":0}],"isBlockCoverage":false}]},{"scriptId":"120","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/abbott/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":757,"count":1}],"isBlockCoverage":true},{"functionName":"checkIfPromise","ranges":[{"startOffset":0,"endOffset":221,"count":0}],"isBlockCoverage":false},{"functionName":"abbott","ranges":[{"startOffset":240,"endOffset":756,"count":0}],"isBlockCoverage":false}]},{"scriptId":"121","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/setimmediate/setImmediate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6473,"count":1},{"startOffset":6447,"endOffset":6453,"count":0},{"startOffset":6463,"endOffset":6469,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1,"endOffset":6386,"count":1},{"startOffset":103,"endOffset":5529,"count":0},{"startOffset":5555,"endOffset":5577,"count":0},{"startOffset":5578,"endOffset":5588,"count":0},{"startOffset":5589,"endOffset":5597,"count":0},{"startOffset":5722,"endOffset":6385,"count":0}],"isBlockCoverage":true},{"functionName":"setImmediate","ranges":[{"startOffset":290,"endOffset":853,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":859,"endOffset":936,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":942,"endOffset":1442,"count":0}],"isBlockCoverage":false},{"functionName":"runIfPresent","ranges":[{"startOffset":1448,"endOffset":2272,"count":0}],"isBlockCoverage":false},{"functionName":"installNextTickImplementation","ranges":[{"startOffset":2278,"endOffset":2453,"count":0}],"isBlockCoverage":false},{"functionName":"canUsePostMessage","ranges":[{"startOffset":2459,"endOffset":3131,"count":0}],"isBlockCoverage":false},{"functionName":"installPostMessageImplementation","ranges":[{"startOffset":3137,"endOffset":4126,"count":0}],"isBlockCoverage":false},{"functionName":"installMessageChannelImplementation","ranges":[{"startOffset":4132,"endOffset":4470,"count":0}],"isBlockCoverage":false},{"functionName":"installReadyStateChangeImplementation","ranges":[{"startOffset":4476,"endOffset":5181,"count":0}],"isBlockCoverage":false},{"functionName":"installSetTimeoutImplementation","ranges":[{"startOffset":5187,"endOffset":5344,"count":0}],"isBlockCoverage":false}]},{"scriptId":"122","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1765,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":146,"endOffset":186,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":257,"endOffset":298,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":369,"endOffset":410,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":481,"endOffset":522,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":594,"endOffset":636,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":712,"endOffset":758,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":835,"endOffset":882,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":960,"endOffset":1008,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1082,"endOffset":1126,"count":2}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":1670,"endOffset":1765,"count":9},{"startOffset":1744,"endOffset":1762,"count":0}],"isBlockCoverage":true}]},{"scriptId":"123","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3618,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v1","ranges":[{"startOffset":627,"endOffset":3570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"124","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/rng.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":549,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":162,"endOffset":257,"count":1},{"startOffset":230,"endOffset":235,"count":0}],"isBlockCoverage":true},{"functionName":"rng","ranges":[{"startOffset":370,"endOffset":549,"count":10},{"startOffset":426,"endOffset":496,"count":1}],"isBlockCoverage":true}]},{"scriptId":"125","url":"crypto.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7347,"count":1}],"isBlockCoverage":false},{"functionName":"createHash","ranges":[{"startOffset":3138,"endOffset":3220,"count":7}],"isBlockCoverage":true},{"functionName":"createCipher","ranges":[{"startOffset":3222,"endOffset":3322,"count":0}],"isBlockCoverage":false},{"functionName":"createCipheriv","ranges":[{"startOffset":3324,"endOffset":3426,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipher","ranges":[{"startOffset":3428,"endOffset":3532,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipheriv","ranges":[{"startOffset":3534,"endOffset":3640,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellman","ranges":[{"startOffset":3642,"endOffset":3798,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellmanGroup","ranges":[{"startOffset":3800,"endOffset":3882,"count":0}],"isBlockCoverage":false},{"functionName":"createECDH","ranges":[{"startOffset":3884,"endOffset":3940,"count":0}],"isBlockCoverage":false},{"functionName":"createHmac","ranges":[{"startOffset":3942,"endOffset":4024,"count":0}],"isBlockCoverage":false},{"functionName":"createSign","ranges":[{"startOffset":4026,"endOffset":4108,"count":0}],"isBlockCoverage":false},{"functionName":"createVerify","ranges":[{"startOffset":4110,"endOffset":4196,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsDisabled","ranges":[{"startOffset":5216,"endOffset":5289,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsForced","ranges":[{"startOffset":5291,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsDisabled","ranges":[{"startOffset":5381,"endOffset":5423,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsForced","ranges":[{"startOffset":5425,"endOffset":5465,"count":0}],"isBlockCoverage":false}]},{"scriptId":"126","url":"internal/crypto/random.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9108,"count":1}],"isBlockCoverage":false},{"functionName":"assertOffset","ranges":[{"startOffset":751,"endOffset":1117,"count":1},{"startOffset":986,"endOffset":1068,"count":0}],"isBlockCoverage":true},{"functionName":"assertSize","ranges":[{"startOffset":1119,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"randomBytes","ranges":[{"startOffset":1582,"endOffset":2136,"count":0}],"isBlockCoverage":false},{"functionName":"randomFillSync","ranges":[{"startOffset":2138,"endOffset":2613,"count":1},{"startOffset":2218,"endOffset":2290,"count":0},{"startOffset":2336,"endOffset":2340,"count":0},{"startOffset":2473,"endOffset":2550,"count":0}],"isBlockCoverage":true},{"functionName":"randomFill","ranges":[{"startOffset":2615,"endOffset":3592,"count":0}],"isBlockCoverage":false},{"functionName":"randomInt","ranges":[{"startOffset":3830,"endOffset":5710,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":5712,"endOffset":5779,"count":1},{"startOffset":5754,"endOffset":5763,"count":0}],"isBlockCoverage":true},{"functionName":"getBufferedUUID","ranges":[{"startOffset":6241,"endOffset":6598,"count":0}],"isBlockCoverage":false},{"functionName":"randomUUID","ranges":[{"startOffset":6600,"endOffset":9010,"count":0}],"isBlockCoverage":false}]},{"scriptId":"127","url":"internal/crypto/pbkdf2.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2373,"count":1}],"isBlockCoverage":false},{"functionName":"pbkdf2","ranges":[{"startOffset":471,"endOffset":1342,"count":0}],"isBlockCoverage":false},{"functionName":"pbkdf2Sync","ranges":[{"startOffset":1344,"endOffset":1755,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":1757,"endOffset":2160,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":2162,"endOffset":2326,"count":0}],"isBlockCoverage":false}]},{"scriptId":"128","url":"internal/crypto/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2336,"count":1}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":704,"endOffset":765,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultEncoding","ranges":[{"startOffset":767,"endOffset":826,"count":7}],"isBlockCoverage":true},{"functionName":"toBuf","ranges":[{"startOffset":1001,"endOffset":1180,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1214,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1291,"endOffset":1333,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1367,"endOffset":1409,"count":0}],"isBlockCoverage":false},{"functionName":"setEngine","ranges":[{"startOffset":1413,"endOffset":1779,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1824,"endOffset":2172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"129","url":"internal/crypto/scrypt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3695,"count":1}],"isBlockCoverage":false},{"functionName":"scrypt","ranges":[{"startOffset":587,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"scryptSync","ranges":[{"startOffset":1426,"endOffset":1851,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1853,"endOffset":2095,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":2097,"endOffset":3652,"count":0}],"isBlockCoverage":false}]},{"scriptId":"130","url":"internal/crypto/keygen.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10082,"count":1}],"isBlockCoverage":false},{"functionName":"wrapKey","ranges":[{"startOffset":954,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPair","ranges":[{"startOffset":1084,"endOffset":1739,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPairSync","ranges":[{"startOffset":1865,"endOffset":1979,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1981,"endOffset":2324,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":2326,"endOffset":3450,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":3452,"endOffset":10021,"count":0}],"isBlockCoverage":false}]},{"scriptId":"131","url":"internal/crypto/keys.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1513,"endOffset":3483,"count":1}],"isBlockCoverage":true},{"functionName":"KeyObject","ranges":[{"startOffset":1623,"endOffset":2139,"count":0}],"isBlockCoverage":false},{"functionName":"get type","ranges":[{"startOffset":2145,"endOffset":2192,"count":0}],"isBlockCoverage":false},{"functionName":"SecretKeyObject","ranges":[{"startOffset":2246,"endOffset":2304,"count":0}],"isBlockCoverage":false},{"functionName":"get symmetricKeySize","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2396,"endOffset":2449,"count":0}],"isBlockCoverage":false},{"functionName":"get asymmetricKeyType","ranges":[{"startOffset":2567,"endOffset":2719,"count":0}],"isBlockCoverage":false},{"functionName":"PublicKeyObject","ranges":[{"startOffset":2783,"endOffset":2841,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2847,"endOffset":3031,"count":0}],"isBlockCoverage":false},{"functionName":"PrivateKeyObject","ranges":[{"startOffset":3096,"endOffset":3155,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":3161,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormat","ranges":[{"startOffset":3487,"endOffset":3814,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyType","ranges":[{"startOffset":3816,"endOffset":4668,"count":0}],"isBlockCoverage":false},{"functionName":"option","ranges":[{"startOffset":4670,"endOffset":4766,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormatAndType","ranges":[{"startOffset":4768,"endOffset":5362,"count":0}],"isBlockCoverage":false},{"functionName":"isStringOrBuffer","ranges":[{"startOffset":5364,"endOffset":5458,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":5460,"endOffset":6760,"count":0}],"isBlockCoverage":false},{"functionName":"parsePublicKeyEncoding","ranges":[{"startOffset":6959,"endOffset":7095,"count":0}],"isBlockCoverage":false},{"functionName":"parsePrivateKeyEncoding","ranges":[{"startOffset":7295,"endOffset":7411,"count":0}],"isBlockCoverage":false},{"functionName":"getKeyObjectHandle","ranges":[{"startOffset":7413,"endOffset":7975,"count":0}],"isBlockCoverage":false},{"functionName":"prepareAsymmetricKey","ranges":[{"startOffset":7977,"endOffset":9223,"count":0}],"isBlockCoverage":false},{"functionName":"preparePrivateKey","ranges":[{"startOffset":9225,"endOffset":9313,"count":0}],"isBlockCoverage":false},{"functionName":"preparePublicOrPrivateKey","ranges":[{"startOffset":9315,"endOffset":9410,"count":0}],"isBlockCoverage":false},{"functionName":"prepareSecretKey","ranges":[{"startOffset":9412,"endOffset":9903,"count":0}],"isBlockCoverage":false},{"functionName":"createSecretKey","ranges":[{"startOffset":9905,"endOffset":10190,"count":0}],"isBlockCoverage":false},{"functionName":"createPublicKey","ranges":[{"startOffset":10192,"endOffset":10429,"count":0}],"isBlockCoverage":false},{"functionName":"createPrivateKey","ranges":[{"startOffset":10431,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"isKeyObject","ranges":[{"startOffset":10702,"endOffset":10766,"count":0}],"isBlockCoverage":false}]},{"scriptId":"132","url":"internal/crypto/diffiehellman.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8338,"count":1}],"isBlockCoverage":false},{"functionName":"DiffieHellman","ranges":[{"startOffset":970,"endOffset":2743,"count":0}],"isBlockCoverage":false},{"functionName":"DiffieHellmanGroup","ranges":[{"startOffset":2746,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"dhGenerateKeys","ranges":[{"startOffset":3161,"endOffset":3323,"count":0}],"isBlockCoverage":false},{"functionName":"dhComputeSecret","ranges":[{"startOffset":3437,"endOffset":3761,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrime","ranges":[{"startOffset":3860,"endOffset":4016,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetGenerator","ranges":[{"startOffset":4127,"endOffset":4299,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPublicKey","ranges":[{"startOffset":4410,"endOffset":4570,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrivateKey","ranges":[{"startOffset":4684,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"setPublicKey","ranges":[{"startOffset":4888,"endOffset":5042,"count":0}],"isBlockCoverage":false},{"functionName":"setPrivateKey","ranges":[{"startOffset":5086,"endOffset":5242,"count":0}],"isBlockCoverage":false},{"functionName":"ECDH","ranges":[{"startOffset":5246,"endOffset":5400,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeys","ranges":[{"startOffset":5711,"endOffset":5833,"count":0}],"isBlockCoverage":false},{"functionName":"getPublicKey","ranges":[{"startOffset":5866,"endOffset":6064,"count":0}],"isBlockCoverage":false},{"functionName":"convertKey","ranges":[{"startOffset":6085,"endOffset":6603,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":6606,"endOffset":6741,"count":0}],"isBlockCoverage":false},{"functionName":"getFormat","ranges":[{"startOffset":6743,"endOffset":7066,"count":0}],"isBlockCoverage":false},{"functionName":"diffieHellman","ranges":[{"startOffset":7136,"endOffset":8251,"count":0}],"isBlockCoverage":false}]},{"scriptId":"133","url":"internal/crypto/cipher.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8473,"count":1}],"isBlockCoverage":false},{"functionName":"rsaFunctionFor","ranges":[{"startOffset":1054,"endOffset":1914,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1122,"endOffset":1911,"count":0}],"isBlockCoverage":false},{"functionName":"getDecoder","ranges":[{"startOffset":2415,"endOffset":2732,"count":0}],"isBlockCoverage":false},{"functionName":"getUIntOption","ranges":[{"startOffset":2734,"endOffset":2955,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherBase","ranges":[{"startOffset":2957,"endOffset":3366,"count":0}],"isBlockCoverage":false},{"functionName":"createCipher","ranges":[{"startOffset":3368,"endOffset":3590,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherWithIV","ranges":[{"startOffset":3592,"endOffset":3851,"count":0}],"isBlockCoverage":false},{"functionName":"Cipher","ranges":[{"startOffset":3853,"endOffset":4043,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":4186,"endOffset":4302,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":4331,"endOffset":4469,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":4498,"endOffset":5148,"count":0}],"isBlockCoverage":false},{"functionName":"final","ranges":[{"startOffset":5177,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"setAutoPadding","ranges":[{"startOffset":5518,"endOffset":5665,"count":0}],"isBlockCoverage":false},{"functionName":"getAuthTag","ranges":[{"startOffset":5698,"endOffset":5858,"count":0}],"isBlockCoverage":false},{"functionName":"setAuthTag","ranges":[{"startOffset":5862,"endOffset":6205,"count":0}],"isBlockCoverage":false},{"functionName":"setAAD","ranges":[{"startOffset":6233,"endOffset":6660,"count":0}],"isBlockCoverage":false},{"functionName":"Cipheriv","ranges":[{"startOffset":6663,"endOffset":6862,"count":0}],"isBlockCoverage":false},{"functionName":"addCipherPrototypeFunctions","ranges":[{"startOffset":6864,"endOffset":7455,"count":3},{"startOffset":7260,"endOffset":7333,"count":1},{"startOffset":7333,"endOffset":7395,"count":2}],"isBlockCoverage":true},{"functionName":"Decipher","ranges":[{"startOffset":7611,"endOffset":7808,"count":0}],"isBlockCoverage":false},{"functionName":"Decipheriv","ranges":[{"startOffset":7965,"endOffset":8171,"count":0}],"isBlockCoverage":false}]},{"scriptId":"134","url":"internal/streams/lazy_transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1669,"count":1}],"isBlockCoverage":false},{"functionName":"LazyTransform","ranges":[{"startOffset":468,"endOffset":530,"count":7}],"isBlockCoverage":true},{"functionName":"makeGetter","ranges":[{"startOffset":662,"endOffset":970,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":699,"endOffset":967,"count":0}],"isBlockCoverage":false},{"functionName":"makeSetter","ranges":[{"startOffset":972,"endOffset":1167,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1009,"endOffset":1164,"count":0}],"isBlockCoverage":false}]},{"scriptId":"135","url":"internal/crypto/sig.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5946,"count":1}],"isBlockCoverage":false},{"functionName":"Sign","ranges":[{"startOffset":729,"endOffset":977,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":1100,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1219,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"getPadding","ranges":[{"startOffset":1583,"endOffset":1658,"count":0}],"isBlockCoverage":false},{"functionName":"getSaltLength","ranges":[{"startOffset":1660,"endOffset":1741,"count":0}],"isBlockCoverage":false},{"functionName":"getDSASignatureEncoding","ranges":[{"startOffset":1743,"endOffset":2087,"count":0}],"isBlockCoverage":false},{"functionName":"getIntOption","ranges":[{"startOffset":2089,"endOffset":2321,"count":0}],"isBlockCoverage":false},{"functionName":"sign","ranges":[{"startOffset":2345,"endOffset":3008,"count":0}],"isBlockCoverage":false},{"functionName":"signOneShot","ranges":[{"startOffset":3011,"endOffset":3809,"count":0}],"isBlockCoverage":false},{"functionName":"Verify","ranges":[{"startOffset":3811,"endOffset":4067,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":4295,"endOffset":4929,"count":0}],"isBlockCoverage":false},{"functionName":"verifyOneShot","ranges":[{"startOffset":4932,"endOffset":5873,"count":0}],"isBlockCoverage":false}]},{"scriptId":"136","url":"internal/crypto/hash.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3801,"count":1}],"isBlockCoverage":false},{"functionName":"Hash","ranges":[{"startOffset":764,"endOffset":1272,"count":7},{"startOffset":835,"endOffset":871,"count":0},{"startOffset":998,"endOffset":1017,"count":0},{"startOffset":1018,"endOffset":1044,"count":0},{"startOffset":1090,"endOffset":1137,"count":0}],"isBlockCoverage":true},{"functionName":"copy","ranges":[{"startOffset":1403,"endOffset":1571,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":1602,"endOffset":1707,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":1734,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1841,"endOffset":2353,"count":7},{"startOffset":1982,"endOffset":2020,"count":0},{"startOffset":2097,"endOffset":2243,"count":0},{"startOffset":2294,"endOffset":2336,"count":0}],"isBlockCoverage":true},{"functionName":"digest","ranges":[{"startOffset":2381,"endOffset":2726,"count":7},{"startOffset":2474,"endOffset":2512,"count":0},{"startOffset":2547,"endOffset":2570,"count":0}],"isBlockCoverage":true},{"functionName":"Hmac","ranges":[{"startOffset":2730,"endOffset":3058,"count":0}],"isBlockCoverage":false},{"functionName":"digest","ranges":[{"startOffset":3239,"endOffset":3658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"137","url":"internal/crypto/certificate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1119,"count":1}],"isBlockCoverage":false},{"functionName":"verifySpkac","ranges":[{"startOffset":247,"endOffset":345,"count":0}],"isBlockCoverage":false},{"functionName":"exportPublicKey","ranges":[{"startOffset":347,"endOffset":476,"count":0}],"isBlockCoverage":false},{"functionName":"exportChallenge","ranges":[{"startOffset":478,"endOffset":607,"count":0}],"isBlockCoverage":false},{"functionName":"Certificate","ranges":[{"startOffset":695,"endOffset":789,"count":0}],"isBlockCoverage":false}]},{"scriptId":"138","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/stringify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1667,"count":1},{"startOffset":442,"endOffset":499,"count":256}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":501,"endOffset":1612,"count":10},{"startOffset":1537,"endOffset":1594,"count":0}],"isBlockCoverage":true}]},{"scriptId":"139","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/validate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":410,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":168,"endOffset":263,"count":1},{"startOffset":242,"endOffset":260,"count":0}],"isBlockCoverage":true},{"functionName":"validate","ranges":[{"startOffset":265,"endOffset":356,"count":10}],"isBlockCoverage":true}]},{"scriptId":"140","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/regex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true}]},{"scriptId":"141","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v3.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":414,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":218,"endOffset":313,"count":2},{"startOffset":292,"endOffset":310,"count":0}],"isBlockCoverage":true}]},{"scriptId":"142","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v35.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2008,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":275,"endOffset":370,"count":2},{"startOffset":349,"endOffset":367,"count":0}],"isBlockCoverage":true},{"functionName":"stringToBytes","ranges":[{"startOffset":372,"endOffset":580,"count":0}],"isBlockCoverage":false},{"functionName":"_default","ranges":[{"startOffset":725,"endOffset":2008,"count":2}],"isBlockCoverage":true},{"functionName":"generateUUID","ranges":[{"startOffset":772,"endOffset":1736,"count":0}],"isBlockCoverage":false}]},{"scriptId":"143","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1380,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":271,"endOffset":1329,"count":0}],"isBlockCoverage":false}]},{"scriptId":"144","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/md5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":550,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"md5","ranges":[{"startOffset":262,"endOffset":501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"145","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v4.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":860,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v4","ranges":[{"startOffset":330,"endOffset":812,"count":10},{"startOffset":646,"endOffset":769,"count":0}],"isBlockCoverage":true}]},{"scriptId":"146","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":417,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":220,"endOffset":315,"count":2},{"startOffset":294,"endOffset":312,"count":0}],"isBlockCoverage":true}]},{"scriptId":"147","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/sha1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":553,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"sha1","ranges":[{"startOffset":262,"endOffset":503,"count":0}],"isBlockCoverage":false}]},{"scriptId":"148","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/nil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":188,"count":1}],"isBlockCoverage":true}]},{"scriptId":"149","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"version","ranges":[{"startOffset":271,"endOffset":421,"count":0}],"isBlockCoverage":false}]},{"scriptId":"150","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6073,"count":1},{"startOffset":1532,"endOffset":1764,"count":44},{"startOffset":2057,"endOffset":2352,"count":8},{"startOffset":2386,"endOffset":2752,"count":8},{"startOffset":5968,"endOffset":5971,"count":0}],"isBlockCoverage":true},{"functionName":"applyOptions","ranges":[{"startOffset":430,"endOffset":809,"count":2},{"startOffset":477,"endOffset":558,"count":1},{"startOffset":560,"endOffset":638,"count":0},{"startOffset":729,"endOffset":732,"count":0},{"startOffset":778,"endOffset":790,"count":1},{"startOffset":791,"endOffset":806,"count":1}],"isBlockCoverage":true},{"functionName":"ChalkClass","ranges":[{"startOffset":832,"endOffset":941,"count":0}],"isBlockCoverage":false},{"functionName":"chalkFactory","ranges":[{"startOffset":966,"endOffset":1408,"count":2}],"isBlockCoverage":true},{"functionName":"chalk.template","ranges":[{"startOffset":1048,"endOffset":1106,"count":0}],"isBlockCoverage":false},{"functionName":"chalk.template.constructor","ranges":[{"startOffset":1235,"endOffset":1340,"count":0}],"isBlockCoverage":false},{"functionName":"Chalk","ranges":[{"startOffset":1411,"endOffset":1469,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1559,"endOffset":1758,"count":4}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1786,"endOffset":1933,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2080,"endOffset":2346,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2476,"endOffset":2746,"count":0}],"isBlockCoverage":false},{"functionName":"Object.defineProperties","ranges":[{"startOffset":2792,"endOffset":2800,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2848,"endOffset":2892,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":2896,"endOffset":2946,"count":0}],"isBlockCoverage":false},{"functionName":"createStyler","ranges":[{"startOffset":2976,"endOffset":3250,"count":4},{"startOffset":3101,"endOffset":3184,"count":0}],"isBlockCoverage":true},{"functionName":"createBuilder","ranges":[{"startOffset":3275,"endOffset":4073,"count":4}],"isBlockCoverage":true},{"functionName":"builder","ranges":[{"startOffset":3323,"endOffset":3790,"count":0}],"isBlockCoverage":false},{"functionName":"applyStyle","ranges":[{"startOffset":4095,"endOffset":5135,"count":0}],"isBlockCoverage":false},{"functionName":"chalkTag","ranges":[{"startOffset":5169,"endOffset":5764,"count":0}],"isBlockCoverage":false}]},{"scriptId":"151","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ansi-styles/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4139,"count":1}],"isBlockCoverage":true},{"functionName":"wrapAnsi16","ranges":[{"startOffset":34,"endOffset":129,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi256","ranges":[{"startOffset":152,"endOffset":255,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi16m","ranges":[{"startOffset":278,"endOffset":402,"count":0}],"isBlockCoverage":false},{"functionName":"ansi2ansi","ranges":[{"startOffset":423,"endOffset":429,"count":0}],"isBlockCoverage":false},{"functionName":"rgb2rgb","ranges":[{"startOffset":447,"endOffset":469,"count":0}],"isBlockCoverage":false},{"functionName":"setLazyProperty","ranges":[{"startOffset":496,"endOffset":786,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":575,"endOffset":737,"count":0}],"isBlockCoverage":false},{"functionName":"makeDynamicStyles","ranges":[{"startOffset":879,"endOffset":1400,"count":0}],"isBlockCoverage":false},{"functionName":"assembleStyles","ranges":[{"startOffset":1403,"endOffset":4021,"count":5},{"startOffset":2869,"endOffset":3201,"count":15},{"startOffset":2929,"endOffset":3108,"count":220}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3401,"endOffset":3464,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3509,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3619,"endOffset":3678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3722,"endOffset":3784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3831,"endOffset":3895,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3942,"endOffset":4000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"152","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/supports-color/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2748,"count":1},{"startOffset":250,"endOffset":270,"count":0},{"startOffset":374,"endOffset":394,"count":0},{"startOffset":422,"endOffset":646,"count":0}],"isBlockCoverage":true},{"functionName":"translateLevel","ranges":[{"startOffset":648,"endOffset":806,"count":2},{"startOffset":699,"endOffset":719,"count":0}],"isBlockCoverage":true},{"functionName":"supportsColor","ranges":[{"startOffset":808,"endOffset":2439,"count":2},{"startOffset":881,"endOffset":897,"count":0},{"startOffset":985,"endOffset":1001,"count":0},{"startOffset":1030,"endOffset":1046,"count":0},{"startOffset":1080,"endOffset":1107,"count":0},{"startOffset":1109,"endOffset":1125,"count":0},{"startOffset":1184,"endOffset":1202,"count":0},{"startOffset":1239,"endOffset":1594,"count":0},{"startOffset":1614,"endOffset":1794,"count":0},{"startOffset":1828,"endOffset":1909,"count":0},{"startOffset":1963,"endOffset":2438,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1706,"endOffset":1725,"count":0}],"isBlockCoverage":false},{"functionName":"getSupportLevel","ranges":[{"startOffset":2441,"endOffset":2570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"153","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/has-flag/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":330,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":32,"endOffset":328,"count":16},{"startOffset":102,"endOffset":106,"count":0},{"startOffset":128,"endOffset":133,"count":0},{"startOffset":262,"endOffset":325,"count":0}],"isBlockCoverage":true}]},{"scriptId":"154","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1035,"count":1}],"isBlockCoverage":true},{"functionName":"stringReplaceAll","ranges":[{"startOffset":40,"endOffset":505,"count":0}],"isBlockCoverage":false},{"functionName":"stringEncaseCRLFWithFirstIndex","ranges":[{"startOffset":547,"endOffset":959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"155","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":107,"count":1}],"isBlockCoverage":true}]},{"scriptId":"156","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createClient.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3821,"count":1}],"isBlockCoverage":true},{"functionName":"proxyEventEmitter","ranges":[{"startOffset":119,"endOffset":396,"count":30}],"isBlockCoverage":true},{"functionName":"sourceEmitter.emit","ranges":[{"startOffset":270,"endOffset":393,"count":487}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":426,"endOffset":553,"count":30},{"startOffset":484,"endOffset":542,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":501,"endOffset":524,"count":0}],"isBlockCoverage":false},{"functionName":"createClient","ranges":[{"startOffset":557,"endOffset":3788,"count":30}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":803,"endOffset":1116,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":875,"endOffset":1086,"count":37},{"startOffset":1019,"endOffset":1080,"count":0}],"isBlockCoverage":true},{"functionName":"reconnect","ranges":[{"startOffset":1142,"endOffset":1330,"count":0}],"isBlockCoverage":false},{"functionName":"makeConnection","ranges":[{"startOffset":1334,"endOffset":2387,"count":30},{"startOffset":1414,"endOffset":1445,"count":0},{"startOffset":1552,"endOffset":1641,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1714,"endOffset":1843,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1771,"endOffset":1812,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1870,"endOffset":2111,"count":30},{"startOffset":1929,"endOffset":1975,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2002,"endOffset":2080,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2138,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"waitUntilConnected","ranges":[{"startOffset":2412,"endOffset":2547,"count":37},{"startOffset":2472,"endOffset":2511,"count":32},{"startOffset":2511,"endOffset":2546,"count":5}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":2551,"endOffset":2951,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2644,"endOffset":2945,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2692,"endOffset":2888,"count":37},{"startOffset":2724,"endOffset":2807,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":3165,"endOffset":3770,"count":30},{"startOffset":3220,"endOffset":3269,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3326,"endOffset":3355,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3384,"endOffset":3762,"count":30},{"startOffset":3452,"endOffset":3479,"count":0},{"startOffset":3509,"endOffset":3587,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3618,"endOffset":3656,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3688,"endOffset":3726,"count":0}],"isBlockCoverage":false}]},{"scriptId":"157","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ndjson-fe/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":799,"count":1}],"isBlockCoverage":true},{"functionName":"ndJsonFe","ranges":[{"startOffset":41,"endOffset":770,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":148,"endOffset":616,"count":72}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":222,"endOffset":610,"count":146},{"startOffset":262,"endOffset":269,"count":72},{"startOffset":269,"endOffset":343,"count":74},{"startOffset":343,"endOffset":546,"count":0},{"startOffset":546,"endOffset":609,"count":74}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":678,"endOffset":715,"count":72}],"isBlockCoverage":true},{"functionName":"end","ranges":[{"startOffset":728,"endOffset":757,"count":30}],"isBlockCoverage":true}]},{"scriptId":"158","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1397,"count":1}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":40,"endOffset":1364,"count":7},{"startOffset":1025,"endOffset":1063,"count":0}],"isBlockCoverage":true},{"functionName":"wrapper","ranges":[{"startOffset":107,"endOffset":946,"count":30}],"isBlockCoverage":true},{"functionName":"next","ranges":[{"startOffset":209,"endOffset":659,"count":37},{"startOffset":562,"endOffset":653,"count":0}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":320,"endOffset":419,"count":0}],"isBlockCoverage":false},{"functionName":"reply","ranges":[{"startOffset":438,"endOffset":541,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":603,"endOffset":643,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":710,"endOffset":916,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":1103,"endOffset":1151,"count":7}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":1165,"endOffset":1357,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1197,"endOffset":1324,"count":30},{"startOffset":1261,"endOffset":1316,"count":0}],"isBlockCoverage":true}]},{"scriptId":"159","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/driver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5128,"count":1}],"isBlockCoverage":true},{"functionName":"createEjdbDriver","ranges":[{"startOffset":208,"endOffset":5093,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":356,"endOffset":471,"count":0}],"isBlockCoverage":false},{"functionName":"getDatabaseConnection","ranges":[{"startOffset":477,"endOffset":920,"count":65},{"startOffset":548,"endOffset":653,"count":0},{"startOffset":690,"endOffset":737,"count":57},{"startOffset":737,"endOffset":919,"count":8}],"isBlockCoverage":true},{"functionName":"count","ranges":[{"startOffset":924,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":1428,"endOffset":1949,"count":35},{"startOffset":1510,"endOffset":1615,"count":0},{"startOffset":1632,"endOffset":1657,"count":0},{"startOffset":1659,"endOffset":1691,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1926,"endOffset":1943,"count":3}],"isBlockCoverage":true},{"functionName":"post","ranges":[{"startOffset":1953,"endOffset":2477,"count":30},{"startOffset":2017,"endOffset":2122,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2288,"endOffset":2373,"count":90}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":2481,"endOffset":3299,"count":0}],"isBlockCoverage":false},{"functionName":"patch","ranges":[{"startOffset":3303,"endOffset":4174,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":4178,"endOffset":4722,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":4726,"endOffset":4769,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4773,"endOffset":4994,"count":7},{"startOffset":4861,"endOffset":4968,"count":8}],"isBlockCoverage":true}]},{"scriptId":"160","url":"fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":73,"count":1}],"isBlockCoverage":false}]},{"scriptId":"161","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18975,"count":1},{"startOffset":1537,"endOffset":1670,"count":0}],"isBlockCoverage":true},{"functionName":"escapeUnicode","ranges":[{"startOffset":1894,"endOffset":2085,"count":0}],"isBlockCoverage":false},{"functionName":"jsonParseAndEscapeIfNeeded","ranges":[{"startOffset":2087,"endOffset":2243,"count":3},{"startOffset":2176,"endOffset":2241,"count":0}],"isBlockCoverage":true},{"functionName":"isNotFound","ranges":[{"startOffset":2426,"endOffset":2543,"count":0}],"isBlockCoverage":false},{"functionName":"isInvalidQuery","ranges":[{"startOffset":2682,"endOffset":2803,"count":0}],"isBlockCoverage":false},{"functionName":"get json","ranges":[{"startOffset":2892,"endOffset":3072,"count":3},{"startOffset":2933,"endOffset":2965,"count":0}],"isBlockCoverage":true},{"functionName":"JBDOC","ranges":[{"startOffset":3173,"endOffset":3261,"count":3}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":3265,"endOffset":3374,"count":0}],"isBlockCoverage":false},{"functionName":"get _impl","ranges":[{"startOffset":3458,"endOffset":3502,"count":140}],"isBlockCoverage":true},{"functionName":"get writable","ranges":[{"startOffset":3506,"endOffset":3572,"count":0}],"isBlockCoverage":false},{"functionName":"JBDOCStream","ranges":[{"startOffset":3636,"endOffset":4033,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4001,"endOffset":4027,"count":0}],"isBlockCoverage":false},{"functionName":"abort","ranges":[{"startOffset":4037,"endOffset":4251,"count":35}],"isBlockCoverage":true},{"functionName":"_destroy","ranges":[{"startOffset":4287,"endOffset":4482,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4410,"endOffset":4451,"count":35}],"isBlockCoverage":true},{"functionName":"_read","ranges":[{"startOffset":4486,"endOffset":5092,"count":38},{"startOffset":4521,"endOffset":4542,"count":0},{"startOffset":4599,"endOffset":5088,"count":0}],"isBlockCoverage":true},{"functionName":"_doResume","ranges":[{"startOffset":5096,"endOffset":5213,"count":73},{"startOffset":5132,"endOffset":5209,"count":35}],"isBlockCoverage":true},{"functionName":"_doPause","ranges":[{"startOffset":5217,"endOffset":5332,"count":0}],"isBlockCoverage":false},{"functionName":"addStreamResult","ranges":[{"startOffset":5394,"endOffset":6409,"count":38},{"startOffset":5472,"endOffset":5489,"count":0},{"startOffset":5508,"endOffset":5546,"count":0},{"startOffset":5548,"endOffset":5631,"count":0},{"startOffset":5694,"endOffset":5702,"count":35},{"startOffset":5704,"endOffset":6251,"count":3},{"startOffset":5760,"endOffset":5971,"count":0},{"startOffset":6004,"endOffset":6078,"count":0},{"startOffset":6205,"endOffset":6241,"count":0},{"startOffset":6267,"endOffset":6407,"count":35},{"startOffset":6328,"endOffset":6366,"count":0}],"isBlockCoverage":true},{"functionName":"get _impl","ranges":[{"startOffset":6449,"endOffset":6492,"count":229}],"isBlockCoverage":true},{"functionName":"get limit","ranges":[{"startOffset":6546,"endOffset":6602,"count":0}],"isBlockCoverage":false},{"functionName":"JQL","ranges":[{"startOffset":6700,"endOffset":6866,"count":35}],"isBlockCoverage":true},{"functionName":"stream","ranges":[{"startOffset":7031,"endOffset":7095,"count":35}],"isBlockCoverage":true},{"functionName":"completionPromise","ranges":[{"startOffset":7194,"endOffset":7461,"count":0}],"isBlockCoverage":false},{"functionName":"scalarInt","ranges":[{"startOffset":7642,"endOffset":7899,"count":0}],"isBlockCoverage":false},{"functionName":"list","ranges":[{"startOffset":8065,"endOffset":8336,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8159,"endOffset":8330,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8206,"endOffset":8228,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8256,"endOffset":8274,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8302,"endOffset":8322,"count":0}],"isBlockCoverage":false},{"functionName":"firstN","ranges":[{"startOffset":8502,"endOffset":8909,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":9112,"endOffset":9196,"count":0}],"isBlockCoverage":false},{"functionName":"setJSON","ranges":[{"startOffset":9351,"endOffset":9565,"count":0}],"isBlockCoverage":false},{"functionName":"setRegexp","ranges":[{"startOffset":9729,"endOffset":10117,"count":0}],"isBlockCoverage":false},{"functionName":"setNumber","ranges":[{"startOffset":10271,"endOffset":10530,"count":0}],"isBlockCoverage":false},{"functionName":"setBoolean","ranges":[{"startOffset":10686,"endOffset":10831,"count":0}],"isBlockCoverage":false},{"functionName":"setString","ranges":[{"startOffset":10985,"endOffset":11211,"count":54},{"startOffset":11104,"endOffset":11139,"count":0}],"isBlockCoverage":true},{"functionName":"setNull","ranges":[{"startOffset":11334,"endOffset":11470,"count":0}],"isBlockCoverage":false},{"functionName":"_isInteger","ranges":[{"startOffset":11474,"endOffset":11531,"count":0}],"isBlockCoverage":false},{"functionName":"_checkPlaceholder","ranges":[{"startOffset":11535,"endOffset":11744,"count":54},{"startOffset":11625,"endOffset":11642,"count":0},{"startOffset":11644,"endOffset":11740,"count":0}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11976,"endOffset":12996,"count":8}],"isBlockCoverage":true},{"functionName":"toArgs","ranges":[{"startOffset":12023,"endOffset":12906,"count":8},{"startOffset":12119,"endOffset":12152,"count":0},{"startOffset":12181,"endOffset":12214,"count":0},{"startOffset":12282,"endOffset":12305,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12980,"endOffset":12990,"count":8}],"isBlockCoverage":true},{"functionName":"EJDB2","ranges":[{"startOffset":13000,"endOffset":13061,"count":8}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":13137,"endOffset":13181,"count":8}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":13470,"endOffset":13627,"count":30},{"startOffset":13532,"endOffset":13574,"count":0}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":13842,"endOffset":13926,"count":0}],"isBlockCoverage":false},{"functionName":"patchOrPut","ranges":[{"startOffset":14188,"endOffset":14284,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14482,"endOffset":14597,"count":0}],"isBlockCoverage":false},{"functionName":"getOrNull","ranges":[{"startOffset":14875,"endOffset":15080,"count":0}],"isBlockCoverage":false},{"functionName":"info","ranges":[{"startOffset":15175,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":15428,"endOffset":15496,"count":0}],"isBlockCoverage":false},{"functionName":"renameCollection","ranges":[{"startOffset":15697,"endOffset":15836,"count":0}],"isBlockCoverage":false},{"functionName":"ensureStringIndex","ranges":[{"startOffset":16077,"endOffset":16208,"count":90},{"startOffset":16184,"endOffset":16190,"count":0}],"isBlockCoverage":true},{"functionName":"removeStringIndex","ranges":[{"startOffset":16392,"endOffset":16522,"count":0}],"isBlockCoverage":false},{"functionName":"ensureIntIndex","ranges":[{"startOffset":16764,"endOffset":16892,"count":0}],"isBlockCoverage":false},{"functionName":"removeIntIndex","ranges":[{"startOffset":17076,"endOffset":17203,"count":0}],"isBlockCoverage":false},{"functionName":"ensureFloatIndex","ranges":[{"startOffset":17452,"endOffset":17582,"count":0}],"isBlockCoverage":false},{"functionName":"removeFloatIndex","ranges":[{"startOffset":17766,"endOffset":17895,"count":0}],"isBlockCoverage":false},{"functionName":"removeCollection","ranges":[{"startOffset":18013,"endOffset":18089,"count":0}],"isBlockCoverage":false},{"functionName":"createQuery","ranges":[{"startOffset":18369,"endOffset":18450,"count":35}],"isBlockCoverage":true},{"functionName":"onlineBackup","ranges":[{"startOffset":18859,"endOffset":18934,"count":0}],"isBlockCoverage":false}]},{"scriptId":"162","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1982,"count":1}],"isBlockCoverage":true}]},{"scriptId":"163","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/re.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6662,"count":1}],"isBlockCoverage":true},{"functionName":"createToken","ranges":[{"startOffset":276,"endOffset":447,"count":40},{"startOffset":427,"endOffset":432,"count":4},{"startOffset":433,"endOffset":444,"count":36}],"isBlockCoverage":true}]},{"scriptId":"164","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":468,"count":1},{"startOffset":233,"endOffset":281,"count":0}],"isBlockCoverage":true}]},{"scriptId":"165","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/debug.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":226,"count":1},{"startOffset":91,"endOffset":138,"count":0},{"startOffset":141,"endOffset":188,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":143,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"debug","ranges":[{"startOffset":193,"endOffset":201,"count":59}],"isBlockCoverage":true}]},{"scriptId":"166","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/semver.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7985,"count":1}],"isBlockCoverage":true},{"functionName":"SemVer","ranges":[{"startOffset":303,"endOffset":2193,"count":4},{"startOffset":408,"endOffset":613,"count":2},{"startOffset":558,"endOffset":607,"count":0},{"startOffset":613,"endOffset":716,"count":2},{"startOffset":652,"endOffset":716,"count":0},{"startOffset":716,"endOffset":755,"count":2},{"startOffset":755,"endOffset":855,"count":0},{"startOffset":855,"endOffset":1194,"count":2},{"startOffset":1194,"endOffset":1207,"count":0},{"startOffset":1208,"endOffset":1220,"count":2},{"startOffset":1235,"endOffset":1299,"count":0},{"startOffset":1299,"endOffset":1484,"count":2},{"startOffset":1486,"endOffset":1544,"count":0},{"startOffset":1544,"endOffset":1601,"count":2},{"startOffset":1603,"endOffset":1661,"count":0},{"startOffset":1661,"endOffset":1718,"count":2},{"startOffset":1720,"endOffset":1778,"count":0},{"startOffset":1778,"endOffset":1873,"count":2},{"startOffset":1873,"endOffset":2125,"count":0},{"startOffset":2125,"endOffset":2149,"count":2},{"startOffset":2149,"endOffset":2166,"count":0},{"startOffset":2167,"endOffset":2171,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1925,"endOffset":2118,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":2197,"endOffset":2393,"count":2},{"startOffset":2304,"endOffset":2365,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2397,"endOffset":2438,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":2442,"endOffset":2832,"count":1},{"startOffset":2559,"endOffset":2702,"count":0},{"startOffset":2744,"endOffset":2766,"count":0},{"startOffset":2803,"endOffset":2828,"count":0}],"isBlockCoverage":true},{"functionName":"compareMain","ranges":[{"startOffset":2836,"endOffset":3127,"count":1},{"startOffset":2894,"endOffset":2947,"count":0},{"startOffset":3012,"endOffset":3064,"count":0},{"startOffset":3065,"endOffset":3117,"count":0}],"isBlockCoverage":true},{"functionName":"comparePre","ranges":[{"startOffset":3131,"endOffset":3982,"count":0}],"isBlockCoverage":false},{"functionName":"compareBuild","ranges":[{"startOffset":3986,"endOffset":4528,"count":0}],"isBlockCoverage":false},{"functionName":"inc","ranges":[{"startOffset":4681,"endOffset":7957,"count":0}],"isBlockCoverage":false}]},{"scriptId":"167","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/parse-options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":401,"count":1}],"isBlockCoverage":true},{"functionName":"parseOptions","ranges":[{"startOffset":186,"endOffset":370,"count":6},{"startOffset":208,"endOffset":212,"count":2},{"startOffset":215,"endOffset":370,"count":4},{"startOffset":245,"endOffset":262,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":279,"endOffset":294,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":303,"endOffset":365,"count":0}],"isBlockCoverage":false}]},{"scriptId":"168","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/identifiers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":409,"count":1}],"isBlockCoverage":true},{"functionName":"compareIdentifiers","ranges":[{"startOffset":54,"endOffset":278,"count":1},{"startOffset":195,"endOffset":198,"count":0},{"startOffset":221,"endOffset":225,"count":0},{"startOffset":248,"endOffset":251,"count":0},{"startOffset":264,"endOffset":268,"count":0}],"isBlockCoverage":true},{"functionName":"rcompareIdentifiers","ranges":[{"startOffset":308,"endOffset":342,"count":0}],"isBlockCoverage":false}]},{"scriptId":"169","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":660,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":215,"endOffset":635,"count":0}],"isBlockCoverage":false}]},{"scriptId":"170","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":162,"count":1}],"isBlockCoverage":true},{"functionName":"valid","ranges":[{"startOffset":47,"endOffset":138,"count":0}],"isBlockCoverage":false}]},{"scriptId":"171","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/clean.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":191,"count":1}],"isBlockCoverage":true},{"functionName":"clean","ranges":[{"startOffset":47,"endOffset":167,"count":0}],"isBlockCoverage":false}]},{"scriptId":"172","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/inc.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":336,"count":1}],"isBlockCoverage":true},{"functionName":"inc","ranges":[{"startOffset":57,"endOffset":314,"count":0}],"isBlockCoverage":false}]},{"scriptId":"173","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/diff.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":634,"count":1}],"isBlockCoverage":true},{"functionName":"diff","ranges":[{"startOffset":74,"endOffset":611,"count":0}],"isBlockCoverage":false}]},{"scriptId":"174","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/eq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":112,"count":1}],"isBlockCoverage":true},{"functionName":"eq","ranges":[{"startOffset":48,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"175","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":156,"count":1}],"isBlockCoverage":true},{"functionName":"compare","ranges":[{"startOffset":60,"endOffset":129,"count":1}],"isBlockCoverage":true}]},{"scriptId":"176","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/major.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"major","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"177","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/minor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"minor","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"178","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/patch.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"179","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/prerelease.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"prerelease","ranges":[{"startOffset":52,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"180","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rcompare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"rcompare","ranges":[{"startOffset":54,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"181","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-loose.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"compareLoose","ranges":[{"startOffset":58,"endOffset":87,"count":0}],"isBlockCoverage":false}]},{"scriptId":"182","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-build.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true},{"functionName":"compareBuild","ranges":[{"startOffset":65,"endOffset":236,"count":0}],"isBlockCoverage":false}]},{"scriptId":"183","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/sort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":147,"count":1}],"isBlockCoverage":true},{"functionName":"sort","ranges":[{"startOffset":61,"endOffset":124,"count":0}],"isBlockCoverage":false}]},{"scriptId":"184","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rsort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":149,"count":1}],"isBlockCoverage":true},{"functionName":"rsort","ranges":[{"startOffset":62,"endOffset":125,"count":0}],"isBlockCoverage":false}]},{"scriptId":"185","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"gt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"186","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"lt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"187","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/neq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":114,"count":1}],"isBlockCoverage":true},{"functionName":"neq","ranges":[{"startOffset":49,"endOffset":92,"count":0}],"isBlockCoverage":false}]},{"scriptId":"188","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"gte","ranges":[{"startOffset":49,"endOffset":91,"count":1}],"isBlockCoverage":true}]},{"scriptId":"189","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"lte","ranges":[{"startOffset":49,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"190","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/cmp.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":907,"count":1}],"isBlockCoverage":true},{"functionName":"cmp","ranges":[{"startOffset":181,"endOffset":885,"count":1},{"startOffset":224,"endOffset":366,"count":0},{"startOffset":372,"endOffset":514,"count":0},{"startOffset":520,"endOffset":528,"count":0},{"startOffset":533,"endOffset":542,"count":0},{"startOffset":547,"endOffset":586,"count":0},{"startOffset":592,"endOffset":632,"count":0},{"startOffset":638,"endOffset":676,"count":0},{"startOffset":728,"endOffset":766,"count":0},{"startOffset":772,"endOffset":812,"count":0},{"startOffset":818,"endOffset":879,"count":0}],"isBlockCoverage":true}]},{"scriptId":"191","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/coerce.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1497,"count":1}],"isBlockCoverage":true},{"functionName":"coerce","ranges":[{"startOffset":135,"endOffset":1472,"count":0}],"isBlockCoverage":false}]},{"scriptId":"192","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/comparator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3606,"count":1}],"isBlockCoverage":true},{"functionName":"get ANY","ranges":[{"startOffset":100,"endOffset":131,"count":2}],"isBlockCoverage":true},{"functionName":"Comparator","ranges":[{"startOffset":134,"endOffset":635,"count":1},{"startOffset":237,"endOffset":357,"count":0},{"startOffset":509,"endOffset":538,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":639,"endOffset":1135,"count":1},{"startOffset":687,"endOffset":710,"count":0},{"startOffset":771,"endOffset":835,"count":0},{"startOffset":883,"endOffset":887,"count":0},{"startOffset":919,"endOffset":951,"count":0},{"startOffset":1030,"endOffset":1061,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":1139,"endOffset":1178,"count":1}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":1182,"endOffset":1562,"count":1},{"startOffset":1306,"endOffset":1331,"count":0},{"startOffset":1370,"endOffset":1491,"count":0}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":1566,"endOffset":3322,"count":0}],"isBlockCoverage":false}]},{"scriptId":"193","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/range.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13989,"count":1}],"isBlockCoverage":true},{"functionName":"Range","ranges":[{"startOffset":55,"endOffset":1826,"count":1},{"startOffset":155,"endOffset":379,"count":0},{"startOffset":418,"endOffset":562,"count":0},{"startOffset":1162,"endOffset":1229,"count":0},{"startOffset":1330,"endOffset":1803,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":857,"endOffset":895,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1120,"endOffset":1133,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1456,"endOffset":1477,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":1830,"endOffset":1996,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1879,"endOffset":1937,"count":1}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2000,"endOffset":2039,"count":0}],"isBlockCoverage":false},{"functionName":"parseRange","ranges":[{"startOffset":2043,"endOffset":4217,"count":1},{"startOffset":2364,"endOffset":2377,"count":0},{"startOffset":2481,"endOffset":2505,"count":0},{"startOffset":3187,"endOffset":3210,"count":0},{"startOffset":3559,"endOffset":3589,"count":0},{"startOffset":3992,"endOffset":4005,"count":0},{"startOffset":4075,"endOffset":4094,"count":0},{"startOffset":4102,"endOffset":4121,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3287,"endOffset":3330,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3416,"endOffset":3455,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3561,"endOffset":3589,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3592,"endOffset":3602,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3615,"endOffset":3657,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":4221,"endOffset":4851,"count":0}],"isBlockCoverage":false},{"functionName":"test","ranges":[{"startOffset":4919,"endOffset":5301,"count":1},{"startOffset":4954,"endOffset":4980,"count":0},{"startOffset":5093,"endOffset":5134,"count":0},{"startOffset":5280,"endOffset":5300,"count":0}],"isBlockCoverage":true},{"functionName":"isNullSet","ranges":[{"startOffset":5710,"endOffset":5737,"count":1}],"isBlockCoverage":true},{"functionName":"isAny","ranges":[{"startOffset":5752,"endOffset":5771,"count":0}],"isBlockCoverage":false},{"functionName":"isSatisfiable","ranges":[{"startOffset":5893,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"parseComparator","ranges":[{"startOffset":6469,"endOffset":6782,"count":1}],"isBlockCoverage":true},{"functionName":"isX","ranges":[{"startOffset":6796,"endOffset":6847,"count":3}],"isBlockCoverage":true},{"functionName":"replaceTildes","ranges":[{"startOffset":7152,"endOffset":7267,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7202,"endOffset":7256,"count":1}],"isBlockCoverage":true},{"functionName":"replaceTilde","ranges":[{"startOffset":7290,"endOffset":7964,"count":1},{"startOffset":7337,"endOffset":7355,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7395,"endOffset":7961,"count":0}],"isBlockCoverage":false},{"functionName":"replaceCarets","ranges":[{"startOffset":8195,"endOffset":8310,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8245,"endOffset":8299,"count":1}],"isBlockCoverage":true},{"functionName":"replaceCaret","ranges":[{"startOffset":8333,"endOffset":9635,"count":1},{"startOffset":8412,"endOffset":8430,"count":0},{"startOffset":8483,"endOffset":8489,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8520,"endOffset":9632,"count":0}],"isBlockCoverage":false},{"functionName":"replaceXRanges","ranges":[{"startOffset":9660,"endOffset":9821,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9753,"endOffset":9808,"count":1}],"isBlockCoverage":true},{"functionName":"replaceXRange","ranges":[{"startOffset":9845,"endOffset":11535,"count":1},{"startOffset":9913,"endOffset":9932,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9973,"endOffset":11532,"count":1},{"startOffset":10173,"endOffset":10180,"count":0},{"startOffset":10182,"endOffset":10205,"count":0},{"startOffset":10370,"endOffset":10376,"count":0},{"startOffset":10395,"endOffset":10572,"count":0},{"startOffset":10596,"endOffset":11330,"count":0},{"startOffset":11344,"endOffset":11398,"count":0},{"startOffset":11412,"endOffset":11479,"count":0}],"isBlockCoverage":true},{"functionName":"replaceStars","ranges":[{"startOffset":11681,"endOffset":11856,"count":1}],"isBlockCoverage":true},{"functionName":"replaceGTE0","ranges":[{"startOffset":11878,"endOffset":12028,"count":1},{"startOffset":12000,"endOffset":12011,"count":0}],"isBlockCoverage":true},{"functionName":"hyphenReplace","ranges":[{"startOffset":12270,"endOffset":12946,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12279,"endOffset":12946,"count":0}],"isBlockCoverage":false},{"functionName":"testSet","ranges":[{"startOffset":12964,"endOffset":13988,"count":1},{"startOffset":13065,"endOffset":13091,"count":0},{"startOffset":13129,"endOffset":13158,"count":0},{"startOffset":13160,"endOffset":13971,"count":0}],"isBlockCoverage":true}]},{"scriptId":"194","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/lru-cache/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8186,"count":1}],"isBlockCoverage":true},{"functionName":"naiveLength","ranges":[{"startOffset":510,"endOffset":517,"count":1}],"isBlockCoverage":true},{"functionName":"LRUCache","ranges":[{"startOffset":853,"endOffset":1751,"count":1},{"startOffset":920,"endOffset":946,"count":0},{"startOffset":972,"endOffset":984,"count":0},{"startOffset":1069,"endOffset":1125,"count":0},{"startOffset":1235,"endOffset":1246,"count":0},{"startOffset":1350,"endOffset":1363,"count":0},{"startOffset":1439,"endOffset":1476,"count":0},{"startOffset":1484,"endOffset":1530,"count":0}],"isBlockCoverage":true},{"functionName":"set max","ranges":[{"startOffset":1799,"endOffset":1969,"count":0}],"isBlockCoverage":false},{"functionName":"get max","ranges":[{"startOffset":1972,"endOffset":2009,"count":0}],"isBlockCoverage":false},{"functionName":"set allowStale","ranges":[{"startOffset":2013,"endOffset":2083,"count":0}],"isBlockCoverage":false},{"functionName":"get allowStale","ranges":[{"startOffset":2086,"endOffset":2138,"count":0}],"isBlockCoverage":false},{"functionName":"set maxAge","ranges":[{"startOffset":2142,"endOffset":2300,"count":0}],"isBlockCoverage":false},{"functionName":"get maxAge","ranges":[{"startOffset":2303,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"set lengthCalculator","ranges":[{"startOffset":2408,"endOffset":2765,"count":0}],"isBlockCoverage":false},{"functionName":"get lengthCalculator","ranges":[{"startOffset":2768,"endOffset":2826,"count":0}],"isBlockCoverage":false},{"functionName":"get length","ranges":[{"startOffset":2830,"endOffset":2867,"count":0}],"isBlockCoverage":false},{"functionName":"get itemCount","ranges":[{"startOffset":2870,"endOffset":2919,"count":0}],"isBlockCoverage":false},{"functionName":"rforEach","ranges":[{"startOffset":2923,"endOffset":3138,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":3142,"endOffset":3356,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":3360,"endOffset":3425,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":3429,"endOffset":3498,"count":0}],"isBlockCoverage":false},{"functionName":"reset","ranges":[{"startOffset":3502,"endOffset":3858,"count":1},{"startOffset":3535,"endOffset":3560,"count":0},{"startOffset":3561,"endOffset":3593,"count":0},{"startOffset":3595,"endOffset":3673,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3626,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"dump","ranges":[{"startOffset":3862,"endOffset":4064,"count":0}],"isBlockCoverage":false},{"functionName":"dumpLru","ranges":[{"startOffset":4068,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":4114,"endOffset":5376,"count":1},{"startOffset":4194,"endOffset":4223,"count":0},{"startOffset":4231,"endOffset":4277,"count":0},{"startOffset":4302,"endOffset":4314,"count":0},{"startOffset":4402,"endOffset":4996,"count":0},{"startOffset":5145,"endOffset":5231,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":5380,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5517,"endOffset":5564,"count":1}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":5568,"endOffset":5617,"count":0}],"isBlockCoverage":false},{"functionName":"pop","ranges":[{"startOffset":5621,"endOffset":5746,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":5750,"endOffset":5801,"count":0}],"isBlockCoverage":false},{"functionName":"load","ranges":[{"startOffset":5805,"endOffset":6378,"count":0}],"isBlockCoverage":false},{"functionName":"prune","ranges":[{"startOffset":6382,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6475,"endOffset":6871,"count":1},{"startOffset":6547,"endOffset":6869,"count":0}],"isBlockCoverage":true},{"functionName":"isStale","ranges":[{"startOffset":6889,"endOffset":7094,"count":0}],"isBlockCoverage":false},{"functionName":"trim","ranges":[{"startOffset":7109,"endOffset":7497,"count":1},{"startOffset":7151,"endOffset":7495,"count":0}],"isBlockCoverage":true},{"functionName":"del","ranges":[{"startOffset":7511,"endOffset":7738,"count":0}],"isBlockCoverage":false},{"functionName":"Entry","ranges":[{"startOffset":7756,"endOffset":7923,"count":1}],"isBlockCoverage":true},{"functionName":"forEachStep","ranges":[{"startOffset":7947,"endOffset":8158,"count":0}],"isBlockCoverage":false}]},{"scriptId":"195","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/yallist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8411,"count":1},{"startOffset":8397,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"Yallist","ranges":[{"startOffset":85,"endOffset":517,"count":1},{"startOffset":163,"endOffset":193,"count":0},{"startOffset":263,"endOffset":300,"count":0},{"startOffset":302,"endOffset":371,"count":0},{"startOffset":403,"endOffset":500,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":321,"endOffset":366,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.removeNode","ranges":[{"startOffset":550,"endOffset":1001,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshiftNode","ranges":[{"startOffset":1035,"endOffset":1334,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.pushNode","ranges":[{"startOffset":1365,"endOffset":1664,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.push","ranges":[{"startOffset":1691,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshift","ranges":[{"startOffset":1844,"endOffset":1970,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.pop","ranges":[{"startOffset":1996,"endOffset":2224,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.shift","ranges":[{"startOffset":2252,"endOffset":2480,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEach","ranges":[{"startOffset":2510,"endOffset":2691,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEachReverse","ranges":[{"startOffset":2728,"endOffset":2923,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.get","ranges":[{"startOffset":2949,"endOffset":3182,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.getReverse","ranges":[{"startOffset":3215,"endOffset":3448,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.map","ranges":[{"startOffset":3474,"endOffset":3690,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.mapReverse","ranges":[{"startOffset":3723,"endOffset":3939,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduce","ranges":[{"startOffset":3968,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduceReverse","ranges":[{"startOffset":4399,"endOffset":4808,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArray","ranges":[{"startOffset":4838,"endOffset":5018,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArrayReverse","ranges":[{"startOffset":5055,"endOffset":5235,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.slice","ranges":[{"startOffset":5263,"endOffset":5790,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.sliceReverse","ranges":[{"startOffset":5825,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.splice","ranges":[{"startOffset":6391,"endOffset":7034,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reverse","ranges":[{"startOffset":7064,"endOffset":7322,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":7324,"endOffset":7643,"count":0}],"isBlockCoverage":false},{"functionName":"push","ranges":[{"startOffset":7645,"endOffset":7793,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":7795,"endOffset":7946,"count":1}],"isBlockCoverage":true},{"functionName":"Node","ranges":[{"startOffset":7948,"endOffset":8300,"count":1},{"startOffset":8021,"endOffset":8071,"count":0},{"startOffset":8126,"endOffset":8173,"count":0},{"startOffset":8219,"endOffset":8266,"count":0}],"isBlockCoverage":true}]},{"scriptId":"196","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/iterator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":207,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":30,"endOffset":206,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.","ranges":[{"startOffset":90,"endOffset":204,"count":0}],"isBlockCoverage":false}]},{"scriptId":"197","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/satisfies.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":233,"count":1}],"isBlockCoverage":true},{"functionName":"satisfies","ranges":[{"startOffset":60,"endOffset":205,"count":1},{"startOffset":141,"endOffset":174,"count":0}],"isBlockCoverage":true}]},{"scriptId":"198","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/to-comparators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":268,"count":1}],"isBlockCoverage":true},{"functionName":"toComparators","ranges":[{"startOffset":115,"endOffset":235,"count":0}],"isBlockCoverage":false}]},{"scriptId":"199","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/max-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":579,"count":1}],"isBlockCoverage":true},{"functionName":"maxSatisfying","ranges":[{"startOffset":109,"endOffset":547,"count":0}],"isBlockCoverage":false}]},{"scriptId":"200","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":577,"count":1}],"isBlockCoverage":true},{"functionName":"minSatisfying","ranges":[{"startOffset":108,"endOffset":545,"count":0}],"isBlockCoverage":false}]},{"scriptId":"201","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1492,"count":1}],"isBlockCoverage":true},{"functionName":"minVersion","ranges":[{"startOffset":144,"endOffset":1463,"count":0}],"isBlockCoverage":false}]},{"scriptId":"202","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":312,"count":1}],"isBlockCoverage":true},{"functionName":"validRange","ranges":[{"startOffset":61,"endOffset":283,"count":0}],"isBlockCoverage":false}]},{"scriptId":"203","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/outside.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2188,"count":1}],"isBlockCoverage":true},{"functionName":"outside","ranges":[{"startOffset":388,"endOffset":2161,"count":0}],"isBlockCoverage":false}]},{"scriptId":"204","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/gtr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":217,"count":1}],"isBlockCoverage":true},{"functionName":"gtr","ranges":[{"startOffset":129,"endOffset":195,"count":0}],"isBlockCoverage":false}]},{"scriptId":"205","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/ltr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":213,"count":1}],"isBlockCoverage":true},{"functionName":"ltr","ranges":[{"startOffset":125,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"206","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/intersects.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":201,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":61,"endOffset":172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"207","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/simplify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1287,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":329,"endOffset":1286,"count":0}],"isBlockCoverage":false}]},{"scriptId":"208","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/subset.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7224,"count":1}],"isBlockCoverage":true},{"functionName":"subset","ranges":[{"startOffset":1996,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"simpleSubset","ranges":[{"startOffset":2726,"endOffset":6700,"count":0}],"isBlockCoverage":false},{"functionName":"higherGT","ranges":[{"startOffset":6751,"endOffset":6949,"count":0}],"isBlockCoverage":false},{"functionName":"lowerLT","ranges":[{"startOffset":7000,"endOffset":7198,"count":0}],"isBlockCoverage":false}]},{"scriptId":"209","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/binary.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1697,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":1534,"endOffset":1695,"count":1}],"isBlockCoverage":true}]},{"scriptId":"210","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1579,"count":1},{"startOffset":1483,"endOffset":1510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"211","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":95,"count":1}],"isBlockCoverage":true}]},{"scriptId":"212","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/convert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4855,"count":1}],"isBlockCoverage":true},{"functionName":"parseQuery","ranges":[{"startOffset":0,"endOffset":2315,"count":35},{"startOffset":43,"endOffset":77,"count":27},{"startOffset":79,"endOffset":138,"count":8},{"startOffset":138,"endOffset":2314,"count":27}],"isBlockCoverage":true},{"functionName":"subQuery","ranges":[{"startOffset":183,"endOffset":525,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":556,"endOffset":2252,"count":27},{"startOffset":588,"endOffset":645,"count":0},{"startOffset":671,"endOffset":729,"count":0},{"startOffset":1036,"endOffset":1352,"count":0},{"startOffset":1731,"endOffset":1809,"count":0},{"startOffset":1835,"endOffset":1918,"count":0},{"startOffset":1956,"endOffset":1995,"count":0},{"startOffset":2035,"endOffset":2085,"count":0},{"startOffset":2122,"endOffset":2161,"count":0},{"startOffset":2198,"endOffset":2248,"count":0}],"isBlockCoverage":true},{"functionName":"parseEquality","ranges":[{"startOffset":758,"endOffset":917,"count":162},{"startOffset":853,"endOffset":916,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1186,"endOffset":1344,"count":0}],"isBlockCoverage":false},{"functionName":"parseFields","ranges":[{"startOffset":2317,"endOffset":2689,"count":35},{"startOffset":2421,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2440,"endOffset":2615,"count":0}],"isBlockCoverage":false},{"functionName":"parseOrder","ranges":[{"startOffset":2691,"endOffset":3464,"count":35},{"startOffset":2792,"endOffset":3463,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2810,"endOffset":3039,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3075,"endOffset":3388,"count":0}],"isBlockCoverage":false},{"functionName":"convert","ranges":[{"startOffset":3466,"endOffset":4827,"count":35},{"startOffset":4118,"endOffset":4386,"count":0},{"startOffset":4423,"endOffset":4696,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4736,"endOffset":4750,"count":105}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4756,"endOffset":4775,"count":35}],"isBlockCoverage":true}]},{"scriptId":"213","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/createQuery.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":452,"count":1}],"isBlockCoverage":true},{"functionName":"createQuery","ranges":[{"startOffset":0,"endOffset":420,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":120,"endOffset":403,"count":54},{"startOffset":229,"endOffset":399,"count":0}],"isBlockCoverage":true}]},{"scriptId":"214","url":"tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10936,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3218,"endOffset":3282,"count":0}],"isBlockCoverage":false},{"functionName":"cacheRootCertificates","ranges":[{"startOffset":3310,"endOffset":3404,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3508,"endOffset":3659,"count":38},{"startOffset":3602,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"convertProtocols","ranges":[{"startOffset":3769,"endOffset":4366,"count":0}],"isBlockCoverage":false},{"functionName":"convertALPNProtocols","ranges":[{"startOffset":4399,"endOffset":4736,"count":0}],"isBlockCoverage":false},{"functionName":"unfqdn","ranges":[{"startOffset":4739,"endOffset":4799,"count":90}],"isBlockCoverage":true},{"functionName":"toLowerCase","ranges":[{"startOffset":4907,"endOffset":5001,"count":0}],"isBlockCoverage":false},{"functionName":"splitHost","ranges":[{"startOffset":5003,"endOffset":5140,"count":60}],"isBlockCoverage":true},{"functionName":"check","ranges":[{"startOffset":5142,"endOffset":7004,"count":30},{"startOffset":5265,"endOffset":5278,"count":0},{"startOffset":5376,"endOffset":5389,"count":0},{"startOffset":5488,"endOffset":5501,"count":0},{"startOffset":5856,"endOffset":5869,"count":0},{"startOffset":5971,"endOffset":6038,"count":0},{"startOffset":6424,"endOffset":6460,"count":0},{"startOffset":6508,"endOffset":7003,"count":0}],"isBlockCoverage":true},{"functionName":"isBad","ranges":[{"startOffset":5784,"endOffset":5818,"count":30}],"isBlockCoverage":true},{"functionName":"checkServerIdentity","ranges":[{"startOffset":7067,"endOffset":9523,"count":30},{"startOffset":7296,"endOffset":8182,"count":0},{"startOffset":8430,"endOffset":8649,"count":0},{"startOffset":8817,"endOffset":9074,"count":0},{"startOffset":9223,"endOffset":9249,"count":0},{"startOffset":9326,"endOffset":9380,"count":0},{"startOffset":9390,"endOffset":9431,"count":0},{"startOffset":9447,"endOffset":9521,"count":0}],"isBlockCoverage":true},{"functionName":"wildcard","ranges":[{"startOffset":8749,"endOffset":8793,"count":30}],"isBlockCoverage":true},{"functionName":"noWildcard","ranges":[{"startOffset":8844,"endOffset":8889,"count":0}],"isBlockCoverage":false},{"functionName":"SecurePair","ranges":[{"startOffset":9569,"endOffset":10165,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":10169,"endOffset":10244,"count":0}],"isBlockCoverage":false},{"functionName":"createSecurePair","ranges":[{"startOffset":10762,"endOffset":10838,"count":0}],"isBlockCoverage":false}]},{"scriptId":"215","url":"internal/tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":671,"count":1}],"isBlockCoverage":false},{"functionName":"parseCertString","ranges":[{"startOffset":164,"endOffset":629,"count":120},{"startOffset":264,"endOffset":613,"count":600},{"startOffset":441,"endOffset":562,"count":0}],"isBlockCoverage":true}]},{"scriptId":"216","url":"internal/streams/duplexpair.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"DuplexSocket","ranges":[{"startOffset":203,"endOffset":292,"count":0}],"isBlockCoverage":false},{"functionName":"_read","ranges":[{"startOffset":296,"endOffset":421,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":425,"endOffset":629,"count":0}],"isBlockCoverage":false},{"functionName":"_final","ranges":[{"startOffset":633,"endOffset":730,"count":0}],"isBlockCoverage":false},{"functionName":"DuplexPair","ranges":[{"startOffset":755,"endOffset":942,"count":0}],"isBlockCoverage":false}]},{"scriptId":"217","url":"_tls_common.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11156,"count":1}],"isBlockCoverage":false},{"functionName":"toV","ranges":[{"startOffset":1778,"endOffset":2071,"count":74},{"startOffset":1855,"endOffset":1875,"count":0},{"startOffset":1899,"endOffset":1921,"count":0},{"startOffset":1945,"endOffset":2013,"count":37},{"startOffset":2013,"endOffset":2070,"count":0}],"isBlockCoverage":true},{"functionName":"SecureContext","ranges":[{"startOffset":2147,"endOffset":2921,"count":37},{"startOffset":2267,"endOffset":2386,"count":0},{"startOffset":2410,"endOffset":2629,"count":0},{"startOffset":2880,"endOffset":2919,"count":7}],"isBlockCoverage":true},{"functionName":"validateKeyOrCertOption","ranges":[{"startOffset":2923,"endOffset":3174,"count":111},{"startOffset":3033,"endOffset":3172,"count":0}],"isBlockCoverage":true},{"functionName":"createSecureContext","ranges":[{"startOffset":3247,"endOffset":10200,"count":37},{"startOffset":3303,"endOffset":3316,"count":0},{"startOffset":3399,"endOffset":3448,"count":7},{"startOffset":3852,"endOffset":3937,"count":0},{"startOffset":3941,"endOffset":3982,"count":0},{"startOffset":4054,"endOffset":4179,"count":0},{"startOffset":4604,"endOffset":4880,"count":0},{"startOffset":5047,"endOffset":5301,"count":0},{"startOffset":5407,"endOffset":6582,"count":0},{"startOffset":6606,"endOffset":6644,"count":30},{"startOffset":6646,"endOffset":6740,"count":0},{"startOffset":7067,"endOffset":7089,"count":7},{"startOffset":7329,"endOffset":7349,"count":0},{"startOffset":7351,"endOffset":7543,"count":0},{"startOffset":7651,"endOffset":7694,"count":0},{"startOffset":7695,"endOffset":7744,"count":0},{"startOffset":7750,"endOffset":7788,"count":0},{"startOffset":7814,"endOffset":7857,"count":0},{"startOffset":7858,"endOffset":7907,"count":0},{"startOffset":7913,"endOffset":7951,"count":0},{"startOffset":8043,"endOffset":8120,"count":0},{"startOffset":8145,"endOffset":8281,"count":0},{"startOffset":8302,"endOffset":8478,"count":0},{"startOffset":8512,"endOffset":8578,"count":7},{"startOffset":8599,"endOffset":9284,"count":0},{"startOffset":9474,"endOffset":9539,"count":30},{"startOffset":9593,"endOffset":9767,"count":0},{"startOffset":9811,"endOffset":10009,"count":0},{"startOffset":10037,"endOffset":10091,"count":0},{"startOffset":10123,"endOffset":10185,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7139,"endOffset":7215,"count":888},{"startOffset":7164,"endOffset":7215,"count":777}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7266,"endOffset":7289,"count":888}],"isBlockCoverage":true},{"functionName":"translatePeerCertificate","ranges":[{"startOffset":10475,"endOffset":11154,"count":60},{"startOffset":10528,"endOffset":10540,"count":0},{"startOffset":10668,"endOffset":10746,"count":30},{"startOffset":10840,"endOffset":11140,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10994,"endOffset":11134,"count":0}],"isBlockCoverage":false}]},{"scriptId":"218","url":"_tls_wrap.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47991,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1763,"endOffset":1788,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3528,"endOffset":3536,"count":30}],"isBlockCoverage":true},{"functionName":"onhandshakestart","ranges":[{"startOffset":3712,"endOffset":4495,"count":30},{"startOffset":4072,"endOffset":4493,"count":0}],"isBlockCoverage":true},{"functionName":"onhandshakedone","ranges":[{"startOffset":4497,"endOffset":4790,"count":30},{"startOffset":4714,"endOffset":4764,"count":0}],"isBlockCoverage":true},{"functionName":"loadSession","ranges":[{"startOffset":4793,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"loadSNI","ranges":[{"startOffset":6000,"endOffset":6653,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSP","ranges":[{"startOffset":6656,"endOffset":7978,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSPDone","ranges":[{"startOffset":7980,"endOffset":8175,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsessionclient","ranges":[{"startOffset":8177,"endOffset":8413,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsession","ranges":[{"startOffset":8415,"endOffset":9251,"count":0}],"isBlockCoverage":false},{"functionName":"onPskServerCallback","ranges":[{"startOffset":9253,"endOffset":9901,"count":0}],"isBlockCoverage":false},{"functionName":"onPskClientCallback","ranges":[{"startOffset":9903,"endOffset":10667,"count":0}],"isBlockCoverage":false},{"functionName":"onkeylog","ranges":[{"startOffset":10669,"endOffset":10760,"count":0}],"isBlockCoverage":false},{"functionName":"onocspresponse","ranges":[{"startOffset":10762,"endOffset":10878,"count":0}],"isBlockCoverage":false},{"functionName":"onerror","ranges":[{"startOffset":10880,"endOffset":11656,"count":0}],"isBlockCoverage":false},{"functionName":"initRead","ranges":[{"startOffset":11800,"endOffset":12346,"count":60},{"startOffset":11901,"endOffset":11911,"count":30},{"startOffset":11912,"endOffset":11922,"count":30},{"startOffset":11994,"endOffset":12018,"count":30},{"startOffset":12109,"endOffset":12116,"count":0},{"startOffset":12197,"endOffset":12221,"count":30},{"startOffset":12223,"endOffset":12322,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket","ranges":[{"startOffset":12424,"endOffset":14710,"count":60},{"startOffset":12616,"endOffset":12636,"count":0},{"startOffset":12638,"endOffset":12806,"count":0},{"startOffset":12810,"endOffset":12949,"count":0},{"startOffset":12987,"endOffset":13050,"count":0},{"startOffset":13525,"endOffset":13542,"count":30},{"startOffset":13544,"endOffset":13554,"count":30},{"startOffset":13674,"endOffset":13995,"count":0},{"startOffset":14206,"endOffset":14228,"count":30},{"startOffset":14229,"endOffset":14255,"count":30},{"startOffset":14546,"endOffset":14561,"count":0},{"startOffset":14567,"endOffset":14594,"count":0}],"isBlockCoverage":true},{"functionName":"makeMethodProxy","ranges":[{"startOffset":15153,"endOffset":15320,"count":15}],"isBlockCoverage":true},{"functionName":"methodProxy","ranges":[{"startOffset":15195,"endOffset":15317,"count":30}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":15487,"endOffset":16180,"count":60},{"startOffset":16011,"endOffset":16055,"count":30},{"startOffset":16057,"endOffset":16179,"count":30}],"isBlockCoverage":true},{"functionName":"done","ranges":[{"startOffset":15768,"endOffset":15985,"count":60},{"startOffset":15855,"endOffset":15951,"count":30}],"isBlockCoverage":true},{"functionName":"disableRenegotiation","ranges":[{"startOffset":16226,"endOffset":16299,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._wrapHandle","ranges":[{"startOffset":16336,"endOffset":17339,"count":60},{"startOffset":16384,"endOffset":16406,"count":30},{"startOffset":16459,"endOffset":16600,"count":30},{"startOffset":16487,"endOffset":16525,"count":0},{"startOffset":16668,"endOffset":16708,"count":0},{"startOffset":16709,"endOffset":16762,"count":0},{"startOffset":16883,"endOffset":16938,"count":0}],"isBlockCoverage":true},{"functionName":"defineHandleReading","ranges":[{"startOffset":17478,"endOffset":17699,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17578,"endOffset":17626,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17637,"endOffset":17691,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketCloseDestroySSL","ranges":[{"startOffset":17701,"endOffset":17848,"count":60}],"isBlockCoverage":true},{"functionName":"destroySSL","ranges":[{"startOffset":17850,"endOffset":17901,"count":60}],"isBlockCoverage":true},{"functionName":"_destroySSL","ranges":[{"startOffset":17937,"endOffset":18229,"count":60},{"startOffset":17986,"endOffset":18228,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._init","ranges":[{"startOffset":18368,"endOffset":23192,"count":60},{"startOffset":18535,"endOffset":18545,"count":30},{"startOffset":18546,"endOffset":18556,"count":30},{"startOffset":18748,"endOffset":18768,"count":0},{"startOffset":18932,"endOffset":18953,"count":0},{"startOffset":19400,"endOffset":19992,"count":30},{"startOffset":19786,"endOffset":19898,"count":0},{"startOffset":19963,"endOffset":19982,"count":0},{"startOffset":19992,"endOffset":20637,"count":30},{"startOffset":20212,"endOffset":20244,"count":0},{"startOffset":20656,"endOffset":21199,"count":0},{"startOffset":21382,"endOffset":21410,"count":30},{"startOffset":21411,"endOffset":21519,"count":30},{"startOffset":21521,"endOffset":21650,"count":0},{"startOffset":21681,"endOffset":21857,"count":0},{"startOffset":21885,"endOffset":21909,"count":0},{"startOffset":21911,"endOffset":22610,"count":0},{"startOffset":22653,"endOffset":22716,"count":30},{"startOffset":22754,"endOffset":23027,"count":30},{"startOffset":23069,"endOffset":23190,"count":30}],"isBlockCoverage":true},{"functionName":"keylogNewListener","ranges":[{"startOffset":19143,"endOffset":19374,"count":570},{"startOffset":19220,"endOffset":19373,"count":0}],"isBlockCoverage":true},{"functionName":"ssl.onhandshakedone","ranges":[{"startOffset":20059,"endOffset":20137,"count":30}],"isBlockCoverage":true},{"functionName":"newListener","ranges":[{"startOffset":20399,"endOffset":20633,"count":360},{"startOffset":20475,"endOffset":20632,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":20889,"endOffset":21193,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22949,"endOffset":23021,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23092,"endOffset":23124,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.renegotiate","ranges":[{"startOffset":23229,"endOffset":24588,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.exportKeyingMaterial","ranges":[{"startOffset":24634,"endOffset":24956,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxSendFragment","ranges":[{"startOffset":25000,"endOffset":25091,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._handleTimeout","ranges":[{"startOffset":25131,"endOffset":25200,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._emitTLSError","ranges":[{"startOffset":25239,"endOffset":25325,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._tlsError","ranges":[{"startOffset":25360,"endOffset":25468,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._releaseControl","ranges":[{"startOffset":25509,"endOffset":25665,"count":60},{"startOffset":25555,"endOffset":25568,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._finishInit","ranges":[{"startOffset":25702,"endOffset":26761,"count":60},{"startOffset":26182,"endOffset":26189,"count":0},{"startOffset":26479,"endOffset":26489,"count":30},{"startOffset":26490,"endOffset":26500,"count":30},{"startOffset":26696,"endOffset":26736,"count":30}],"isBlockCoverage":true},{"functionName":"TLSSocket._start","ranges":[{"startOffset":26793,"endOffset":27292,"count":30},{"startOffset":26861,"endOffset":26871,"count":0},{"startOffset":27043,"endOffset":27099,"count":0},{"startOffset":27190,"endOffset":27197,"count":0},{"startOffset":27239,"endOffset":27266,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.setServername","ranges":[{"startOffset":27331,"endOffset":27499,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.setSession","ranges":[{"startOffset":27535,"endOffset":27673,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.getPeerCertificate","ranges":[{"startOffset":27717,"endOffset":27881,"count":30},{"startOffset":27853,"endOffset":27858,"count":0},{"startOffset":27863,"endOffset":27880,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.getCertificate","ranges":[{"startOffset":27921,"endOffset":28127,"count":0}],"isBlockCoverage":false},{"functionName":"makeSocketMethodProxy","ranges":[{"startOffset":28164,"endOffset":28354,"count":10}],"isBlockCoverage":true},{"functionName":"socketMethodProxy","ranges":[{"startOffset":28212,"endOffset":28351,"count":60},{"startOffset":28330,"endOffset":28350,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":28557,"endOffset":28635,"count":10}],"isBlockCoverage":true},{"functionName":"onServerSocketSecure","ranges":[{"startOffset":28677,"endOffset":29172,"count":30},{"startOffset":28811,"endOffset":28929,"count":0}],"isBlockCoverage":true},{"functionName":"onSocketTLSError","ranges":[{"startOffset":29174,"endOffset":29410,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketKeylog","ranges":[{"startOffset":29412,"endOffset":29499,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketClose","ranges":[{"startOffset":29501,"endOffset":29854,"count":30},{"startOffset":29602,"endOffset":29609,"count":0},{"startOffset":29661,"endOffset":29684,"count":0},{"startOffset":29686,"endOffset":29852,"count":0}],"isBlockCoverage":true},{"functionName":"tlsConnectionListener","ranges":[{"startOffset":29856,"endOffset":30705,"count":30},{"startOffset":30552,"endOffset":30588,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":33471,"endOffset":35377,"count":7},{"startOffset":33545,"endOffset":33582,"count":0},{"startOffset":33621,"endOffset":33668,"count":0},{"startOffset":33750,"endOffset":33755,"count":0},{"startOffset":33760,"endOffset":33837,"count":0},{"startOffset":34014,"endOffset":34059,"count":0},{"startOffset":34091,"endOffset":34128,"count":0},{"startOffset":34163,"endOffset":34217,"count":0},{"startOffset":34516,"endOffset":34628,"count":0},{"startOffset":34655,"endOffset":34698,"count":0},{"startOffset":34700,"endOffset":34804,"count":0},{"startOffset":34831,"endOffset":34874,"count":0},{"startOffset":34876,"endOffset":34980,"count":0},{"startOffset":35010,"endOffset":35055,"count":0},{"startOffset":35057,"endOffset":35184,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":35531,"endOffset":35615,"count":7}],"isBlockCoverage":true},{"functionName":"Server.setSecureContext","ranges":[{"startOffset":35655,"endOffset":38690,"count":7},{"startOffset":35734,"endOffset":35795,"count":0},{"startOffset":35820,"endOffset":35843,"count":0},{"startOffset":35924,"endOffset":35957,"count":0},{"startOffset":35989,"endOffset":36026,"count":0},{"startOffset":36117,"endOffset":36151,"count":0},{"startOffset":36189,"endOffset":36238,"count":0},{"startOffset":36329,"endOffset":36361,"count":0},{"startOffset":36393,"endOffset":36430,"count":0},{"startOffset":36502,"endOffset":36539,"count":0},{"startOffset":36615,"endOffset":36660,"count":0},{"startOffset":36729,"endOffset":36752,"count":0},{"startOffset":36849,"endOffset":36880,"count":0},{"startOffset":36985,"endOffset":37016,"count":0},{"startOffset":37105,"endOffset":37156,"count":0},{"startOffset":37277,"endOffset":37312,"count":0},{"startOffset":37389,"endOffset":37448,"count":0},{"startOffset":37713,"endOffset":37758,"count":0},{"startOffset":37790,"endOffset":37827,"count":0}],"isBlockCoverage":true},{"functionName":"Server._getServerData","ranges":[{"startOffset":38728,"endOffset":38811,"count":0}],"isBlockCoverage":false},{"functionName":"Server._setServerData","ranges":[{"startOffset":38849,"endOffset":38926,"count":0}],"isBlockCoverage":false},{"functionName":"getTicketKeys","ranges":[{"startOffset":38963,"endOffset":39043,"count":0}],"isBlockCoverage":false},{"functionName":"setTicketKeys","ranges":[{"startOffset":39080,"endOffset":39161,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39205,"endOffset":41320,"count":0}],"isBlockCoverage":false},{"functionName":"Server.addContext","ranges":[{"startOffset":41443,"endOffset":41808,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":41857,"endOffset":42091,"count":0}],"isBlockCoverage":false},{"functionName":"SNICallback","ranges":[{"startOffset":42094,"endOffset":42337,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeConnectArgs","ranges":[{"startOffset":42570,"endOffset":43298,"count":30},{"startOffset":43097,"endOffset":43142,"count":0},{"startOffset":43209,"endOffset":43254,"count":0},{"startOffset":43284,"endOffset":43295,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectSecure","ranges":[{"startOffset":43300,"endOffset":45064,"count":30},{"startOffset":43537,"endOffset":43573,"count":0},{"startOffset":43575,"endOffset":43731,"count":0},{"startOffset":44026,"endOffset":44088,"count":0},{"startOffset":44089,"endOffset":44122,"count":0},{"startOffset":44259,"endOffset":44689,"count":0},{"startOffset":44987,"endOffset":45017,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectEnd","ranges":[{"startOffset":45066,"endOffset":45615,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":45681,"endOffset":47989,"count":30},{"startOffset":47231,"endOffset":47281,"count":0},{"startOffset":47391,"endOffset":47427,"count":0},{"startOffset":47455,"endOffset":47833,"count":0},{"startOffset":47861,"endOffset":47878,"count":0}],"isBlockCoverage":true}]},{"scriptId":"219","url":"internal/js_stream_socket.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7449,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":335,"endOffset":364,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":693,"endOffset":756,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstart","ranges":[{"startOffset":758,"endOffset":823,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstop","ranges":[{"startOffset":825,"endOffset":888,"count":0}],"isBlockCoverage":false},{"functionName":"onshutdown","ranges":[{"startOffset":890,"endOffset":961,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":963,"endOffset":1040,"count":0}],"isBlockCoverage":false},{"functionName":"JSStreamSocket","ranges":[{"startOffset":1800,"endOffset":3495,"count":0}],"isBlockCoverage":false},{"functionName":"get StreamWrap","ranges":[{"startOffset":3635,"endOffset":3684,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":3688,"endOffset":3750,"count":0}],"isBlockCoverage":false},{"functionName":"readStart","ranges":[{"startOffset":3754,"endOffset":3811,"count":0}],"isBlockCoverage":false},{"functionName":"readStop","ranges":[{"startOffset":3815,"endOffset":3870,"count":0}],"isBlockCoverage":false},{"functionName":"doShutdown","ranges":[{"startOffset":3874,"endOffset":4870,"count":0}],"isBlockCoverage":false},{"functionName":"finishShutdown","ranges":[{"startOffset":4938,"endOffset":5230,"count":0}],"isBlockCoverage":false},{"functionName":"doWrite","ranges":[{"startOffset":5234,"endOffset":6156,"count":0}],"isBlockCoverage":false},{"functionName":"finishWrite","ranges":[{"startOffset":6224,"endOffset":6667,"count":0}],"isBlockCoverage":false},{"functionName":"doClose","ranges":[{"startOffset":6671,"endOffset":7412,"count":0}],"isBlockCoverage":false}]},{"scriptId":"220","url":"cluster.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1288,"count":1}],"isBlockCoverage":false}]},{"scriptId":"221","url":"internal/cluster/master.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10797,"count":1}],"isBlockCoverage":false},{"functionName":"cluster.setupMaster","ranges":[{"startOffset":1751,"endOffset":3368,"count":0}],"isBlockCoverage":false},{"functionName":"setupSettingsNT","ranges":[{"startOffset":3371,"endOffset":3444,"count":0}],"isBlockCoverage":false},{"functionName":"createWorkerProcess","ranges":[{"startOffset":3446,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"removeWorker","ranges":[{"startOffset":4852,"endOffset":5087,"count":0}],"isBlockCoverage":false},{"functionName":"removeHandlesForWorker","ranges":[{"startOffset":5089,"endOffset":5252,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.fork","ranges":[{"startOffset":5269,"endOffset":6877,"count":0}],"isBlockCoverage":false},{"functionName":"emitForkNT","ranges":[{"startOffset":6880,"endOffset":6943,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.disconnect","ranges":[{"startOffset":6966,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"onmessage","ranges":[{"startOffset":7340,"endOffset":7763,"count":0}],"isBlockCoverage":false},{"functionName":"online","ranges":[{"startOffset":7765,"endOffset":7878,"count":0}],"isBlockCoverage":false},{"functionName":"exitedAfterDisconnect","ranges":[{"startOffset":7880,"endOffset":8008,"count":0}],"isBlockCoverage":false},{"functionName":"queryServer","ranges":[{"startOffset":8010,"endOffset":9580,"count":0}],"isBlockCoverage":false},{"functionName":"listening","ranges":[{"startOffset":9582,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":10017,"endOffset":10179,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":10181,"endOffset":10285,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.disconnect","ranges":[{"startOffset":10387,"endOffset":10544,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.destroy","ranges":[{"startOffset":10574,"endOffset":10795,"count":0}],"isBlockCoverage":false}]},{"scriptId":"222","url":"child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20033,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1538,"endOffset":1567,"count":0}],"isBlockCoverage":false},{"functionName":"fork","ranges":[{"startOffset":2262,"endOffset":3916,"count":0}],"isBlockCoverage":false},{"functionName":"_forkChild","ranges":[{"startOffset":3918,"endOffset":4407,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeExecArgs","ranges":[{"startOffset":4409,"endOffset":4817,"count":0}],"isBlockCoverage":false},{"functionName":"exec","ranges":[{"startOffset":4820,"endOffset":5067,"count":0}],"isBlockCoverage":false},{"functionName":"customPromiseExecFunction","ranges":[{"startOffset":5103,"endOffset":5531,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5124,"endOffset":5528,"count":0}],"isBlockCoverage":false},{"functionName":"execFile","ranges":[{"startOffset":5648,"endOffset":10990,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeSpawnArguments","ranges":[{"startOffset":11114,"endOffset":15353,"count":0}],"isBlockCoverage":false},{"functionName":"spawn","ranges":[{"startOffset":15356,"endOffset":15558,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":15560,"endOffset":17046,"count":0}],"isBlockCoverage":false},{"functionName":"checkExecSyncError","ranges":[{"startOffset":17049,"endOffset":17478,"count":0}],"isBlockCoverage":false},{"functionName":"execFileSync","ranges":[{"startOffset":17481,"endOffset":17891,"count":0}],"isBlockCoverage":false},{"functionName":"execSync","ranges":[{"startOffset":17894,"endOffset":18270,"count":0}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":18273,"endOffset":18461,"count":0}],"isBlockCoverage":false},{"functionName":"validateMaxBuffer","ranges":[{"startOffset":18464,"endOffset":18737,"count":0}],"isBlockCoverage":false},{"functionName":"sanitizeKillSignal","ranges":[{"startOffset":18740,"endOffset":19103,"count":0}],"isBlockCoverage":false},{"functionName":"spawnWithSignal","ranges":[{"startOffset":19252,"endOffset":19886,"count":0}],"isBlockCoverage":false}]},{"scriptId":"223","url":"internal/child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30647,"count":1}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2131,"endOffset":2190,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2197,"endOffset":2251,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2312,"endOffset":2379,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2386,"endOffset":2527,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2556,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"postSend","ranges":[{"startOffset":4117,"endOffset":4863,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":4870,"endOffset":5325,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5389,"endOffset":5448,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5455,"endOffset":5509,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5573,"endOffset":5693,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5700,"endOffset":5859,"count":0}],"isBlockCoverage":false},{"functionName":"stdioStringToArray","ranges":[{"startOffset":5868,"endOffset":6215,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess","ranges":[{"startOffset":6217,"endOffset":7562,"count":0}],"isBlockCoverage":false},{"functionName":"flushStdio","ranges":[{"startOffset":7685,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":8166,"endOffset":8277,"count":0}],"isBlockCoverage":false},{"functionName":"getHandleWrapType","ranges":[{"startOffset":8280,"endOffset":8509,"count":0}],"isBlockCoverage":false},{"functionName":"closePendingHandle","ranges":[{"startOffset":8511,"endOffset":8624,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.spawn","ranges":[{"startOffset":8658,"endOffset":12526,"count":0}],"isBlockCoverage":false},{"functionName":"onErrorNT","ranges":[{"startOffset":12530,"endOffset":12591,"count":0}],"isBlockCoverage":false},{"functionName":"onSpawnNT","ranges":[{"startOffset":12594,"endOffset":12644,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.kill","ranges":[{"startOffset":12677,"endOffset":13342,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.ref","ranges":[{"startOffset":13375,"endOffset":13429,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.unref","ranges":[{"startOffset":13464,"endOffset":13520,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":13562,"endOffset":13619,"count":0}],"isBlockCoverage":false},{"functionName":"Control","ranges":[{"startOffset":13624,"endOffset":13692,"count":0}],"isBlockCoverage":false},{"functionName":"refCounted","ranges":[{"startOffset":14006,"endOffset":14114,"count":0}],"isBlockCoverage":false},{"functionName":"unrefCounted","ranges":[{"startOffset":14118,"endOffset":14256,"count":0}],"isBlockCoverage":false},{"functionName":"ref","ranges":[{"startOffset":14260,"endOffset":14331,"count":0}],"isBlockCoverage":false},{"functionName":"unref","ranges":[{"startOffset":14335,"endOffset":14410,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":14414,"endOffset":14485,"count":0}],"isBlockCoverage":false},{"functionName":"setupChannel","ranges":[{"startOffset":14635,"endOffset":26287,"count":0}],"isBlockCoverage":false},{"functionName":"isInternal","ranges":[{"startOffset":26322,"endOffset":26604,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":26606,"endOffset":26624,"count":0}],"isBlockCoverage":false},{"functionName":"getValidStdio","ranges":[{"startOffset":26626,"endOffset":29345,"count":0}],"isBlockCoverage":false},{"functionName":"getSocketList","ranges":[{"startOffset":29348,"endOffset":29664,"count":0}],"isBlockCoverage":false},{"functionName":"maybeClose","ranges":[{"startOffset":29667,"endOffset":29868,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":29870,"endOffset":30522,"count":0}],"isBlockCoverage":false}]},{"scriptId":"224","url":"dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":27406,"count":1}],"isBlockCoverage":false},{"functionName":"Socket","ranges":[{"startOffset":2704,"endOffset":3981,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":4092,"endOffset":4170,"count":0}],"isBlockCoverage":false},{"functionName":"startListening","ranges":[{"startOffset":4173,"endOffset":4607,"count":0}],"isBlockCoverage":false},{"functionName":"replaceHandle","ranges":[{"startOffset":4609,"endOffset":5179,"count":0}],"isBlockCoverage":false},{"functionName":"bufferSize","ranges":[{"startOffset":5181,"endOffset":5473,"count":0}],"isBlockCoverage":false},{"functionName":"bindServerHandle","ranges":[{"startOffset":5540,"endOffset":5963,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.bind","ranges":[{"startOffset":5989,"endOffset":9579,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.connect","ranges":[{"startOffset":9609,"endOffset":10351,"count":0}],"isBlockCoverage":false},{"functionName":"_connect","ranges":[{"startOffset":10355,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"doConnect","ranges":[{"startOffset":10703,"endOffset":11345,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.disconnect","ranges":[{"startOffset":11378,"endOffset":11685,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.sendto","ranges":[{"startOffset":11790,"endOffset":12231,"count":0}],"isBlockCoverage":false},{"functionName":"sliceBuffer","ranges":[{"startOffset":12235,"endOffset":12805,"count":0}],"isBlockCoverage":false},{"functionName":"fixBufferList","ranges":[{"startOffset":12808,"endOffset":13192,"count":0}],"isBlockCoverage":false},{"functionName":"enqueue","ranges":[{"startOffset":13195,"endOffset":13607,"count":0}],"isBlockCoverage":false},{"functionName":"onListenSuccess","ranges":[{"startOffset":13610,"endOffset":13730,"count":0}],"isBlockCoverage":false},{"functionName":"onListenError","ranges":[{"startOffset":13733,"endOffset":13857,"count":0}],"isBlockCoverage":false},{"functionName":"clearQueue","ranges":[{"startOffset":13860,"endOffset":14057,"count":0}],"isBlockCoverage":false},{"functionName":"isConnected","ranges":[{"startOffset":14059,"endOffset":14174,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.send","ranges":[{"startOffset":14746,"endOffset":17640,"count":0}],"isBlockCoverage":false},{"functionName":"doSend","ranges":[{"startOffset":17643,"endOffset":18782,"count":0}],"isBlockCoverage":false},{"functionName":"afterSend","ranges":[{"startOffset":18784,"endOffset":18961,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.close","ranges":[{"startOffset":18988,"endOffset":19523,"count":0}],"isBlockCoverage":false},{"functionName":"socketCloseNT","ranges":[{"startOffset":19527,"endOffset":19581,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":19611,"endOffset":19801,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.remoteAddress","ranges":[{"startOffset":19837,"endOffset":20147,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setBroadcast","ranges":[{"startOffset":20183,"endOffset":20331,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setTTL","ranges":[{"startOffset":20361,"endOffset":20535,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastTTL","ranges":[{"startOffset":20574,"endOffset":20766,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastLoopback","ranges":[{"startOffset":20810,"endOffset":21010,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastInterface","ranges":[{"startOffset":21055,"endOffset":21317,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addMembership","ranges":[{"startOffset":21353,"endOffset":21727,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropMembership","ranges":[{"startOffset":21765,"endOffset":22142,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addSourceSpecificMembership","ranges":[{"startOffset":22192,"endOffset":22949,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropSourceSpecificMembership","ranges":[{"startOffset":23001,"endOffset":23764,"count":0}],"isBlockCoverage":false},{"functionName":"healthCheck","ranges":[{"startOffset":23768,"endOffset":23931,"count":0}],"isBlockCoverage":false},{"functionName":"stopReceiving","ranges":[{"startOffset":23934,"endOffset":24098,"count":0}],"isBlockCoverage":false},{"functionName":"onMessage","ranges":[{"startOffset":24101,"endOffset":24355,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":24381,"endOffset":24488,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":24517,"endOffset":24626,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setRecvBufferSize","ranges":[{"startOffset":24667,"endOffset":24724,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setSendBufferSize","ranges":[{"startOffset":24765,"endOffset":24822,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getRecvBufferSize","ranges":[{"startOffset":24863,"endOffset":24920,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getSendBufferSize","ranges":[{"startOffset":24961,"endOffset":25018,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25119,"endOffset":25173,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25246,"endOffset":25302,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25435,"endOffset":25492,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25568,"endOffset":25627,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25763,"endOffset":25820,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25896,"endOffset":25955,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26087,"endOffset":26140,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26212,"endOffset":26267,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26399,"endOffset":26456,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26532,"endOffset":26591,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26697,"endOffset":26732,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26841,"endOffset":26878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":27144,"endOffset":27180,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27184,"endOffset":27225,"count":0}],"isBlockCoverage":false}]},{"scriptId":"225","url":"internal/dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1844,"count":1}],"isBlockCoverage":false},{"functionName":"lookup4","ranges":[{"startOffset":448,"endOffset":549,"count":0}],"isBlockCoverage":false},{"functionName":"lookup6","ranges":[{"startOffset":552,"endOffset":647,"count":0}],"isBlockCoverage":false},{"functionName":"newHandle","ranges":[{"startOffset":649,"endOffset":1317,"count":0}],"isBlockCoverage":false},{"functionName":"_createSocketHandle","ranges":[{"startOffset":1320,"endOffset":1768,"count":0}],"isBlockCoverage":false}]},{"scriptId":"226","url":"internal/socket_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2705,"count":1}],"isBlockCoverage":false},{"functionName":"SocketListSend","ranges":[{"startOffset":235,"endOffset":376,"count":0}],"isBlockCoverage":false},{"functionName":"_request","ranges":[{"startOffset":380,"endOffset":1035,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":1039,"endOffset":1189,"count":0}],"isBlockCoverage":false},{"functionName":"getConnections","ranges":[{"startOffset":1193,"endOffset":1428,"count":0}],"isBlockCoverage":false},{"functionName":"SocketListReceive","ranges":[{"startOffset":1542,"endOffset":2400,"count":0}],"isBlockCoverage":false},{"functionName":"add","ranges":[{"startOffset":2404,"endOffset":2645,"count":0}],"isBlockCoverage":false}]},{"scriptId":"227","url":"internal/cluster/round_robin_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3060,"count":1}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle","ranges":[{"startOffset":341,"endOffset":1127,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.add","ranges":[{"startOffset":1162,"endOffset":1791,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.remove","ranges":[{"startOffset":1830,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.distribute","ranges":[{"startOffset":2198,"endOffset":2448,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.handoff","ranges":[{"startOffset":2488,"endOffset":3058,"count":0}],"isBlockCoverage":false}]},{"scriptId":"228","url":"internal/cluster/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1039,"count":1}],"isBlockCoverage":false},{"functionName":"sendHelper","ranges":[{"startOffset":163,"endOffset":495,"count":0}],"isBlockCoverage":false},{"functionName":"internal","ranges":[{"startOffset":629,"endOffset":1038,"count":0}],"isBlockCoverage":false}]},{"scriptId":"229","url":"internal/cluster/shared_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1102,"count":1}],"isBlockCoverage":false},{"functionName":"SharedHandle","ranges":[{"startOffset":192,"endOffset":670,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.add","ranges":[{"startOffset":701,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.remove","ranges":[{"startOffset":880,"endOffset":1100,"count":0}],"isBlockCoverage":false}]},{"scriptId":"230","url":"internal/cluster/worker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1314,"count":1}],"isBlockCoverage":false},{"functionName":"Worker","ranges":[{"startOffset":227,"endOffset":809,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.kill","ranges":[{"startOffset":944,"endOffset":1005,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.send","ranges":[{"startOffset":1032,"endOffset":1113,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isDead","ranges":[{"startOffset":1142,"endOffset":1231,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isConnected","ranges":[{"startOffset":1265,"endOffset":1312,"count":0}],"isBlockCoverage":false}]},{"scriptId":"231","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/info.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":529,"count":1}],"isBlockCoverage":true},{"functionName":"infoController","ranges":[{"startOffset":37,"endOffset":496,"count":29},{"startOffset":350,"endOffset":379,"count":27},{"startOffset":381,"endOffset":494,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":240,"endOffset":308,"count":133}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":422,"endOffset":488,"count":127}],"isBlockCoverage":true}]},{"scriptId":"232","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":853,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":156,"endOffset":820,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":483,"endOffset":742,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":652,"endOffset":669,"count":3}],"isBlockCoverage":true}]},{"scriptId":"233","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/selectRandomItemsFromArray.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":256,"count":1}],"isBlockCoverage":true},{"functionName":"selectRandomItemFromArray","ranges":[{"startOffset":0,"endOffset":212,"count":3},{"startOffset":88,"endOffset":105,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":145,"endOffset":170,"count":0}],"isBlockCoverage":false}]},{"scriptId":"234","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":958,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":37,"endOffset":925,"count":3}],"isBlockCoverage":true}]},{"scriptId":"235","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":514,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":37,"endOffset":482,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":169,"endOffset":339,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":383,"endOffset":407,"count":1}],"isBlockCoverage":true}]},{"scriptId":"236","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1072,"count":1}],"isBlockCoverage":true},{"functionName":"internalGetController","ranges":[{"startOffset":37,"endOffset":1032,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":591,"endOffset":613,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":670,"endOffset":940,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":754,"endOffset":843,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":803,"endOffset":835,"count":3}],"isBlockCoverage":true}]}],"timestamp":96229.426708} \ No newline at end of file diff --git a/test/helpers/createTestServer.js b/test/helpers/createTestServer.js index e27965c..5eaf35d 100644 --- a/test/helpers/createTestServer.js +++ b/test/helpers/createTestServer.js @@ -2,6 +2,9 @@ import fs from 'fs'; import { v4 as uuid } from 'uuid'; import canhazdb from '../../lib/index.js'; +fs.rmdirSync('./canhazdata', { recursive: true }); +fs.mkdirSync('./canhazdata'); + const tls = { key: fs.readFileSync('./certs/localhost.privkey.pem'), cert: fs.readFileSync('./certs/localhost.cert.pem'), From e83fbb864ad4383b975dd7bca9de401f77374ac4 Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 20:47:46 +1000 Subject: [PATCH 06/73] Ignore coverage --- .gitignore | 1 + coverage/tmp/coverage-267928-1623581236821-0.json | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 coverage/tmp/coverage-267928-1623581236821-0.json diff --git a/.gitignore b/.gitignore index ed6c829..f99081e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ node_modules canhazdata certs +coverage diff --git a/coverage/tmp/coverage-267928-1623581236821-0.json b/coverage/tmp/coverage-267928-1623581236821-0.json deleted file mode 100644 index c961e34..0000000 --- a/coverage/tmp/coverage-267928-1623581236821-0.json +++ /dev/null @@ -1 +0,0 @@ -{"result":[{"scriptId":"6","url":"internal/per_context/primordials.js","functions":[{"functionName":"uncurryThis","ranges":[{"startOffset":1000,"endOffset":1096,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1038,"endOffset":1093,"count":7058}],"isBlockCoverage":true}]},{"scriptId":"9","url":"internal/bootstrap/loaders.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10311,"count":1}],"isBlockCoverage":true},{"functionName":"binding","ranges":[{"startOffset":3652,"endOffset":4049,"count":0}],"isBlockCoverage":false},{"functionName":"_linkedBinding","ranges":[{"startOffset":4079,"endOffset":4287,"count":0}],"isBlockCoverage":false},{"functionName":"internalBinding","ranges":[{"startOffset":4467,"endOffset":4729,"count":288},{"startOffset":4569,"endOffset":4709,"count":40}],"isBlockCoverage":true},{"functionName":"getOwn","ranges":[{"startOffset":4874,"endOffset":5028,"count":1584},{"startOffset":5010,"endOffset":5025,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5395,"endOffset":5493,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5454,"endOffset":5488,"count":232}],"isBlockCoverage":true},{"functionName":"NativeModule","ranges":[{"startOffset":5498,"endOffset":6250,"count":232}],"isBlockCoverage":true},{"functionName":"exposeInternals","ranges":[{"startOffset":6400,"endOffset":6626,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6637,"endOffset":6690,"count":0}],"isBlockCoverage":false},{"functionName":"canBeRequiredByUsers","ranges":[{"startOffset":6701,"endOffset":6817,"count":440},{"startOffset":6785,"endOffset":6812,"count":57}],"isBlockCoverage":true},{"functionName":"compileForPublicLoader","ranges":[{"startOffset":6889,"endOffset":7583,"count":55},{"startOffset":6952,"endOffset":7144,"count":0},{"startOffset":7208,"endOffset":7505,"count":12},{"startOffset":7467,"endOffset":7471,"count":0}],"isBlockCoverage":true},{"functionName":"getESMFacade","ranges":[{"startOffset":7587,"endOffset":8138,"count":61},{"startOffset":7625,"endOffset":7644,"count":49},{"startOffset":7644,"endOffset":8137,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7865,"endOffset":7978,"count":12}],"isBlockCoverage":true},{"functionName":"syncExports","ranges":[{"startOffset":8434,"endOffset":8778,"count":67},{"startOffset":8553,"endOffset":8768,"count":1584},{"startOffset":8630,"endOffset":8639,"count":0}],"isBlockCoverage":true},{"functionName":"compileForInternalLoader","ranges":[{"startOffset":8782,"endOffset":9367,"count":650},{"startOffset":8831,"endOffset":8846,"count":125},{"startOffset":8848,"endOffset":8882,"count":531},{"startOffset":8882,"endOffset":9021,"count":119},{"startOffset":9021,"endOffset":9056,"count":1},{"startOffset":9057,"endOffset":9078,"count":118},{"startOffset":9232,"endOffset":9366,"count":119}],"isBlockCoverage":true},{"functionName":"nativeModuleRequire","ranges":[{"startOffset":9565,"endOffset":9936,"count":601},{"startOffset":9623,"endOffset":9654,"count":6},{"startOffset":9654,"endOffset":9838,"count":595},{"startOffset":9838,"endOffset":9893,"count":0},{"startOffset":9893,"endOffset":9935,"count":595}],"isBlockCoverage":true},{"functionName":"requireWithFallbackInDeps","ranges":[{"startOffset":10052,"endOffset":10224,"count":0}],"isBlockCoverage":false}]},{"scriptId":"10","url":"internal/bootstrap/node.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12616,"count":1}],"isBlockCoverage":true},{"functionName":"process.openStdin","ranges":[{"startOffset":3399,"endOffset":3469,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6160,"endOffset":6322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6424,"endOffset":6596,"count":0}],"isBlockCoverage":false},{"functionName":"setupPrepareStackTrace","ranges":[{"startOffset":9383,"endOffset":9969,"count":1}],"isBlockCoverage":true},{"functionName":"setupProcessObject","ranges":[{"startOffset":9971,"endOffset":10576,"count":1}],"isBlockCoverage":true},{"functionName":"setupGlobalProxy","ranges":[{"startOffset":10578,"endOffset":10755,"count":1}],"isBlockCoverage":true},{"functionName":"setupBuffer","ranges":[{"startOffset":10757,"endOffset":11193,"count":1}],"isBlockCoverage":true},{"functionName":"createGlobalConsole","ranges":[{"startOffset":11195,"endOffset":11876,"count":1}],"isBlockCoverage":true},{"functionName":"exposeNamespace","ranges":[{"startOffset":11928,"endOffset":12126,"count":1}],"isBlockCoverage":true},{"functionName":"exposeInterface","ranges":[{"startOffset":12178,"endOffset":12376,"count":4}],"isBlockCoverage":true},{"functionName":"defineOperation","ranges":[{"startOffset":12436,"endOffset":12615,"count":7}],"isBlockCoverage":true}]},{"scriptId":"11","url":"internal/errors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":53549,"count":1}],"isBlockCoverage":false},{"functionName":"prepareStackTrace","ranges":[{"startOffset":1404,"endOffset":2120,"count":93},{"startOffset":1581,"endOffset":1697,"count":0},{"startOffset":1824,"endOffset":1846,"count":0},{"startOffset":2027,"endOffset":2056,"count":0}],"isBlockCoverage":true},{"functionName":"maybeOverridePrepareStackTrace","ranges":[{"startOffset":2162,"endOffset":2869,"count":93},{"startOffset":2431,"endOffset":2497,"count":0},{"startOffset":2778,"endOffset":2844,"count":0}],"isBlockCoverage":true},{"functionName":"lazyInternalUtil","ranges":[{"startOffset":2959,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"lazyInternalUtilInspect","ranges":[{"startOffset":3119,"endOffset":3281,"count":0}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":3295,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"SystemError","ranges":[{"startOffset":3906,"endOffset":6444,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":6448,"endOffset":6523,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6527,"endOffset":6716,"count":0}],"isBlockCoverage":false},{"functionName":"makeSystemErrorWithCode","ranges":[{"startOffset":6720,"endOffset":6865,"count":4}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6811,"endOffset":6858,"count":0}],"isBlockCoverage":false},{"functionName":"makeNodeErrorWithCode","ranges":[{"startOffset":6867,"endOffset":7622,"count":233}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":6955,"endOffset":7536,"count":93},{"startOffset":7045,"endOffset":7254,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":7542,"endOffset":7615,"count":0}],"isBlockCoverage":false},{"functionName":"hideStackFrames","ranges":[{"startOffset":7694,"endOffset":8105,"count":31}],"isBlockCoverage":true},{"functionName":"hidden","ranges":[{"startOffset":7734,"endOffset":8102,"count":2894},{"startOffset":7898,"endOffset":7962,"count":2036},{"startOffset":8046,"endOffset":8092,"count":2036}],"isBlockCoverage":true},{"functionName":"addCodeToName","ranges":[{"startOffset":8107,"endOffset":8723,"count":93},{"startOffset":8205,"endOffset":8260,"count":0},{"startOffset":8545,"endOffset":8689,"count":0}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":8835,"endOffset":9343,"count":234},{"startOffset":9077,"endOffset":9122,"count":4},{"startOffset":9122,"endOffset":9176,"count":230},{"startOffset":9211,"endOffset":9321,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9238,"endOffset":9315,"count":3}],"isBlockCoverage":true},{"functionName":"getMessage","ranges":[{"startOffset":9345,"endOffset":10149,"count":93},{"startOffset":9446,"endOffset":9482,"count":1},{"startOffset":9773,"endOffset":9831,"count":0},{"startOffset":10053,"endOffset":10148,"count":0}],"isBlockCoverage":true},{"functionName":"lazyUv","ranges":[{"startOffset":10167,"endOffset":10271,"count":28},{"startOffset":10205,"endOffset":10249,"count":1}],"isBlockCoverage":true},{"functionName":"uvErrmapGet","ranges":[{"startOffset":10328,"endOffset":10498,"count":28},{"startOffset":10406,"endOffset":10459,"count":1}],"isBlockCoverage":true},{"functionName":"uvException","ranges":[{"startOffset":10791,"endOffset":11987,"count":28},{"startOffset":10868,"endOffset":10886,"count":0},{"startOffset":11080,"endOffset":11149,"count":0},{"startOffset":11688,"endOffset":11810,"count":84},{"startOffset":11736,"endOffset":11754,"count":56},{"startOffset":11756,"endOffset":11779,"count":28},{"startOffset":11779,"endOffset":11810,"count":56},{"startOffset":11882,"endOffset":11908,"count":0}],"isBlockCoverage":true},{"functionName":"uvExceptionWithHostPort","ranges":[{"startOffset":12300,"endOffset":13205,"count":0}],"isBlockCoverage":false},{"functionName":"errnoException","ranges":[{"startOffset":13384,"endOffset":14090,"count":0}],"isBlockCoverage":false},{"functionName":"exceptionWithHostPort","ranges":[{"startOffset":14443,"endOffset":15659,"count":0}],"isBlockCoverage":false},{"functionName":"dnsException","ranges":[{"startOffset":15823,"endOffset":17338,"count":0}],"isBlockCoverage":false},{"functionName":"connResetException","ranges":[{"startOffset":17340,"endOffset":17495,"count":0}],"isBlockCoverage":false},{"functionName":"isStackOverflowError","ranges":[{"startOffset":17785,"endOffset":18163,"count":0}],"isBlockCoverage":false},{"functionName":"addNumericalSeparator","ranges":[{"startOffset":18244,"endOffset":18480,"count":0}],"isBlockCoverage":false},{"functionName":"beforeInspector","ranges":[{"startOffset":18759,"endOffset":19150,"count":0}],"isBlockCoverage":false},{"functionName":"afterInspector","ranges":[{"startOffset":19154,"endOffset":20492,"count":0}],"isBlockCoverage":false},{"functionName":"AbortError","ranges":[{"startOffset":20728,"endOffset":20846,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22625,"endOffset":22789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25628,"endOffset":25743,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26032,"endOffset":26126,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":28407,"endOffset":28635,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":30368,"endOffset":30586,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32336,"endOffset":32636,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32678,"endOffset":32822,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32865,"endOffset":36070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36111,"endOffset":36367,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36759,"endOffset":36922,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37584,"endOffset":37719,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37760,"endOffset":38084,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38243,"endOffset":38391,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38435,"endOffset":39209,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39587,"endOffset":39751,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39804,"endOffset":40135,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40179,"endOffset":40486,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40856,"endOffset":40931,"count":93}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":40975,"endOffset":41263,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":41591,"endOffset":42022,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42698,"endOffset":43221,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43315,"endOffset":43416,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44176,"endOffset":44874,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44925,"endOffset":45117,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45166,"endOffset":45482,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45515,"endOffset":46392,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":46844,"endOffset":47103,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":48453,"endOffset":48622,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":50520,"endOffset":50651,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":51244,"endOffset":51527,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52507,"endOffset":52605,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52799,"endOffset":53154,"count":0}],"isBlockCoverage":false}]},{"scriptId":"12","url":"internal/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12498,"count":1}],"isBlockCoverage":false},{"functionName":"lazyUv","ranges":[{"startOffset":991,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"removeColors","ranges":[{"startOffset":1084,"endOffset":1153,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":1155,"endOffset":1405,"count":0}],"isBlockCoverage":false},{"functionName":"deprecate","ranges":[{"startOffset":1690,"endOffset":2787,"count":45},{"startOffset":1764,"endOffset":1784,"count":0},{"startOffset":1844,"endOffset":1899,"count":0},{"startOffset":2541,"endOffset":2763,"count":30}],"isBlockCoverage":true},{"functionName":"deprecated","ranges":[{"startOffset":1925,"endOffset":2399,"count":0}],"isBlockCoverage":false},{"functionName":"decorateErrorStack","ranges":[{"startOffset":2789,"endOffset":3128,"count":0}],"isBlockCoverage":false},{"functionName":"assertCrypto","ranges":[{"startOffset":3130,"endOffset":3204,"count":3},{"startOffset":3176,"endOffset":3202,"count":0}],"isBlockCoverage":true},{"functionName":"normalizeEncoding","ranges":[{"startOffset":3383,"endOffset":3514,"count":92},{"startOffset":3453,"endOffset":3471,"count":7},{"startOffset":3473,"endOffset":3487,"count":85},{"startOffset":3487,"endOffset":3513,"count":7}],"isBlockCoverage":true},{"functionName":"slowCases","ranges":[{"startOffset":3516,"endOffset":5096,"count":7},{"startOffset":3570,"endOffset":3814,"count":0},{"startOffset":3819,"endOffset":3939,"count":0},{"startOffset":3944,"endOffset":4348,"count":0},{"startOffset":4389,"endOffset":4405,"count":0},{"startOffset":4454,"endOffset":4470,"count":0},{"startOffset":4499,"endOffset":4515,"count":0},{"startOffset":4564,"endOffset":4580,"count":0},{"startOffset":4645,"endOffset":4661,"count":0},{"startOffset":4710,"endOffset":4726,"count":0},{"startOffset":4744,"endOffset":4888,"count":0},{"startOffset":4893,"endOffset":5040,"count":0},{"startOffset":5045,"endOffset":5090,"count":0}],"isBlockCoverage":true},{"functionName":"emitExperimentalWarning","ranges":[{"startOffset":5098,"endOffset":5386,"count":0}],"isBlockCoverage":false},{"functionName":"filterDuplicateStrings","ranges":[{"startOffset":5388,"endOffset":5696,"count":0}],"isBlockCoverage":false},{"functionName":"cachedResult","ranges":[{"startOffset":5698,"endOffset":5841,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5749,"endOffset":5838,"count":0}],"isBlockCoverage":false},{"functionName":"createClassWrapper","ranges":[{"startOffset":6106,"endOffset":6471,"count":0}],"isBlockCoverage":false},{"functionName":"getSignalsToNamesMapping","ranges":[{"startOffset":6500,"endOffset":6778,"count":0}],"isBlockCoverage":false},{"functionName":"convertToValidSignal","ranges":[{"startOffset":6780,"endOffset":7087,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorOf","ranges":[{"startOffset":7089,"endOffset":7435,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7437,"endOffset":7566,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorMap","ranges":[{"startOffset":7568,"endOffset":7633,"count":0}],"isBlockCoverage":false},{"functionName":"promisify","ranges":[{"startOffset":7778,"endOffset":9249,"count":5},{"startOffset":7851,"endOffset":7916,"count":0},{"startOffset":7960,"endOffset":8281,"count":0}],"isBlockCoverage":true},{"functionName":"fn","ranges":[{"startOffset":8481,"endOffset":8962,"count":762}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8527,"endOffset":8956,"count":762}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8585,"endOffset":8948,"count":37},{"startOffset":8624,"endOffset":8665,"count":0},{"startOffset":8706,"endOffset":8726,"count":0},{"startOffset":8728,"endOffset":8893,"count":0}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":9344,"endOffset":9666,"count":0}],"isBlockCoverage":false},{"functionName":"spliceOne","ranges":[{"startOffset":9807,"endOffset":9934,"count":90},{"startOffset":9888,"endOffset":9918,"count":0}],"isBlockCoverage":true},{"functionName":"isInsideNodeModules","ranges":[{"startOffset":10016,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":11190,"endOffset":11348,"count":0}],"isBlockCoverage":false},{"functionName":"sleep","ranges":[{"startOffset":11371,"endOffset":11586,"count":0}],"isBlockCoverage":false}]},{"scriptId":"13","url":"events.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":26873,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2207,"endOffset":2367,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter","ranges":[{"startOffset":2372,"endOffset":2441,"count":319}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2805,"endOffset":2861,"count":3}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":2865,"endOffset":3099,"count":0}],"isBlockCoverage":false},{"functionName":"checkListener","ranges":[{"startOffset":3671,"endOffset":3821,"count":2353},{"startOffset":3744,"endOffset":3819,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3910,"endOffset":3958,"count":214}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3967,"endOffset":4242,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.setMaxListeners","ranges":[{"startOffset":4618,"endOffset":5532,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.init","ranges":[{"startOffset":5555,"endOffset":6285,"count":319},{"startOffset":5606,"endOffset":5666,"count":152},{"startOffset":5668,"endOffset":5739,"count":167},{"startOffset":5810,"endOffset":5835,"count":219},{"startOffset":5837,"endOffset":6096,"count":0}],"isBlockCoverage":true},{"functionName":"addCatch","ranges":[{"startOffset":6288,"endOffset":6847,"count":33},{"startOffset":6375,"endOffset":6794,"count":0},{"startOffset":6799,"endOffset":6845,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6576,"endOffset":6786,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionOrErr","ranges":[{"startOffset":6849,"endOffset":7507,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxListeners","ranges":[{"startOffset":7678,"endOffset":7877,"count":30},{"startOffset":7764,"endOffset":7834,"count":0}],"isBlockCoverage":true},{"functionName":"_getMaxListeners","ranges":[{"startOffset":7880,"endOffset":8029,"count":331},{"startOffset":7958,"endOffset":7998,"count":211},{"startOffset":7998,"endOffset":8028,"count":120}],"isBlockCoverage":true},{"functionName":"getMaxListeners","ranges":[{"startOffset":8072,"endOffset":8135,"count":0}],"isBlockCoverage":false},{"functionName":"identicalSequenceRange","ranges":[{"startOffset":8263,"endOffset":8839,"count":0}],"isBlockCoverage":false},{"functionName":"enhanceStackTrace","ranges":[{"startOffset":8841,"endOffset":9447,"count":0}],"isBlockCoverage":false},{"functionName":"emit","ranges":[{"startOffset":9479,"endOffset":11762,"count":1970},{"startOffset":9624,"endOffset":9662,"count":0},{"startOffset":9670,"endOffset":9704,"count":0},{"startOffset":9728,"endOffset":9757,"count":0},{"startOffset":9763,"endOffset":9800,"count":0},{"startOffset":9872,"endOffset":10804,"count":0},{"startOffset":10872,"endOffset":10885,"count":784},{"startOffset":10885,"endOffset":10924,"count":1186},{"startOffset":10924,"endOffset":11213,"count":706},{"startOffset":11140,"endOffset":11158,"count":3},{"startOffset":11160,"endOffset":11209,"count":3},{"startOffset":11213,"endOffset":11744,"count":480},{"startOffset":11330,"endOffset":11740,"count":1020},{"startOffset":11661,"endOffset":11679,"count":30},{"startOffset":11681,"endOffset":11734,"count":30},{"startOffset":11744,"endOffset":11761,"count":1186}],"isBlockCoverage":true},{"functionName":"_addListener","ranges":[{"startOffset":11765,"endOffset":13820,"count":1563},{"startOffset":11945,"endOffset":12029,"count":60},{"startOffset":12029,"endOffset":12527,"count":1503},{"startOffset":12214,"endOffset":12494,"count":575},{"startOffset":12291,"endOffset":12310,"count":240},{"startOffset":12311,"endOffset":12321,"count":335},{"startOffset":12559,"endOffset":12697,"count":1232},{"startOffset":12697,"endOffset":13800,"count":331},{"startOffset":12745,"endOffset":12961,"count":241},{"startOffset":12856,"endOffset":12878,"count":60},{"startOffset":12879,"endOffset":12901,"count":181},{"startOffset":12961,"endOffset":13065,"count":90},{"startOffset":12980,"endOffset":13021,"count":0},{"startOffset":13169,"endOffset":13188,"count":0},{"startOffset":13190,"endOffset":13796,"count":0}],"isBlockCoverage":true},{"functionName":"addListener","ranges":[{"startOffset":13859,"endOffset":13951,"count":1473}],"isBlockCoverage":true},{"functionName":"prependListener","ranges":[{"startOffset":14064,"endOffset":14167,"count":90}],"isBlockCoverage":true},{"functionName":"onceWrapper","ranges":[{"startOffset":14170,"endOffset":14434,"count":180},{"startOffset":14333,"endOffset":14372,"count":120},{"startOffset":14372,"endOffset":14432,"count":60}],"isBlockCoverage":true},{"functionName":"_onceWrap","ranges":[{"startOffset":14436,"endOffset":14677,"count":455}],"isBlockCoverage":true},{"functionName":"once","ranges":[{"startOffset":14709,"endOffset":14835,"count":455}],"isBlockCoverage":true},{"functionName":"prependOnceListener","ranges":[{"startOffset":14887,"endOffset":15057,"count":0}],"isBlockCoverage":false},{"functionName":"removeListener","ranges":[{"startOffset":15179,"endOffset":16473,"count":335},{"startOffset":15328,"endOffset":15340,"count":0},{"startOffset":15413,"endOffset":15425,"count":0},{"startOffset":15455,"endOffset":15484,"count":214},{"startOffset":15486,"endOffset":15746,"count":185},{"startOffset":15537,"endOffset":15571,"count":0},{"startOffset":15667,"endOffset":15728,"count":1},{"startOffset":15746,"endOffset":16447,"count":150},{"startOffset":15865,"endOffset":16004,"count":270},{"startOffset":15902,"endOffset":15934,"count":120},{"startOffset":15936,"endOffset":15994,"count":150},{"startOffset":16042,"endOffset":16054,"count":0},{"startOffset":16094,"endOffset":16107,"count":60},{"startOffset":16107,"endOffset":16268,"count":90},{"startOffset":16174,"endOffset":16221,"count":1},{"startOffset":16311,"endOffset":16334,"count":60},{"startOffset":16395,"endOffset":16439,"count":0}],"isBlockCoverage":true},{"functionName":"removeAllListeners","ranges":[{"startOffset":16593,"endOffset":17919,"count":0}],"isBlockCoverage":false},{"functionName":"_listeners","ranges":[{"startOffset":17922,"endOffset":18317,"count":0}],"isBlockCoverage":false},{"functionName":"listeners","ranges":[{"startOffset":18354,"endOffset":18421,"count":0}],"isBlockCoverage":false},{"functionName":"rawListeners","ranges":[{"startOffset":18462,"endOffset":18533,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.listenerCount","ranges":[{"startOffset":18565,"endOffset":18733,"count":0}],"isBlockCoverage":false},{"functionName":"listenerCount","ranges":[{"startOffset":18790,"endOffset":19080,"count":358},{"startOffset":18963,"endOffset":18986,"count":108},{"startOffset":18986,"endOffset":19061,"count":250},{"startOffset":19022,"endOffset":19061,"count":0},{"startOffset":19065,"endOffset":19079,"count":250}],"isBlockCoverage":true},{"functionName":"eventNames","ranges":[{"startOffset":19118,"endOffset":19211,"count":0}],"isBlockCoverage":false},{"functionName":"arrayClone","ranges":[{"startOffset":19214,"endOffset":19674,"count":480},{"startOffset":19386,"endOffset":19418,"count":420},{"startOffset":19423,"endOffset":19463,"count":60},{"startOffset":19468,"endOffset":19516,"count":0},{"startOffset":19521,"endOffset":19577,"count":0},{"startOffset":19582,"endOffset":19646,"count":0},{"startOffset":19650,"endOffset":19673,"count":0}],"isBlockCoverage":true},{"functionName":"unwrapListeners","ranges":[{"startOffset":19676,"endOffset":19890,"count":0}],"isBlockCoverage":false},{"functionName":"getEventListeners","ranges":[{"startOffset":19892,"endOffset":20687,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":20689,"endOffset":22475,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22553,"endOffset":22574,"count":0}],"isBlockCoverage":false},{"functionName":"createIterResult","ranges":[{"startOffset":22589,"endOffset":22657,"count":0}],"isBlockCoverage":false},{"functionName":"addErrorHandlerIfEventEmitter","ranges":[{"startOffset":22659,"endOffset":22842,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticRemoveListener","ranges":[{"startOffset":22844,"endOffset":23229,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticAddListener","ranges":[{"startOffset":23231,"endOffset":23820,"count":0}],"isBlockCoverage":false},{"functionName":"on","ranges":[{"startOffset":23822,"endOffset":26872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"14","url":"internal/util/inspect.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":71637,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2893,"endOffset":2929,"count":62}],"isBlockCoverage":true},{"functionName":"isUndetectableObject","ranges":[{"startOffset":3020,"endOffset":3070,"count":0}],"isBlockCoverage":false},{"functionName":"getUserOptions","ranges":[{"startOffset":6215,"endOffset":7666,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":7961,"endOffset":9878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9970,"endOffset":10015,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":10019,"endOffset":10227,"count":0}],"isBlockCoverage":false},{"functionName":"defineColorAlias","ranges":[{"startOffset":11964,"endOffset":12206,"count":12}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":12059,"endOffset":12099,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":12105,"endOffset":12151,"count":0}],"isBlockCoverage":false},{"functionName":"addQuotes","ranges":[{"startOffset":13216,"endOffset":13374,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":13393,"endOffset":13425,"count":0}],"isBlockCoverage":false},{"functionName":"strEscape","ranges":[{"startOffset":13538,"endOffset":15164,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeWithColor","ranges":[{"startOffset":15166,"endOffset":15432,"count":0}],"isBlockCoverage":false},{"functionName":"stylizeNoColor","ranges":[{"startOffset":15434,"endOffset":15480,"count":0}],"isBlockCoverage":false},{"functionName":"getEmptyFormatArray","ranges":[{"startOffset":15559,"endOffset":15606,"count":0}],"isBlockCoverage":false},{"functionName":"isInstanceof","ranges":[{"startOffset":15608,"endOffset":15726,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorName","ranges":[{"startOffset":15728,"endOffset":16988,"count":0}],"isBlockCoverage":false},{"functionName":"addPrototypeProperties","ranges":[{"startOffset":17175,"endOffset":19018,"count":0}],"isBlockCoverage":false},{"functionName":"getPrefix","ranges":[{"startOffset":19020,"endOffset":19407,"count":0}],"isBlockCoverage":false},{"functionName":"getKeys","ranges":[{"startOffset":19444,"endOffset":20386,"count":0}],"isBlockCoverage":false},{"functionName":"getCtxStyle","ranges":[{"startOffset":20388,"endOffset":20651,"count":0}],"isBlockCoverage":false},{"functionName":"formatProxy","ranges":[{"startOffset":20653,"endOffset":21102,"count":0}],"isBlockCoverage":false},{"functionName":"findTypedConstructor","ranges":[{"startOffset":21104,"endOffset":21627,"count":0}],"isBlockCoverage":false},{"functionName":"formatValue","ranges":[{"startOffset":21809,"endOffset":24348,"count":0}],"isBlockCoverage":false},{"functionName":"formatRaw","ranges":[{"startOffset":24350,"endOffset":34825,"count":0}],"isBlockCoverage":false},{"functionName":"getIteratorBraces","ranges":[{"startOffset":34827,"endOffset":35009,"count":0}],"isBlockCoverage":false},{"functionName":"getBoxedBase","ranges":[{"startOffset":35011,"endOffset":36185,"count":0}],"isBlockCoverage":false},{"functionName":"getClassBase","ranges":[{"startOffset":36187,"endOffset":36787,"count":0}],"isBlockCoverage":false},{"functionName":"getFunctionBase","ranges":[{"startOffset":36789,"endOffset":37882,"count":0}],"isBlockCoverage":false},{"functionName":"formatError","ranges":[{"startOffset":37884,"endOffset":41005,"count":0}],"isBlockCoverage":false},{"functionName":"groupArrayElements","ranges":[{"startOffset":41007,"endOffset":45258,"count":0}],"isBlockCoverage":false},{"functionName":"handleMaxCallStackSize","ranges":[{"startOffset":45260,"endOffset":45648,"count":0}],"isBlockCoverage":false},{"functionName":"formatNumber","ranges":[{"startOffset":45650,"endOffset":45827,"count":0}],"isBlockCoverage":false},{"functionName":"formatBigInt","ranges":[{"startOffset":45829,"endOffset":45901,"count":0}],"isBlockCoverage":false},{"functionName":"formatPrimitive","ranges":[{"startOffset":45903,"endOffset":47086,"count":0}],"isBlockCoverage":false},{"functionName":"formatNamespaceObject","ranges":[{"startOffset":47088,"endOffset":48208,"count":0}],"isBlockCoverage":false},{"functionName":"formatSpecialArray","ranges":[{"startOffset":48255,"endOffset":49462,"count":0}],"isBlockCoverage":false},{"functionName":"formatArrayBuffer","ranges":[{"startOffset":49464,"endOffset":50064,"count":0}],"isBlockCoverage":false},{"functionName":"formatArray","ranges":[{"startOffset":50066,"endOffset":50660,"count":0}],"isBlockCoverage":false},{"functionName":"formatTypedArray","ranges":[{"startOffset":50662,"endOffset":51678,"count":0}],"isBlockCoverage":false},{"functionName":"formatSet","ranges":[{"startOffset":51680,"endOffset":51912,"count":0}],"isBlockCoverage":false},{"functionName":"formatMap","ranges":[{"startOffset":51914,"endOffset":52212,"count":0}],"isBlockCoverage":false},{"functionName":"formatSetIterInner","ranges":[{"startOffset":52214,"endOffset":53027,"count":0}],"isBlockCoverage":false},{"functionName":"formatMapIterInner","ranges":[{"startOffset":53029,"endOffset":54351,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakCollection","ranges":[{"startOffset":54353,"endOffset":54445,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakSet","ranges":[{"startOffset":54447,"endOffset":54604,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakMap","ranges":[{"startOffset":54606,"endOffset":54763,"count":0}],"isBlockCoverage":false},{"functionName":"formatIterator","ranges":[{"startOffset":54765,"endOffset":55156,"count":0}],"isBlockCoverage":false},{"functionName":"formatPromise","ranges":[{"startOffset":55158,"endOffset":55623,"count":0}],"isBlockCoverage":false},{"functionName":"formatProperty","ranges":[{"startOffset":55625,"endOffset":58023,"count":0}],"isBlockCoverage":false},{"functionName":"isBelowBreakLength","ranges":[{"startOffset":58025,"endOffset":58967,"count":0}],"isBlockCoverage":false},{"functionName":"reduceToSingleString","ranges":[{"startOffset":58969,"endOffset":61715,"count":0}],"isBlockCoverage":false},{"functionName":"hasBuiltInToString","ranges":[{"startOffset":61717,"endOffset":62736,"count":0}],"isBlockCoverage":false},{"functionName":"firstErrorLine","ranges":[{"startOffset":62761,"endOffset":62800,"count":0}],"isBlockCoverage":false},{"functionName":"tryStringify","ranges":[{"startOffset":62830,"endOffset":63299,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":63301,"endOffset":63385,"count":0}],"isBlockCoverage":false},{"functionName":"formatWithOptions","ranges":[{"startOffset":63387,"endOffset":63665,"count":34},{"startOffset":63510,"endOffset":63602,"count":0}],"isBlockCoverage":true},{"functionName":"formatWithOptionsInternal","ranges":[{"startOffset":63667,"endOffset":67451,"count":34},{"startOffset":63890,"endOffset":67250,"count":0},{"startOffset":67254,"endOffset":67450,"count":0}],"isBlockCoverage":true},{"functionName":"getStringWidth","ranges":[{"startOffset":67880,"endOffset":68431,"count":0}],"isBlockCoverage":false},{"functionName":"getStringWidth","ranges":[{"startOffset":68546,"endOffset":68958,"count":0}],"isBlockCoverage":false},{"functionName":"isFullWidthCodePoint","ranges":[{"startOffset":69126,"endOffset":70735,"count":0}],"isBlockCoverage":false},{"functionName":"isZeroWidthCodePoint","ranges":[{"startOffset":70769,"endOffset":71337,"count":0}],"isBlockCoverage":false},{"functionName":"stripVTControlCharacters","ranges":[{"startOffset":71427,"endOffset":71501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"15","url":"internal/util/types.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1915,"count":1}],"isBlockCoverage":false},{"functionName":"isTypedArray","ranges":[{"startOffset":425,"endOffset":516,"count":0}],"isBlockCoverage":false},{"functionName":"isUint8Array","ranges":[{"startOffset":518,"endOffset":612,"count":656}],"isBlockCoverage":true},{"functionName":"isUint8ClampedArray","ranges":[{"startOffset":614,"endOffset":722,"count":0}],"isBlockCoverage":false},{"functionName":"isUint16Array","ranges":[{"startOffset":724,"endOffset":820,"count":0}],"isBlockCoverage":false},{"functionName":"isUint32Array","ranges":[{"startOffset":822,"endOffset":918,"count":0}],"isBlockCoverage":false},{"functionName":"isInt8Array","ranges":[{"startOffset":920,"endOffset":1012,"count":0}],"isBlockCoverage":false},{"functionName":"isInt16Array","ranges":[{"startOffset":1014,"endOffset":1108,"count":0}],"isBlockCoverage":false},{"functionName":"isInt32Array","ranges":[{"startOffset":1110,"endOffset":1204,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat32Array","ranges":[{"startOffset":1206,"endOffset":1304,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat64Array","ranges":[{"startOffset":1306,"endOffset":1404,"count":0}],"isBlockCoverage":false},{"functionName":"isBigInt64Array","ranges":[{"startOffset":1406,"endOffset":1506,"count":0}],"isBlockCoverage":false},{"functionName":"isBigUint64Array","ranges":[{"startOffset":1508,"endOffset":1610,"count":121}],"isBlockCoverage":true}]},{"scriptId":"16","url":"internal/assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":false},{"functionName":"lazyError","ranges":[{"startOffset":26,"endOffset":155,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":157,"endOffset":307,"count":511},{"startOffset":205,"endOffset":305,"count":0}],"isBlockCoverage":true},{"functionName":"fail","ranges":[{"startOffset":309,"endOffset":426,"count":0}],"isBlockCoverage":false}]},{"scriptId":"17","url":"internal/validators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7218,"count":1}],"isBlockCoverage":false},{"functionName":"isInt32","ranges":[{"startOffset":581,"endOffset":640,"count":178}],"isBlockCoverage":true},{"functionName":"isUint32","ranges":[{"startOffset":642,"endOffset":704,"count":204}],"isBlockCoverage":true},{"functionName":"parseFileMode","ranges":[{"startOffset":1326,"endOffset":1807,"count":115},{"startOffset":1389,"endOffset":1409,"count":0},{"startOffset":1411,"endOffset":1432,"count":0},{"startOffset":1480,"endOffset":1806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1852,"endOffset":2233,"count":126},{"startOffset":1972,"endOffset":2026,"count":0},{"startOffset":2066,"endOffset":2120,"count":0},{"startOffset":2163,"endOffset":2229,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2279,"endOffset":2860,"count":178},{"startOffset":2441,"endOffset":2739,"count":0},{"startOffset":2776,"endOffset":2856,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2904,"endOffset":3414,"count":1},{"startOffset":2957,"endOffset":3306,"count":0},{"startOffset":3322,"endOffset":3336,"count":0},{"startOffset":3338,"endOffset":3412,"count":0}],"isBlockCoverage":true},{"functionName":"validateString","ranges":[{"startOffset":3418,"endOffset":3550,"count":2877},{"startOffset":3494,"endOffset":3548,"count":0}],"isBlockCoverage":true},{"functionName":"validateNumber","ranges":[{"startOffset":3552,"endOffset":3684,"count":61},{"startOffset":3628,"endOffset":3682,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3724,"endOffset":4174,"count":30},{"startOffset":3796,"endOffset":4172,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3835,"endOffset":3888,"count":0}],"isBlockCoverage":false},{"functionName":"validateBoolean","ranges":[{"startOffset":4178,"endOffset":4313,"count":2},{"startOffset":4256,"endOffset":4311,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4357,"endOffset":4582,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4624,"endOffset":4911,"count":0}],"isBlockCoverage":false},{"functionName":"validateSignalName","ranges":[{"startOffset":4915,"endOffset":5336,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5377,"endOffset":5607,"count":149},{"startOffset":5442,"endOffset":5605,"count":0}],"isBlockCoverage":true},{"functionName":"validateEncoding","ranges":[{"startOffset":5611,"endOffset":5945,"count":7},{"startOffset":5779,"endOffset":5798,"count":0},{"startOffset":5800,"endOffset":5943,"count":0}],"isBlockCoverage":true},{"functionName":"validatePort","ranges":[{"startOffset":6089,"endOffset":6463,"count":37},{"startOffset":6193,"endOffset":6220,"count":0},{"startOffset":6257,"endOffset":6284,"count":0},{"startOffset":6363,"endOffset":6376,"count":0},{"startOffset":6379,"endOffset":6442,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6506,"endOffset":6607,"count":828},{"startOffset":6564,"endOffset":6605,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6655,"endOffset":6872,"count":0}],"isBlockCoverage":false}]},{"scriptId":"18","url":"buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":36751,"count":1}],"isBlockCoverage":false},{"functionName":"validateOffset","ranges":[{"startOffset":2784,"endOffset":2868,"count":0}],"isBlockCoverage":false},{"functionName":"createUnsafeBuffer","ranges":[{"startOffset":4082,"endOffset":4218,"count":22}],"isBlockCoverage":true},{"functionName":"createPool","ranges":[{"startOffset":4220,"endOffset":4379,"count":9}],"isBlockCoverage":true},{"functionName":"alignPool","ranges":[{"startOffset":4395,"endOffset":4517,"count":108},{"startOffset":4469,"endOffset":4515,"count":102}],"isBlockCoverage":true},{"functionName":"showFlaggedDeprecation","ranges":[{"startOffset":4821,"endOffset":5501,"count":0}],"isBlockCoverage":false},{"functionName":"toInteger","ranges":[{"startOffset":5503,"endOffset":5721,"count":0}],"isBlockCoverage":false},{"functionName":"_copy","ranges":[{"startOffset":5723,"endOffset":6988,"count":0}],"isBlockCoverage":false},{"functionName":"_copyActual","ranges":[{"startOffset":6990,"endOffset":7592,"count":69},{"startOffset":7131,"endOffset":7185,"count":0},{"startOffset":7347,"endOffset":7362,"count":0},{"startOffset":7389,"endOffset":7404,"count":0},{"startOffset":7464,"endOffset":7540,"count":0}],"isBlockCoverage":true},{"functionName":"Buffer","ranges":[{"startOffset":8168,"endOffset":8501,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":8594,"endOffset":8622,"count":0}],"isBlockCoverage":false},{"functionName":"from","ranges":[{"startOffset":8879,"endOffset":9843,"count":11},{"startOffset":8965,"endOffset":9008,"count":4},{"startOffset":9008,"endOffset":9059,"count":7},{"startOffset":9061,"endOffset":9698,"count":7},{"startOffset":9102,"endOffset":9158,"count":0},{"startOffset":9267,"endOffset":9338,"count":0},{"startOffset":9340,"endOffset":9401,"count":0},{"startOffset":9462,"endOffset":9694,"count":0},{"startOffset":9698,"endOffset":9842,"count":0}],"isBlockCoverage":true},{"functionName":"of","ranges":[{"startOffset":10214,"endOffset":10366,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10655,"endOffset":10876,"count":149},{"startOffset":10699,"endOffset":10764,"count":0},{"startOffset":10807,"endOffset":10874,"count":0}],"isBlockCoverage":true},{"functionName":"alloc","ranges":[{"startOffset":10979,"endOffset":11224,"count":38},{"startOffset":11063,"endOffset":11076,"count":0},{"startOffset":11077,"endOffset":11088,"count":0},{"startOffset":11090,"endOffset":11191,"count":0}],"isBlockCoverage":true},{"functionName":"allocUnsafe","ranges":[{"startOffset":11403,"endOffset":11478,"count":111}],"isBlockCoverage":true},{"functionName":"allocUnsafeSlow","ranges":[{"startOffset":11719,"endOffset":11808,"count":0}],"isBlockCoverage":false},{"functionName":"SlowBuffer","ranges":[{"startOffset":11904,"endOffset":11994,"count":0}],"isBlockCoverage":false},{"functionName":"allocate","ranges":[{"startOffset":12108,"endOffset":12440,"count":111},{"startOffset":12151,"endOffset":12185,"count":0},{"startOffset":12224,"endOffset":12403,"count":98},{"startOffset":12272,"endOffset":12285,"count":8},{"startOffset":12403,"endOffset":12439,"count":13}],"isBlockCoverage":true},{"functionName":"fromStringFast","ranges":[{"startOffset":12442,"endOffset":12988,"count":4},{"startOffset":12568,"endOffset":12617,"count":1},{"startOffset":12617,"endOffset":12663,"count":3},{"startOffset":12663,"endOffset":12676,"count":0},{"startOffset":12676,"endOffset":12809,"count":3},{"startOffset":12809,"endOffset":12935,"count":0},{"startOffset":12935,"endOffset":12987,"count":3}],"isBlockCoverage":true},{"functionName":"fromString","ranges":[{"startOffset":12990,"endOffset":13443,"count":4},{"startOffset":13076,"endOffset":13100,"count":1},{"startOffset":13102,"endOffset":13221,"count":3},{"startOffset":13139,"endOffset":13163,"count":0},{"startOffset":13221,"endOffset":13403,"count":1},{"startOffset":13298,"endOffset":13339,"count":0},{"startOffset":13375,"endOffset":13399,"count":0}],"isBlockCoverage":true},{"functionName":"fromArrayBuffer","ranges":[{"startOffset":13445,"endOffset":14142,"count":0}],"isBlockCoverage":false},{"functionName":"fromArrayLike","ranges":[{"startOffset":14144,"endOffset":14518,"count":7},{"startOffset":14201,"endOffset":14225,"count":0},{"startOffset":14324,"endOffset":14337,"count":0},{"startOffset":14486,"endOffset":14517,"count":0}],"isBlockCoverage":true},{"functionName":"fromObject","ranges":[{"startOffset":14520,"endOffset":14826,"count":7},{"startOffset":14578,"endOffset":14609,"count":0},{"startOffset":14653,"endOffset":14691,"count":0},{"startOffset":14726,"endOffset":14781,"count":0},{"startOffset":14783,"endOffset":14824,"count":0}],"isBlockCoverage":true},{"functionName":"isBuffer","ranges":[{"startOffset":14865,"endOffset":14919,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":14939,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"isEncoding","ranges":[{"startOffset":15287,"endOffset":15438,"count":85}],"isBlockCoverage":true},{"functionName":"concat","ranges":[{"startOffset":15504,"endOffset":16708,"count":23},{"startOffset":15563,"endOffset":15627,"count":0},{"startOffset":15658,"endOffset":15682,"count":0},{"startOffset":15772,"endOffset":15849,"count":69},{"startOffset":15853,"endOffset":15902,"count":0},{"startOffset":16004,"endOffset":16352,"count":69},{"startOffset":16059,"endOffset":16291,"count":0},{"startOffset":16443,"endOffset":16688,"count":0}],"isBlockCoverage":true},{"functionName":"base64ByteLength","ranges":[{"startOffset":16711,"endOffset":16947,"count":1},{"startOffset":16885,"endOffset":16893,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":17082,"endOffset":17146,"count":3}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":17159,"endOffset":17205,"count":85}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17220,"endOffset":17316,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17409,"endOffset":17438,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17451,"endOffset":17515,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17528,"endOffset":17574,"count":19}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17589,"endOffset":17688,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":17787,"endOffset":17816,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":17829,"endOffset":17893,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":17906,"endOffset":17952,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":17967,"endOffset":18066,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18162,"endOffset":18187,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18200,"endOffset":18266,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18279,"endOffset":18327,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18342,"endOffset":18440,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18533,"endOffset":18558,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18571,"endOffset":18636,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18649,"endOffset":18696,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18711,"endOffset":18923,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19019,"endOffset":19070,"count":1}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":19083,"endOffset":19149,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19162,"endOffset":19210,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19225,"endOffset":19439,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19526,"endOffset":19557,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":19570,"endOffset":19633,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19646,"endOffset":19691,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19706,"endOffset":19914,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingOps","ranges":[{"startOffset":19922,"endOffset":21477,"count":105},{"startOffset":20009,"endOffset":20294,"count":104},{"startOffset":20048,"endOffset":20072,"count":85},{"startOffset":20072,"endOffset":20128,"count":19},{"startOffset":20128,"endOffset":20294,"count":0},{"startOffset":20299,"endOffset":20704,"count":0},{"startOffset":20709,"endOffset":20839,"count":0},{"startOffset":20844,"endOffset":20976,"count":0},{"startOffset":20981,"endOffset":21348,"count":1},{"startOffset":21055,"endOffset":21081,"count":0},{"startOffset":21141,"endOffset":21239,"count":0},{"startOffset":21249,"endOffset":21348,"count":0},{"startOffset":21353,"endOffset":21471,"count":0}],"isBlockCoverage":true},{"functionName":"byteLength","ranges":[{"startOffset":21479,"endOffset":22136,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22276,"endOffset":22370,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22448,"endOffset":22546,"count":0}],"isBlockCoverage":false},{"functionName":"copy","ranges":[{"startOffset":22578,"endOffset":22711,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":22992,"endOffset":23571,"count":183},{"startOffset":23064,"endOffset":23112,"count":79},{"startOffset":23112,"endOffset":23164,"count":104},{"startOffset":23164,"endOffset":23174,"count":0},{"startOffset":23174,"endOffset":23237,"count":104},{"startOffset":23204,"endOffset":23214,"count":0},{"startOffset":23237,"endOffset":23263,"count":104},{"startOffset":23263,"endOffset":23275,"count":0},{"startOffset":23281,"endOffset":23291,"count":104},{"startOffset":23291,"endOffset":23312,"count":0},{"startOffset":23312,"endOffset":23338,"count":104},{"startOffset":23338,"endOffset":23348,"count":0},{"startOffset":23348,"endOffset":23384,"count":104},{"startOffset":23384,"endOffset":23418,"count":0},{"startOffset":23418,"endOffset":23489,"count":104},{"startOffset":23489,"endOffset":23530,"count":0},{"startOffset":23530,"endOffset":23570,"count":104}],"isBlockCoverage":true},{"functionName":"equals","ranges":[{"startOffset":23600,"endOffset":23954,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":24082,"endOffset":25077,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":25173,"endOffset":26322,"count":0}],"isBlockCoverage":false},{"functionName":"bidirectionalIndexOf","ranges":[{"startOffset":26750,"endOffset":28057,"count":61},{"startOffset":26887,"endOffset":26947,"count":0},{"startOffset":26982,"endOffset":27016,"count":0},{"startOffset":27052,"endOffset":27087,"count":0},{"startOffset":27312,"endOffset":27350,"count":0},{"startOffset":27482,"endOffset":28056,"count":0}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":28086,"endOffset":28203,"count":61}],"isBlockCoverage":true},{"functionName":"lastIndexOf","ranges":[{"startOffset":28237,"endOffset":28359,"count":0}],"isBlockCoverage":false},{"functionName":"includes","ranges":[{"startOffset":28390,"endOffset":28495,"count":61}],"isBlockCoverage":true},{"functionName":"fill","ranges":[{"startOffset":28673,"endOffset":28772,"count":0}],"isBlockCoverage":false},{"functionName":"_fill","ranges":[{"startOffset":28775,"endOffset":30684,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":30711,"endOffset":31726,"count":0}],"isBlockCoverage":false},{"functionName":"toJSON","ranges":[{"startOffset":31755,"endOffset":31989,"count":0}],"isBlockCoverage":false},{"functionName":"adjustOffset","ranges":[{"startOffset":31992,"endOffset":32426,"count":38},{"startOffset":32232,"endOffset":32270,"count":19},{"startOffset":32270,"endOffset":32333,"count":0},{"startOffset":32333,"endOffset":32357,"count":19},{"startOffset":32357,"endOffset":32381,"count":0},{"startOffset":32381,"endOffset":32411,"count":19},{"startOffset":32411,"endOffset":32414,"count":0},{"startOffset":32415,"endOffset":32423,"count":19}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":32453,"endOffset":32753,"count":19},{"startOffset":32614,"endOffset":32625,"count":0},{"startOffset":32673,"endOffset":32676,"count":0}],"isBlockCoverage":true},{"functionName":"swap","ranges":[{"startOffset":32756,"endOffset":32827,"count":0}],"isBlockCoverage":false},{"functionName":"swap16","ranges":[{"startOffset":32855,"endOffset":33259,"count":0}],"isBlockCoverage":false},{"functionName":"swap32","ranges":[{"startOffset":33288,"endOffset":33732,"count":0}],"isBlockCoverage":false},{"functionName":"swap64","ranges":[{"startOffset":33761,"endOffset":34269,"count":0}],"isBlockCoverage":false},{"functionName":"transcode","ranges":[{"startOffset":34582,"endOffset":35322,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35391,"endOffset":35581,"count":0}],"isBlockCoverage":false},{"functionName":"btoa","ranges":[{"startOffset":35585,"endOffset":35921,"count":0}],"isBlockCoverage":false},{"functionName":"atob","ranges":[{"startOffset":36017,"endOffset":36338,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36664,"endOffset":36699,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36705,"endOffset":36742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"19","url":"internal/buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":29666,"count":1}],"isBlockCoverage":false},{"functionName":"checkBounds","ranges":[{"startOffset":1107,"endOffset":1323,"count":0}],"isBlockCoverage":false},{"functionName":"checkInt","ranges":[{"startOffset":1325,"endOffset":1947,"count":0}],"isBlockCoverage":false},{"functionName":"boundsError","ranges":[{"startOffset":1949,"endOffset":2352,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64LE","ranges":[{"startOffset":2372,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64BE","ranges":[{"startOffset":2873,"endOffset":3372,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64LE","ranges":[{"startOffset":3374,"endOffset":3875,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64BE","ranges":[{"startOffset":3877,"endOffset":4372,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntLE","ranges":[{"startOffset":4374,"endOffset":4926,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48LE","ranges":[{"startOffset":4928,"endOffset":5311,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40LE","ranges":[{"startOffset":5313,"endOffset":5669,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32LE","ranges":[{"startOffset":5671,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24LE","ranges":[{"startOffset":5999,"endOffset":6287,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16LE","ranges":[{"startOffset":6289,"endOffset":6549,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt8","ranges":[{"startOffset":6551,"endOffset":6731,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntBE","ranges":[{"startOffset":6733,"endOffset":7285,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48BE","ranges":[{"startOffset":7287,"endOffset":7670,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40BE","ranges":[{"startOffset":7672,"endOffset":8028,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32BE","ranges":[{"startOffset":8030,"endOffset":8356,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24BE","ranges":[{"startOffset":8358,"endOffset":8646,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16BE","ranges":[{"startOffset":8648,"endOffset":8908,"count":0}],"isBlockCoverage":false},{"functionName":"readIntLE","ranges":[{"startOffset":8910,"endOffset":9455,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48LE","ranges":[{"startOffset":9457,"endOffset":9888,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40LE","ranges":[{"startOffset":9890,"endOffset":10277,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32LE","ranges":[{"startOffset":10279,"endOffset":10614,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24LE","ranges":[{"startOffset":10616,"endOffset":10948,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16LE","ranges":[{"startOffset":10950,"endOffset":11256,"count":0}],"isBlockCoverage":false},{"functionName":"readInt8","ranges":[{"startOffset":11258,"endOffset":11466,"count":0}],"isBlockCoverage":false},{"functionName":"readIntBE","ranges":[{"startOffset":11468,"endOffset":12013,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48BE","ranges":[{"startOffset":12015,"endOffset":12444,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40BE","ranges":[{"startOffset":12446,"endOffset":12834,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32BE","ranges":[{"startOffset":12836,"endOffset":13171,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24BE","ranges":[{"startOffset":13173,"endOffset":13505,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16BE","ranges":[{"startOffset":13507,"endOffset":13813,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatBackwards","ranges":[{"startOffset":13830,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatForwards","ranges":[{"startOffset":14237,"endOffset":14641,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleBackwards","ranges":[{"startOffset":14643,"endOffset":15213,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleForwards","ranges":[{"startOffset":15215,"endOffset":15784,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64LE","ranges":[{"startOffset":15805,"endOffset":16287,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64LE","ranges":[{"startOffset":16289,"endOffset":16411,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64BE","ranges":[{"startOffset":16413,"endOffset":16911,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64BE","ranges":[{"startOffset":16913,"endOffset":17035,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64LE","ranges":[{"startOffset":17037,"endOffset":17181,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64BE","ranges":[{"startOffset":17183,"endOffset":17327,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntLE","ranges":[{"startOffset":17329,"endOffset":17938,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48LE","ranges":[{"startOffset":17940,"endOffset":18353,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40LE","ranges":[{"startOffset":18355,"endOffset":18734,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32LE","ranges":[{"startOffset":18736,"endOffset":19043,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32LE","ranges":[{"startOffset":19045,"endOffset":19151,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24LE","ranges":[{"startOffset":19153,"endOffset":19412,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16LE","ranges":[{"startOffset":19414,"endOffset":19610,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16LE","ranges":[{"startOffset":19612,"endOffset":19714,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int8","ranges":[{"startOffset":19716,"endOffset":20128,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt8","ranges":[{"startOffset":20130,"endOffset":20224,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntBE","ranges":[{"startOffset":20226,"endOffset":20835,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48BE","ranges":[{"startOffset":20837,"endOffset":21258,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40BE","ranges":[{"startOffset":21260,"endOffset":21622,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32BE","ranges":[{"startOffset":21624,"endOffset":21939,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32BE","ranges":[{"startOffset":21941,"endOffset":22047,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24BE","ranges":[{"startOffset":22049,"endOffset":22314,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16BE","ranges":[{"startOffset":22316,"endOffset":22512,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16BE","ranges":[{"startOffset":22514,"endOffset":22616,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntLE","ranges":[{"startOffset":22618,"endOffset":23280,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32LE","ranges":[{"startOffset":23282,"endOffset":23397,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16LE","ranges":[{"startOffset":23399,"endOffset":23506,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt8","ranges":[{"startOffset":23508,"endOffset":23605,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntBE","ranges":[{"startOffset":23607,"endOffset":24269,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32BE","ranges":[{"startOffset":24271,"endOffset":24386,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16BE","ranges":[{"startOffset":24388,"endOffset":24495,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleForwards","ranges":[{"startOffset":24514,"endOffset":24980,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleBackwards","ranges":[{"startOffset":24982,"endOffset":25449,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatForwards","ranges":[{"startOffset":25451,"endOffset":25752,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatBackwards","ranges":[{"startOffset":25754,"endOffset":26056,"count":0}],"isBlockCoverage":false},{"functionName":"addBufferPrototypeMethods","ranges":[{"startOffset":26098,"endOffset":29155,"count":1},{"startOffset":28181,"endOffset":28201,"count":0},{"startOffset":28255,"endOffset":28274,"count":0},{"startOffset":28330,"endOffset":28351,"count":0},{"startOffset":28407,"endOffset":28427,"count":0},{"startOffset":28484,"endOffset":28505,"count":0},{"startOffset":28561,"endOffset":28581,"count":0},{"startOffset":28639,"endOffset":28661,"count":0},{"startOffset":28719,"endOffset":28740,"count":0}],"isBlockCoverage":true},{"functionName":"markAsUntransferable","ranges":[{"startOffset":29311,"endOffset":29575,"count":9},{"startOffset":29379,"endOffset":29407,"count":0},{"startOffset":29430,"endOffset":29437,"count":0}],"isBlockCoverage":true}]},{"scriptId":"20","url":"internal/worker/js_transferable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1310,"count":1}],"isBlockCoverage":false},{"functionName":"setup","ranges":[{"startOffset":304,"endOffset":1091,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":585,"endOffset":1087,"count":0}],"isBlockCoverage":false}]},{"scriptId":"21","url":"internal/process/per_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10598,"count":1}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":796,"endOffset":884,"count":0}],"isBlockCoverage":false},{"functionName":"wrapProcessMethods","ranges":[{"startOffset":962,"endOffset":6703,"count":1}],"isBlockCoverage":true},{"functionName":"_rawDebug","ranges":[{"startOffset":1173,"endOffset":1255,"count":0}],"isBlockCoverage":false},{"functionName":"cpuUsage","ranges":[{"startOffset":1466,"endOffset":3025,"count":0}],"isBlockCoverage":false},{"functionName":"previousValueIsValid","ranges":[{"startOffset":3178,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"hrtime","ranges":[{"startOffset":3539,"endOffset":4142,"count":0}],"isBlockCoverage":false},{"functionName":"hrtimeBigInt","ranges":[{"startOffset":4329,"endOffset":4423,"count":0}],"isBlockCoverage":false},{"functionName":"memoryUsage","ranges":[{"startOffset":4468,"endOffset":4694,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":4698,"endOffset":5136,"count":0}],"isBlockCoverage":false},{"functionName":"kill","ranges":[{"startOffset":5140,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"resourceUsage","ranges":[{"startOffset":5836,"endOffset":6569,"count":0}],"isBlockCoverage":false},{"functionName":"buildAllowedFlags","ranges":[{"startOffset":6914,"endOffset":9974,"count":0}],"isBlockCoverage":false},{"functionName":"toggleTraceCategoryState","ranges":[{"startOffset":10164,"endOffset":10494,"count":1},{"startOffset":10244,"endOffset":10419,"count":0},{"startOffset":10451,"endOffset":10492,"count":0}],"isBlockCoverage":true}]},{"scriptId":"22","url":"internal/async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19081,"count":1}],"isBlockCoverage":false},{"functionName":"useDomainTrampoline","ranges":[{"startOffset":5274,"endOffset":5328,"count":0}],"isBlockCoverage":false},{"functionName":"callbackTrampoline","ranges":[{"startOffset":5330,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"executionAsyncResource","ranges":[{"startOffset":5999,"endOffset":6497,"count":0}],"isBlockCoverage":false},{"functionName":"inspectExceptionValue","ranges":[{"startOffset":6499,"endOffset":6635,"count":0}],"isBlockCoverage":false},{"functionName":"fatalError","ranges":[{"startOffset":6696,"endOffset":7082,"count":0}],"isBlockCoverage":false},{"functionName":"lookupPublicResource","ranges":[{"startOffset":7084,"endOffset":7433,"count":0}],"isBlockCoverage":false},{"functionName":"emitInitNative","ranges":[{"startOffset":7624,"endOffset":8717,"count":0}],"isBlockCoverage":false},{"functionName":"emitHook","ranges":[{"startOffset":8818,"endOffset":9768,"count":0}],"isBlockCoverage":false},{"functionName":"emitHookFactory","ranges":[{"startOffset":9770,"endOffset":10030,"count":4}],"isBlockCoverage":true},{"functionName":"getHookArrays","ranges":[{"startOffset":10059,"endOffset":10549,"count":0}],"isBlockCoverage":false},{"functionName":"storeActiveHooks","ranges":[{"startOffset":10552,"endOffset":10852,"count":0}],"isBlockCoverage":false},{"functionName":"copyHooks","ranges":[{"startOffset":10854,"endOffset":11119,"count":0}],"isBlockCoverage":false},{"functionName":"restoreActiveHooks","ranges":[{"startOffset":11234,"endOffset":11439,"count":0}],"isBlockCoverage":false},{"functionName":"trackPromise","ranges":[{"startOffset":11441,"endOffset":11798,"count":0}],"isBlockCoverage":false},{"functionName":"fastPromiseHook","ranges":[{"startOffset":11800,"endOffset":12936,"count":0}],"isBlockCoverage":false},{"functionName":"enableHooks","ranges":[{"startOffset":12967,"endOffset":13027,"count":0}],"isBlockCoverage":false},{"functionName":"updatePromiseHookMode","ranges":[{"startOffset":13055,"endOffset":13346,"count":0}],"isBlockCoverage":false},{"functionName":"disableHooks","ranges":[{"startOffset":13348,"endOffset":13623,"count":0}],"isBlockCoverage":false},{"functionName":"disablePromiseHookIfNecessary","ranges":[{"startOffset":13625,"endOffset":13751,"count":0}],"isBlockCoverage":false},{"functionName":"newAsyncId","ranges":[{"startOffset":13952,"endOffset":14022,"count":1334}],"isBlockCoverage":true},{"functionName":"getOrSetAsyncId","ranges":[{"startOffset":14024,"endOffset":14214,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultTriggerAsyncId","ranges":[{"startOffset":14397,"endOffset":14687,"count":1334},{"startOffset":14611,"endOffset":14653,"count":1320},{"startOffset":14653,"endOffset":14686,"count":14}],"isBlockCoverage":true},{"functionName":"clearDefaultTriggerAsyncId","ranges":[{"startOffset":14690,"endOffset":14779,"count":0}],"isBlockCoverage":false},{"functionName":"defaultTriggerAsyncIdScope","ranges":[{"startOffset":14782,"endOffset":15257,"count":74},{"startOffset":14892,"endOffset":14914,"count":0}],"isBlockCoverage":true},{"functionName":"hasHooks","ranges":[{"startOffset":15259,"endOffset":15322,"count":6556}],"isBlockCoverage":true},{"functionName":"enabledHooksExist","ranges":[{"startOffset":15324,"endOffset":15383,"count":1296}],"isBlockCoverage":true},{"functionName":"initHooksExist","ranges":[{"startOffset":15385,"endOffset":15440,"count":1334}],"isBlockCoverage":true},{"functionName":"afterHooksExist","ranges":[{"startOffset":15442,"endOffset":15499,"count":0}],"isBlockCoverage":false},{"functionName":"destroyHooksExist","ranges":[{"startOffset":15501,"endOffset":15562,"count":1334}],"isBlockCoverage":true},{"functionName":"emitInitScript","ranges":[{"startOffset":15565,"endOffset":15973,"count":0}],"isBlockCoverage":false},{"functionName":"emitBeforeScript","ranges":[{"startOffset":15976,"endOffset":16152,"count":1296},{"startOffset":16124,"endOffset":16150,"count":0}],"isBlockCoverage":true},{"functionName":"emitAfterScript","ranges":[{"startOffset":16155,"endOffset":16275,"count":1296},{"startOffset":16219,"endOffset":16244,"count":0}],"isBlockCoverage":true},{"functionName":"emitDestroyScript","ranges":[{"startOffset":16278,"endOffset":16488,"count":0}],"isBlockCoverage":false},{"functionName":"hasAsyncIdStack","ranges":[{"startOffset":16491,"endOffset":16554,"count":0}],"isBlockCoverage":false},{"functionName":"pushAsyncContext","ranges":[{"startOffset":16620,"endOffset":17190,"count":1296},{"startOffset":16840,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"popAsyncContext","ranges":[{"startOffset":17255,"endOffset":17879,"count":1296},{"startOffset":17371,"endOffset":17384,"count":0},{"startOffset":17463,"endOffset":17569,"count":0}],"isBlockCoverage":true},{"functionName":"executionAsyncId","ranges":[{"startOffset":17882,"endOffset":17958,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":17960,"endOffset":18032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"23","url":"internal/process/task_queues.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4409,"count":1}],"isBlockCoverage":false},{"functionName":"hasTickScheduled","ranges":[{"startOffset":1007,"endOffset":1082,"count":1084}],"isBlockCoverage":true},{"functionName":"setHasTickScheduled","ranges":[{"startOffset":1084,"endOffset":1170,"count":595},{"startOffset":1160,"endOffset":1163,"count":314},{"startOffset":1164,"endOffset":1167,"count":281}],"isBlockCoverage":true},{"functionName":"runNextTicks","ranges":[{"startOffset":1272,"endOffset":1468,"count":542},{"startOffset":1434,"endOffset":1467,"count":0}],"isBlockCoverage":true},{"functionName":"processTicksAndRejections","ranges":[{"startOffset":1470,"endOffset":2438,"count":281},{"startOffset":1526,"endOffset":2318,"count":311},{"startOffset":1561,"endOffset":2293,"count":476},{"startOffset":1762,"endOffset":1795,"count":9},{"startOffset":1795,"endOffset":2169,"count":467},{"startOffset":1882,"endOffset":1915,"count":147},{"startOffset":1928,"endOffset":1970,"count":320},{"startOffset":1983,"endOffset":2034,"count":0},{"startOffset":2047,"endOffset":2107,"count":0},{"startOffset":2120,"endOffset":2147,"count":0},{"startOffset":2231,"endOffset":2252,"count":0}],"isBlockCoverage":true},{"functionName":"nextTick","ranges":[{"startOffset":2582,"endOffset":3497,"count":476},{"startOffset":2654,"endOffset":2695,"count":0},{"startOffset":2725,"endOffset":2732,"count":0},{"startOffset":2780,"endOffset":2794,"count":9},{"startOffset":2799,"endOffset":2836,"count":147},{"startOffset":2841,"endOffset":2892,"count":320},{"startOffset":2897,"endOffset":2962,"count":0},{"startOffset":2967,"endOffset":3110,"count":0},{"startOffset":3139,"endOffset":3165,"count":314},{"startOffset":3409,"endOffset":3469,"count":0}],"isBlockCoverage":true},{"functionName":"runMicrotask","ranges":[{"startOffset":3499,"endOffset":3675,"count":0}],"isBlockCoverage":false},{"functionName":"queueMicrotask","ranges":[{"startOffset":3747,"endOffset":4107,"count":0}],"isBlockCoverage":false},{"functionName":"setupTaskQueue","ranges":[{"startOffset":4130,"endOffset":4387,"count":1}],"isBlockCoverage":true}]},{"scriptId":"24","url":"internal/process/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9605,"count":1}],"isBlockCoverage":false},{"functionName":"setHasRejectionToWarn","ranges":[{"startOffset":1918,"endOffset":2008,"count":281},{"startOffset":1998,"endOffset":2001,"count":0}],"isBlockCoverage":true},{"functionName":"hasRejectionToWarn","ranges":[{"startOffset":2010,"endOffset":2089,"count":1084}],"isBlockCoverage":true},{"functionName":"getUnhandledRejectionsMode","ranges":[{"startOffset":2091,"endOffset":2626,"count":0}],"isBlockCoverage":false},{"functionName":"promiseRejectHandler","ranges":[{"startOffset":2628,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"resolveError","ranges":[{"startOffset":3199,"endOffset":3449,"count":0}],"isBlockCoverage":false},{"functionName":"unhandledRejection","ranges":[{"startOffset":3451,"endOffset":3745,"count":0}],"isBlockCoverage":false},{"functionName":"handledRejection","ranges":[{"startOffset":3747,"endOffset":4563,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionWarning","ranges":[{"startOffset":4635,"endOffset":5531,"count":0}],"isBlockCoverage":false},{"functionName":"emitDeprecationWarning","ranges":[{"startOffset":5564,"endOffset":5849,"count":0}],"isBlockCoverage":false},{"functionName":"processPromiseRejections","ranges":[{"startOffset":6022,"endOffset":8506,"count":281},{"startOffset":6180,"endOffset":6346,"count":0},{"startOffset":6411,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"getErrorWithoutStack","ranges":[{"startOffset":8508,"endOffset":8926,"count":0}],"isBlockCoverage":false},{"functionName":"generateUnhandledRejectionError","ranges":[{"startOffset":8928,"endOffset":9398,"count":0}],"isBlockCoverage":false},{"functionName":"listenForRejections","ranges":[{"startOffset":9400,"endOffset":9484,"count":1}],"isBlockCoverage":true}]},{"scriptId":"25","url":"internal/fixed_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4184,"count":1}],"isBlockCoverage":false},{"functionName":"FixedCircularBuffer","ranges":[{"startOffset":2959,"endOffset":3073,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3077,"endOffset":3129,"count":1574}],"isBlockCoverage":true},{"functionName":"isFull","ranges":[{"startOffset":3133,"endOffset":3200,"count":476}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3204,"endOffset":3291,"count":476}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3295,"endOffset":3510,"count":787},{"startOffset":3388,"endOffset":3400,"count":311},{"startOffset":3400,"endOffset":3509,"count":476}],"isBlockCoverage":true},{"functionName":"FixedQueue","ranges":[{"startOffset":3552,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3630,"endOffset":3677,"count":787}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3681,"endOffset":3945,"count":476},{"startOffset":3722,"endOffset":3915,"count":0}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3949,"endOffset":4180,"count":787},{"startOffset":4041,"endOffset":4062,"count":625},{"startOffset":4064,"endOffset":4159,"count":0}],"isBlockCoverage":true}]},{"scriptId":"26","url":"async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9502,"count":1}],"isBlockCoverage":false},{"functionName":"AsyncHook","ranges":[{"startOffset":1416,"endOffset":2250,"count":1},{"startOffset":1544,"endOffset":1586,"count":0},{"startOffset":1616,"endOffset":1647,"count":0},{"startOffset":1655,"endOffset":1699,"count":0},{"startOffset":1728,"endOffset":1758,"count":0},{"startOffset":1766,"endOffset":1809,"count":0},{"startOffset":1840,"endOffset":1872,"count":0},{"startOffset":1880,"endOffset":1925,"count":0},{"startOffset":1963,"endOffset":2002,"count":0},{"startOffset":2010,"endOffset":2062,"count":0}],"isBlockCoverage":true},{"functionName":"enable","ranges":[{"startOffset":2254,"endOffset":3491,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":3495,"endOffset":4271,"count":0}],"isBlockCoverage":false},{"functionName":"createHook","ranges":[{"startOffset":4276,"endOffset":4333,"count":1}],"isBlockCoverage":true},{"functionName":"AsyncResource","ranges":[{"startOffset":4426,"endOffset":5613,"count":0}],"isBlockCoverage":false},{"functionName":"runInAsyncScope","ranges":[{"startOffset":5617,"endOffset":5979,"count":0}],"isBlockCoverage":false},{"functionName":"emitDestroy","ranges":[{"startOffset":5983,"endOffset":6158,"count":0}],"isBlockCoverage":false},{"functionName":"asyncId","ranges":[{"startOffset":6162,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":6215,"endOffset":6279,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6283,"endOffset":6785,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6796,"endOffset":6915,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":6978,"endOffset":7260,"count":0}],"isBlockCoverage":false},{"functionName":"AsyncLocalStorage","ranges":[{"startOffset":7357,"endOffset":7454,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":7458,"endOffset":7783,"count":0}],"isBlockCoverage":false},{"functionName":"_enable","ranges":[{"startOffset":7787,"endOffset":7933,"count":0}],"isBlockCoverage":false},{"functionName":"_propagate","ranges":[{"startOffset":8002,"endOffset":8176,"count":0}],"isBlockCoverage":false},{"functionName":"enterWith","ranges":[{"startOffset":8180,"endOffset":8312,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":8316,"endOffset":8892,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":8896,"endOffset":9094,"count":0}],"isBlockCoverage":false},{"functionName":"getStore","ranges":[{"startOffset":9098,"endOffset":9237,"count":0}],"isBlockCoverage":false}]},{"scriptId":"27","url":"internal/console/global.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1939,"count":1}],"isBlockCoverage":false}]},{"scriptId":"28","url":"internal/console/constructor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19933,"count":1}],"isBlockCoverage":false},{"functionName":"Console","ranges":[{"startOffset":2592,"endOffset":4763,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":4972,"endOffset":5026,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5274,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5683,"endOffset":6271,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5865,"endOffset":5960,"count":102},{"startOffset":5898,"endOffset":5921,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":5972,"endOffset":6002,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6104,"endOffset":6203,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6215,"endOffset":6245,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6341,"endOffset":7523,"count":1}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":7593,"endOffset":9039,"count":34},{"startOffset":7819,"endOffset":7833,"count":0},{"startOffset":7907,"endOffset":7933,"count":0},{"startOffset":7972,"endOffset":8161,"count":0},{"startOffset":8219,"endOffset":8247,"count":0},{"startOffset":8604,"endOffset":8631,"count":30},{"startOffset":8685,"endOffset":8969,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9112,"endOffset":9602,"count":34},{"startOffset":9325,"endOffset":9331,"count":0},{"startOffset":9406,"endOffset":9527,"count":0},{"startOffset":9571,"endOffset":9595,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9673,"endOffset":9801,"count":34}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9872,"endOffset":10000,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteErrorHandler","ranges":[{"startOffset":10089,"endOffset":10978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10157,"endOffset":10975,"count":34},{"startOffset":10427,"endOffset":10445,"count":0},{"startOffset":10920,"endOffset":10965,"count":5}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":11007,"endOffset":11094,"count":34}],"isBlockCoverage":true},{"functionName":"warn","ranges":[{"startOffset":11100,"endOffset":11188,"count":0}],"isBlockCoverage":false},{"functionName":"dir","ranges":[{"startOffset":11194,"endOffset":11379,"count":0}],"isBlockCoverage":false},{"functionName":"time","ranges":[{"startOffset":11384,"endOffset":11742,"count":0}],"isBlockCoverage":false},{"functionName":"timeEnd","ranges":[{"startOffset":11747,"endOffset":12036,"count":0}],"isBlockCoverage":false},{"functionName":"timeLog","ranges":[{"startOffset":12041,"endOffset":12279,"count":0}],"isBlockCoverage":false},{"functionName":"trace","ranges":[{"startOffset":12291,"endOffset":12477,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":12482,"endOffset":12700,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":12761,"endOffset":13191,"count":0}],"isBlockCoverage":false},{"functionName":"count","ranges":[{"startOffset":13252,"endOffset":13708,"count":0}],"isBlockCoverage":false},{"functionName":"countReset","ranges":[{"startOffset":13774,"endOffset":14062,"count":0}],"isBlockCoverage":false},{"functionName":"group","ranges":[{"startOffset":14067,"endOffset":14235,"count":0}],"isBlockCoverage":false},{"functionName":"groupEnd","ranges":[{"startOffset":14240,"endOffset":14408,"count":0}],"isBlockCoverage":false},{"functionName":"table","ranges":[{"startOffset":14457,"endOffset":17867,"count":0}],"isBlockCoverage":false},{"functionName":"timeLogImpl","ranges":[{"startOffset":17908,"endOffset":18404,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":18406,"endOffset":18483,"count":0}],"isBlockCoverage":false},{"functionName":"formatTime","ranges":[{"startOffset":18485,"endOffset":19247,"count":0}],"isBlockCoverage":false},{"functionName":"isArray","ranges":[{"startOffset":19381,"endOffset":19437,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":19440,"endOffset":19458,"count":0}],"isBlockCoverage":false}]},{"scriptId":"29","url":"internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1582,"count":1}],"isBlockCoverage":false}]},{"scriptId":"30","url":"internal/util/inspector.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2215,"count":1}],"isBlockCoverage":false},{"functionName":"sendInspectorCommand","ranges":[{"startOffset":92,"endOffset":434,"count":0}],"isBlockCoverage":false},{"functionName":"installConsoleExtensions","ranges":[{"startOffset":508,"endOffset":1062,"count":0}],"isBlockCoverage":false},{"functionName":"wrapConsole","ranges":[{"startOffset":1141,"endOffset":1931,"count":1},{"startOffset":1299,"endOffset":1929,"count":23},{"startOffset":1514,"endOffset":1807,"count":19},{"startOffset":1807,"endOffset":1925,"count":4}],"isBlockCoverage":true},{"functionName":"get consoleFromVM","ranges":[{"startOffset":2103,"endOffset":2154,"count":0}],"isBlockCoverage":false},{"functionName":"set consoleFromVM","ranges":[{"startOffset":2158,"endOffset":2211,"count":1}],"isBlockCoverage":true}]},{"scriptId":"31","url":"internal/url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":41325,"count":1}],"isBlockCoverage":false},{"functionName":"toUSVString","ranges":[{"startOffset":2224,"endOffset":2520,"count":75},{"startOffset":2477,"endOffset":2519,"count":0}],"isBlockCoverage":true},{"functionName":"serializeTupleOrigin","ranges":[{"startOffset":2732,"endOffset":2850,"count":0}],"isBlockCoverage":false},{"functionName":"URLContext","ranges":[{"startOffset":3254,"endOffset":3477,"count":1107}],"isBlockCoverage":true},{"functionName":"URLSearchParams","ranges":[{"startOffset":3767,"endOffset":6130,"count":1014},{"startOffset":3882,"endOffset":6068,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6134,"endOffset":7204,"count":0}],"isBlockCoverage":false},{"functionName":"onParseComplete","ranges":[{"startOffset":7208,"endOffset":7901,"count":1014},{"startOffset":7463,"endOffset":7473,"count":0},{"startOffset":7536,"endOffset":7546,"count":0},{"startOffset":7627,"endOffset":7631,"count":0}],"isBlockCoverage":true},{"functionName":"onParseError","ranges":[{"startOffset":7903,"endOffset":7978,"count":93}],"isBlockCoverage":true},{"functionName":"onParseProtocolComplete","ranges":[{"startOffset":7980,"endOffset":8325,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostnameComplete","ranges":[{"startOffset":8327,"endOffset":8673,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePortComplete","ranges":[{"startOffset":8675,"endOffset":8837,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostComplete","ranges":[{"startOffset":8839,"endOffset":9145,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePathComplete","ranges":[{"startOffset":9147,"endOffset":9641,"count":173},{"startOffset":9413,"endOffset":9481,"count":0}],"isBlockCoverage":true},{"functionName":"onParseSearchComplete","ranges":[{"startOffset":9643,"endOffset":9811,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHashComplete","ranges":[{"startOffset":9813,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"URL","ranges":[{"startOffset":9999,"endOffset":10327,"count":1107},{"startOffset":10134,"endOffset":10186,"count":360}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10331,"endOffset":10412,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10416,"endOffset":10509,"count":3262}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10584,"endOffset":10784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10788,"endOffset":11721,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":11890,"endOffset":13071,"count":942},{"startOffset":11975,"endOffset":12036,"count":0},{"startOffset":12446,"endOffset":12607,"count":0},{"startOffset":12639,"endOffset":12676,"count":0},{"startOffset":12730,"endOffset":12752,"count":0},{"startOffset":12760,"endOffset":12824,"count":0},{"startOffset":12936,"endOffset":12959,"count":0},{"startOffset":13021,"endOffset":13047,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":13345,"endOffset":13404,"count":278}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":13470,"endOffset":13515,"count":664}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":13521,"endOffset":13701,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":13782,"endOffset":14410,"count":486},{"startOffset":13922,"endOffset":14166,"count":0},{"startOffset":14175,"endOffset":14187,"count":0},{"startOffset":14196,"endOffset":14211,"count":0},{"startOffset":14220,"endOffset":14233,"count":0},{"startOffset":14242,"endOffset":14256,"count":0},{"startOffset":14265,"endOffset":14276,"count":0},{"startOffset":14285,"endOffset":14368,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14480,"endOffset":14528,"count":639}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":14534,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14973,"endOffset":15023,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15029,"endOffset":15427,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15497,"endOffset":15547,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15553,"endOffset":15951,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16017,"endOffset":16173,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":16179,"endOffset":16470,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16540,"endOffset":16592,"count":467}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":16598,"endOffset":16897,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16963,"endOffset":17063,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17069,"endOffset":17386,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":17456,"endOffset":17651,"count":3089},{"startOffset":17535,"endOffset":17554,"count":0},{"startOffset":17596,"endOffset":17606,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":17657,"endOffset":17876,"count":173},{"startOffset":17767,"endOffset":17774,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17944,"endOffset":18083,"count":75},{"startOffset":18016,"endOffset":18031,"count":0},{"startOffset":18051,"endOffset":18082,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18089,"endOffset":18581,"count":75},{"startOffset":18275,"endOffset":18523,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":18668,"endOffset":18714,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":18780,"endOffset":18931,"count":75},{"startOffset":18858,"endOffset":18876,"count":0},{"startOffset":18896,"endOffset":18930,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18937,"endOffset":19355,"count":75},{"startOffset":19159,"endOffset":19354,"count":0}],"isBlockCoverage":true},{"functionName":"toJSON","ranges":[{"startOffset":19501,"endOffset":19558,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":19568,"endOffset":19873,"count":0}],"isBlockCoverage":false},{"functionName":"initSearchParams","ranges":[{"startOffset":19875,"endOffset":20015,"count":1089},{"startOffset":19972,"endOffset":20014,"count":0}],"isBlockCoverage":true},{"functionName":"parseParams","ranges":[{"startOffset":20124,"endOffset":22425,"count":0}],"isBlockCoverage":false},{"functionName":"serializeParams","ranges":[{"startOffset":23404,"endOffset":23964,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":24019,"endOffset":24707,"count":2},{"startOffset":24357,"endOffset":24503,"count":13},{"startOffset":24558,"endOffset":24705,"count":1}],"isBlockCoverage":true},{"functionName":"merge","ranges":[{"startOffset":24727,"endOffset":25357,"count":0}],"isBlockCoverage":false},{"functionName":"append","ranges":[{"startOffset":25424,"endOffset":25811,"count":0}],"isBlockCoverage":false},{"functionName":"delete","ranges":[{"startOffset":25816,"endOffset":26315,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":26320,"endOffset":26754,"count":0}],"isBlockCoverage":false},{"functionName":"getAll","ranges":[{"startOffset":26759,"endOffset":27227,"count":0}],"isBlockCoverage":false},{"functionName":"has","ranges":[{"startOffset":27232,"endOffset":27660,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27665,"endOffset":28691,"count":0}],"isBlockCoverage":false},{"functionName":"sort","ranges":[{"startOffset":28696,"endOffset":29873,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":30036,"endOffset":30245,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":30250,"endOffset":30822,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":30877,"endOffset":31077,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":31082,"endOffset":31286,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":31419,"endOffset":31619,"count":0}],"isBlockCoverage":false},{"functionName":"createSearchParamsIterator","ranges":[{"startOffset":31899,"endOffset":32102,"count":0}],"isBlockCoverage":false},{"functionName":"next","ranges":[{"startOffset":32326,"endOffset":33079,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":33083,"endOffset":34297,"count":0}],"isBlockCoverage":false},{"functionName":"domainToASCII","ranges":[{"startOffset":34303,"endOffset":34478,"count":0}],"isBlockCoverage":false},{"functionName":"domainToUnicode","ranges":[{"startOffset":34480,"endOffset":34659,"count":0}],"isBlockCoverage":false},{"functionName":"urlToOptions","ranges":[{"startOffset":34802,"endOffset":35345,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLWin32","ranges":[{"startOffset":35381,"endOffset":36774,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLPosix","ranges":[{"startOffset":36776,"endOffset":37280,"count":467},{"startOffset":36839,"endOffset":36895,"count":0},{"startOffset":36973,"endOffset":37239,"count":32483},{"startOffset":37004,"endOffset":37235,"count":0}],"isBlockCoverage":true},{"functionName":"fileURLToPath","ranges":[{"startOffset":37282,"endOffset":37629,"count":467},{"startOffset":37349,"endOffset":37370,"count":0},{"startOffset":37408,"endOffset":37472,"count":0},{"startOffset":37510,"endOffset":37551,"count":0},{"startOffset":37571,"endOffset":37598,"count":0}],"isBlockCoverage":true},{"functionName":"encodePathChars","ranges":[{"startOffset":38389,"endOffset":38945,"count":173},{"startOffset":38460,"endOffset":38509,"count":0},{"startOffset":38615,"endOffset":38666,"count":0},{"startOffset":38702,"endOffset":38751,"count":0},{"startOffset":38787,"endOffset":38843,"count":0},{"startOffset":38879,"endOffset":38924,"count":0}],"isBlockCoverage":true},{"functionName":"pathToFileURL","ranges":[{"startOffset":38947,"endOffset":40062,"count":173},{"startOffset":39035,"endOffset":39065,"count":0},{"startOffset":39067,"endOffset":39616,"count":0},{"startOffset":39848,"endOffset":39911,"count":172},{"startOffset":39871,"endOffset":39910,"count":0},{"startOffset":39913,"endOffset":39966,"count":1},{"startOffset":39974,"endOffset":39990,"count":1}],"isBlockCoverage":true},{"functionName":"isURLInstance","ranges":[{"startOffset":40064,"endOffset":40183,"count":963},{"startOffset":40157,"endOffset":40180,"count":486}],"isBlockCoverage":true},{"functionName":"toPathIfFileURL","ranges":[{"startOffset":40185,"endOffset":40330,"count":496},{"startOffset":40268,"endOffset":40289,"count":477},{"startOffset":40289,"endOffset":40329,"count":19}],"isBlockCoverage":true},{"functionName":"constructUrl","ranges":[{"startOffset":40332,"endOffset":41032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"32","url":"internal/querystring.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3021,"count":1}],"isBlockCoverage":false},{"functionName":"encodeStr","ranges":[{"startOffset":1336,"endOffset":2959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"33","url":"path.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":43399,"count":1}],"isBlockCoverage":false},{"functionName":"isPathSeparator","ranges":[{"startOffset":1492,"endOffset":1596,"count":0}],"isBlockCoverage":false},{"functionName":"isPosixPathSeparator","ranges":[{"startOffset":1598,"endOffset":1675,"count":84288}],"isBlockCoverage":true},{"functionName":"isWindowsDeviceRoot","ranges":[{"startOffset":1677,"endOffset":1847,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeString","ranges":[{"startOffset":1910,"endOffset":3714,"count":1054},{"startOffset":2127,"endOffset":3698,"count":84280},{"startOffset":2160,"endOffset":2186,"count":83226},{"startOffset":2186,"endOffset":2277,"count":1054},{"startOffset":2229,"endOffset":2235,"count":1046},{"startOffset":2235,"endOffset":2277,"count":8},{"startOffset":2277,"endOffset":2310,"count":83234},{"startOffset":2310,"endOffset":3599,"count":11507},{"startOffset":2342,"endOffset":2355,"count":10056},{"startOffset":2357,"endOffset":2382,"count":1546},{"startOffset":2382,"endOffset":3556,"count":9961},{"startOffset":2404,"endOffset":3343,"count":31},{"startOffset":2460,"endOffset":2518,"count":0},{"startOffset":2519,"endOffset":2577,"count":0},{"startOffset":2715,"endOffset":2791,"count":0},{"startOffset":3024,"endOffset":3193,"count":0},{"startOffset":3203,"endOffset":3335,"count":0},{"startOffset":3343,"endOffset":3556,"count":9930},{"startOffset":3389,"endOffset":3442,"count":8876},{"startOffset":3442,"endOffset":3501,"count":1054},{"startOffset":3556,"endOffset":3599,"count":11476},{"startOffset":3599,"endOffset":3694,"count":71727},{"startOffset":3627,"endOffset":3641,"count":1012},{"startOffset":3643,"endOffset":3664,"count":161},{"startOffset":3664,"endOffset":3694,"count":71566}],"isBlockCoverage":true},{"functionName":"_format","ranges":[{"startOffset":3892,"endOffset":4317,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":4435,"endOffset":8838,"count":0}],"isBlockCoverage":false},{"functionName":"normalize","ranges":[{"startOffset":8904,"endOffset":11655,"count":0}],"isBlockCoverage":false},{"functionName":"isAbsolute","ranges":[{"startOffset":11722,"endOffset":12090,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":12159,"endOffset":14215,"count":0}],"isBlockCoverage":false},{"functionName":"relative","ranges":[{"startOffset":14512,"endOffset":17986,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":17991,"endOffset":19019,"count":0}],"isBlockCoverage":false},{"functionName":"dirname","ranges":[{"startOffset":19085,"endOffset":21413,"count":0}],"isBlockCoverage":false},{"functionName":"basename","ranges":[{"startOffset":21506,"endOffset":24141,"count":0}],"isBlockCoverage":false},{"functionName":"extname","ranges":[{"startOffset":24207,"endOffset":26216,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":26420,"endOffset":30886,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":31069,"endOffset":31965,"count":1046},{"startOffset":31192,"endOffset":31212,"count":2667},{"startOffset":31219,"endOffset":31519,"count":1622},{"startOffset":31247,"endOffset":31256,"count":1621},{"startOffset":31257,"endOffset":31272,"count":1},{"startOffset":31369,"endOffset":31396,"count":0},{"startOffset":31904,"endOffset":31954,"count":0},{"startOffset":31955,"endOffset":31960,"count":0}],"isBlockCoverage":true},{"functionName":"normalize","ranges":[{"startOffset":32031,"endOffset":32606,"count":8},{"startOffset":32117,"endOffset":32128,"count":0},{"startOffset":32418,"endOffset":32512,"count":0},{"startOffset":32546,"endOffset":32558,"count":0},{"startOffset":32582,"endOffset":32594,"count":0}],"isBlockCoverage":true},{"functionName":"isAbsolute","ranges":[{"startOffset":32673,"endOffset":32802,"count":259}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":32871,"endOffset":33285,"count":8},{"startOffset":32920,"endOffset":32931,"count":0},{"startOffset":32990,"endOffset":33197,"count":16},{"startOffset":33126,"endOffset":33183,"count":8},{"startOffset":33234,"endOffset":33245,"count":0}],"isBlockCoverage":true},{"functionName":"relative","ranges":[{"startOffset":33375,"endOffset":35585,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":35590,"endOffset":35666,"count":907}],"isBlockCoverage":true},{"functionName":"dirname","ranges":[{"startOffset":35732,"endOffset":36360,"count":391},{"startOffset":35815,"endOffset":35826,"count":0},{"startOffset":35984,"endOffset":36221,"count":3937},{"startOffset":36039,"endOffset":36123,"count":391},{"startOffset":36123,"endOffset":36215,"count":3546},{"startOffset":36249,"endOffset":36276,"count":0},{"startOffset":36313,"endOffset":36325,"count":0}],"isBlockCoverage":true},{"functionName":"basename","ranges":[{"startOffset":36453,"endOffset":38773,"count":86},{"startOffset":36508,"endOffset":36535,"count":0},{"startOffset":36664,"endOffset":36681,"count":0},{"startOffset":36682,"endOffset":36710,"count":0},{"startOffset":36712,"endOffset":38179,"count":0},{"startOffset":38227,"endOffset":38696,"count":880},{"startOffset":38282,"endOffset":38506,"count":86},{"startOffset":38506,"endOffset":38690,"count":794},{"startOffset":38528,"endOffset":38690,"count":86},{"startOffset":38724,"endOffset":38734,"count":0}],"isBlockCoverage":true},{"functionName":"extname","ranges":[{"startOffset":38839,"endOffset":40497,"count":75},{"startOffset":39172,"endOffset":40118,"count":744},{"startOffset":39252,"endOffset":39498,"count":75},{"startOffset":39472,"endOffset":39498,"count":0},{"startOffset":39498,"endOffset":39521,"count":669},{"startOffset":39521,"endOffset":39678,"count":75},{"startOffset":39678,"endOffset":39708,"count":669},{"startOffset":39708,"endOffset":39908,"count":75},{"startOffset":39837,"endOffset":39900,"count":0},{"startOffset":39908,"endOffset":40112,"count":594},{"startOffset":39935,"endOffset":40112,"count":442},{"startOffset":40357,"endOffset":40389,"count":0},{"startOffset":40390,"endOffset":40428,"count":0},{"startOffset":40431,"endOffset":40455,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":40706,"endOffset":43060,"count":0}],"isBlockCoverage":false}]},{"scriptId":"34","url":"internal/encoding.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15916,"count":1}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":958,"endOffset":1067,"count":0}],"isBlockCoverage":false},{"functionName":"validateEncoder","ranges":[{"startOffset":1069,"endOffset":1194,"count":0}],"isBlockCoverage":false},{"functionName":"validateDecoder","ranges":[{"startOffset":1196,"endOffset":1321,"count":19},{"startOffset":1277,"endOffset":1319,"count":0}],"isBlockCoverage":true},{"functionName":"validateArgument","ranges":[{"startOffset":1323,"endOffset":1533,"count":20},{"startOffset":1470,"endOffset":1531,"count":0}],"isBlockCoverage":true},{"functionName":"trimAsciiWhitespace","ranges":[{"startOffset":8274,"endOffset":8756,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingFromLabel","ranges":[{"startOffset":8758,"endOffset":8937,"count":1},{"startOffset":8869,"endOffset":8936,"count":0}],"isBlockCoverage":true},{"functionName":"TextEncoder","ranges":[{"startOffset":9008,"endOffset":9054,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":9058,"endOffset":9125,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":9129,"endOffset":9221,"count":0}],"isBlockCoverage":false},{"functionName":"encodeInto","ranges":[{"startOffset":9225,"endOffset":9535,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9539,"endOffset":9934,"count":0}],"isBlockCoverage":false},{"functionName":"makeTextDecoderICU","ranges":[{"startOffset":10305,"endOffset":11966,"count":1}],"isBlockCoverage":true},{"functionName":"TextDecoder","ranges":[{"startOffset":10443,"endOffset":11170,"count":1},{"startOffset":10675,"endOffset":10722,"count":0},{"startOffset":10806,"endOffset":10829,"count":0},{"startOffset":10870,"endOffset":10898,"count":0},{"startOffset":11000,"endOffset":11047,"count":0}],"isBlockCoverage":true},{"functionName":"decode","ranges":[{"startOffset":11177,"endOffset":11937,"count":19},{"startOffset":11279,"endOffset":11330,"count":0},{"startOffset":11367,"endOffset":11546,"count":0},{"startOffset":11693,"endOffset":11696,"count":0},{"startOffset":11814,"endOffset":11896,"count":0}],"isBlockCoverage":true},{"functionName":"makeTextDecoderJS","ranges":[{"startOffset":11968,"endOffset":14509,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":14634,"endOffset":14715,"count":0}],"isBlockCoverage":false},{"functionName":"get fatal","ranges":[{"startOffset":14722,"endOffset":14849,"count":0}],"isBlockCoverage":false},{"functionName":"get ignoreBOM","ranges":[{"startOffset":14856,"endOffset":15011,"count":0}],"isBlockCoverage":false},{"functionName":"ObjectGetOwnPropertyDescriptors","ranges":[{"startOffset":15018,"endOffset":15632,"count":0}],"isBlockCoverage":false}]},{"scriptId":"35","url":"timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8324,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1797,"endOffset":1822,"count":1}],"isBlockCoverage":true},{"functionName":"unenroll","ranges":[{"startOffset":2319,"endOffset":3503,"count":38},{"startOffset":2372,"endOffset":2379,"count":0},{"startOffset":2439,"endOffset":2485,"count":0},{"startOffset":2576,"endOffset":2614,"count":0},{"startOffset":2620,"endOffset":2655,"count":0},{"startOffset":3049,"endOffset":3396,"count":8},{"startOffset":3230,"endOffset":3372,"count":4}],"isBlockCoverage":true},{"functionName":"enroll","ranges":[{"startOffset":3710,"endOffset":3963,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":3994,"endOffset":4639,"count":733},{"startOffset":4149,"endOffset":4156,"count":725},{"startOffset":4186,"endOffset":4227,"count":0},{"startOffset":4232,"endOffset":4279,"count":0},{"startOffset":4284,"endOffset":4505,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":4716,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"clearTimeout","ranges":[{"startOffset":4856,"endOffset":5222,"count":218},{"startOffset":4899,"endOffset":4918,"count":68},{"startOffset":4920,"endOffset":4987,"count":38},{"startOffset":4987,"endOffset":5048,"count":180},{"startOffset":5050,"endOffset":5220,"count":0}],"isBlockCoverage":true},{"functionName":"setInterval","ranges":[{"startOffset":5224,"endOffset":5871,"count":0}],"isBlockCoverage":false},{"functionName":"clearInterval","ranges":[{"startOffset":5873,"endOffset":6171,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.close","ranges":[{"startOffset":6199,"endOffset":6250,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.","ranges":[{"startOffset":6292,"endOffset":6453,"count":0}],"isBlockCoverage":false},{"functionName":"setImmediate","ranges":[{"startOffset":6456,"endOffset":6997,"count":95},{"startOffset":6606,"endOffset":6626,"count":35},{"startOffset":6631,"endOffset":6672,"count":60},{"startOffset":6677,"endOffset":6724,"count":0},{"startOffset":6729,"endOffset":6950,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":7076,"endOffset":7212,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":7219,"endOffset":7685,"count":0}],"isBlockCoverage":false}]},{"scriptId":"36","url":"internal/linkedlist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1112,"count":1}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":15,"endOffset":88,"count":0}],"isBlockCoverage":false},{"functionName":"peek","ranges":[{"startOffset":118,"endOffset":210,"count":976},{"startOffset":171,"endOffset":183,"count":3},{"startOffset":183,"endOffset":209,"count":973}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":245,"endOffset":472,"count":1526}],"isBlockCoverage":true},{"functionName":"append","ranges":[{"startOffset":528,"endOffset":980,"count":763},{"startOffset":579,"endOffset":596,"count":0}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":982,"endOffset":1042,"count":8}],"isBlockCoverage":true}]},{"scriptId":"37","url":"internal/timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18495,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4398,"endOffset":4423,"count":1}],"isBlockCoverage":true},{"functionName":"initAsyncResource","ranges":[{"startOffset":5366,"endOffset":5644,"count":858},{"startOffset":5592,"endOffset":5642,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout","ranges":[{"startOffset":5729,"endOffset":6726,"count":763},{"startOffset":5852,"endOffset":5875,"count":38},{"startOffset":5878,"endOffset":6214,"count":725},{"startOffset":5909,"endOffset":6144,"count":0},{"startOffset":6551,"endOffset":6558,"count":0},{"startOffset":6614,"endOffset":6628,"count":733}],"isBlockCoverage":true},{"functionName":"Timeout.","ranges":[{"startOffset":6839,"endOffset":7010,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.refresh","ranges":[{"startOffset":7041,"endOffset":7139,"count":139},{"startOffset":7078,"endOffset":7091,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout.unref","ranges":[{"startOffset":7168,"endOffset":7296,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.ref","ranges":[{"startOffset":7323,"endOffset":7451,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.hasRef","ranges":[{"startOffset":7481,"endOffset":7518,"count":0}],"isBlockCoverage":false},{"functionName":"TimersList","ranges":[{"startOffset":7521,"endOffset":7821,"count":8}],"isBlockCoverage":true},{"functionName":"TimersList.","ranges":[{"startOffset":7937,"endOffset":8108,"count":0}],"isBlockCoverage":false},{"functionName":"ImmediateList","ranges":[{"startOffset":8166,"endOffset":8234,"count":2}],"isBlockCoverage":true},{"functionName":"ImmediateList.append","ranges":[{"startOffset":8413,"endOffset":8580,"count":95},{"startOffset":8456,"endOffset":8525,"count":68},{"startOffset":8525,"endOffset":8558,"count":27}],"isBlockCoverage":true},{"functionName":"ImmediateList.remove","ranges":[{"startOffset":8758,"endOffset":9095,"count":0}],"isBlockCoverage":false},{"functionName":"incRefCount","ranges":[{"startOffset":9098,"endOffset":9174,"count":733},{"startOffset":9151,"endOffset":9172,"count":1}],"isBlockCoverage":true},{"functionName":"decRefCount","ranges":[{"startOffset":9176,"endOffset":9253,"count":8},{"startOffset":9229,"endOffset":9251,"count":1}],"isBlockCoverage":true},{"functionName":"active","ranges":[{"startOffset":9336,"endOffset":9390,"count":0}],"isBlockCoverage":false},{"functionName":"unrefActive","ranges":[{"startOffset":9537,"endOffset":9597,"count":139}],"isBlockCoverage":true},{"functionName":"insertGuarded","ranges":[{"startOffset":9818,"endOffset":10334,"count":139},{"startOffset":9914,"endOffset":9936,"count":0},{"startOffset":9949,"endOffset":10064,"count":0},{"startOffset":10066,"endOffset":10333,"count":0}],"isBlockCoverage":true},{"functionName":"insert","ranges":[{"startOffset":10336,"endOffset":10987,"count":763},{"startOffset":10659,"endOffset":10960,"count":8},{"startOffset":10894,"endOffset":10956,"count":6}],"isBlockCoverage":true},{"functionName":"setUnrefTimeout","ranges":[{"startOffset":10989,"endOffset":11295,"count":30},{"startOffset":11116,"endOffset":11167,"count":0}],"isBlockCoverage":true},{"functionName":"getTimerDuration","ranges":[{"startOffset":11362,"endOffset":11884,"count":60},{"startOffset":11471,"endOffset":11553,"count":0},{"startOffset":11628,"endOffset":11865,"count":0}],"isBlockCoverage":true},{"functionName":"compareTimersLists","ranges":[{"startOffset":11886,"endOffset":12091,"count":515},{"startOffset":11988,"endOffset":12068,"count":0}],"isBlockCoverage":true},{"functionName":"setPosition","ranges":[{"startOffset":12093,"endOffset":12164,"count":276}],"isBlockCoverage":true},{"functionName":"getTimerCallbacks","ranges":[{"startOffset":12166,"endOffset":17263,"count":1}],"isBlockCoverage":true},{"functionName":"processImmediate","ranges":[{"startOffset":12478,"endOffset":14279,"count":27},{"startOffset":12557,"endOffset":12581,"count":0},{"startOffset":12974,"endOffset":14162,"count":95},{"startOffset":13018,"endOffset":13033,"count":68},{"startOffset":13033,"endOffset":13083,"count":27},{"startOffset":13350,"endOffset":13446,"count":0},{"startOffset":13851,"endOffset":13876,"count":35},{"startOffset":13876,"endOffset":13932,"count":60},{"startOffset":14034,"endOffset":14055,"count":0},{"startOffset":14206,"endOffset":14235,"count":0}],"isBlockCoverage":true},{"functionName":"processTimers","ranges":[{"startOffset":14284,"endOffset":14758,"count":251},{"startOffset":14474,"endOffset":14740,"count":502},{"startOffset":14505,"endOffset":14604,"count":251},{"startOffset":14582,"endOffset":14595,"count":0},{"startOffset":14604,"endOffset":14642,"count":251},{"startOffset":14642,"endOffset":14657,"count":0},{"startOffset":14657,"endOffset":14740,"count":251},{"startOffset":14740,"endOffset":14757,"count":0}],"isBlockCoverage":true},{"functionName":"listOnTimeout","ranges":[{"startOffset":14762,"endOffset":17204,"count":251},{"startOffset":14955,"endOffset":16659,"count":973},{"startOffset":15176,"endOffset":15404,"count":248},{"startOffset":15404,"endOffset":15444,"count":725},{"startOffset":15444,"endOffset":15459,"count":474},{"startOffset":15459,"endOffset":15505,"count":251},{"startOffset":15505,"endOffset":15661,"count":725},{"startOffset":15661,"endOffset":15890,"count":0},{"startOffset":15890,"endOffset":16009,"count":725},{"startOffset":16009,"endOffset":16031,"count":0},{"startOffset":16031,"endOffset":16145,"count":725},{"startOffset":16145,"endOffset":16195,"count":0},{"startOffset":16204,"endOffset":16626,"count":725},{"startOffset":16240,"endOffset":16268,"count":0},{"startOffset":16270,"endOffset":16379,"count":0},{"startOffset":16587,"endOffset":16608,"count":0},{"startOffset":16626,"endOffset":16659,"count":725},{"startOffset":16659,"endOffset":17200,"count":3}],"isBlockCoverage":true},{"functionName":"Immediate","ranges":[{"startOffset":17285,"endOffset":17607,"count":95}],"isBlockCoverage":true},{"functionName":"ref","ranges":[{"startOffset":17611,"endOffset":17784,"count":95},{"startOffset":17732,"endOffset":17757,"count":27}],"isBlockCoverage":true},{"functionName":"unref","ranges":[{"startOffset":17788,"endOffset":17964,"count":0}],"isBlockCoverage":false},{"functionName":"hasRef","ranges":[{"startOffset":17968,"endOffset":18009,"count":0}],"isBlockCoverage":false}]},{"scriptId":"38","url":"internal/priority_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2924,"count":1}],"isBlockCoverage":false},{"functionName":"PriorityQueue","ranges":[{"startOffset":570,"endOffset":811,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":815,"endOffset":855,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":859,"endOffset":1044,"count":8},{"startOffset":995,"endOffset":1012,"count":0}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":1048,"endOffset":1087,"count":502}],"isBlockCoverage":true},{"functionName":"percolateDown","ranges":[{"startOffset":1091,"endOffset":1759,"count":255},{"startOffset":1309,"endOffset":1668,"count":253},{"startOffset":1375,"endOffset":1422,"count":251},{"startOffset":1537,"endOffset":1543,"count":250},{"startOffset":1543,"endOffset":1668,"count":3}],"isBlockCoverage":true},{"functionName":"percolateUp","ranges":[{"startOffset":1763,"endOffset":2254,"count":8},{"startOffset":1941,"endOffset":2163,"count":10},{"startOffset":2029,"endOffset":2035,"count":0}],"isBlockCoverage":true},{"functionName":"removeAt","ranges":[{"startOffset":2258,"endOffset":2591,"count":7},{"startOffset":2454,"endOffset":2505,"count":1},{"startOffset":2515,"endOffset":2537,"count":0}],"isBlockCoverage":true},{"functionName":"remove","ranges":[{"startOffset":2595,"endOffset":2761,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":2765,"endOffset":2920,"count":3},{"startOffset":2867,"endOffset":2874,"count":0}],"isBlockCoverage":true}]},{"scriptId":"39","url":"internal/util/debuglog.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2815,"count":1}],"isBlockCoverage":false},{"functionName":"initializeDebugEnv","ranges":[{"startOffset":500,"endOffset":873,"count":1},{"startOffset":591,"endOffset":790,"count":0}],"isBlockCoverage":true},{"functionName":"emitWarningIfNeeded","ranges":[{"startOffset":947,"endOffset":1272,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":1274,"endOffset":1292,"count":5224}],"isBlockCoverage":true},{"functionName":"debuglogImpl","ranges":[{"startOffset":1294,"endOffset":1859,"count":10},{"startOffset":1369,"endOffset":1831,"count":6},{"startOffset":1388,"endOffset":1784,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":1477,"endOffset":1777,"count":0}],"isBlockCoverage":false},{"functionName":"debuglog","ranges":[{"startOffset":2079,"endOffset":2758,"count":14}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":2110,"endOffset":2206,"count":10}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":2221,"endOffset":2458,"count":10}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":2488,"endOffset":2557,"count":0}],"isBlockCoverage":false},{"functionName":"logger","ranges":[{"startOffset":2576,"endOffset":2603,"count":10}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2653,"endOffset":2687,"count":0}],"isBlockCoverage":false}]},{"scriptId":"40","url":"internal/process/execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6944,"count":1}],"isBlockCoverage":false},{"functionName":"tryGetCwd","ranges":[{"startOffset":526,"endOffset":856,"count":1},{"startOffset":587,"endOffset":854,"count":0}],"isBlockCoverage":true},{"functionName":"evalModule","ranges":[{"startOffset":858,"endOffset":1298,"count":0}],"isBlockCoverage":false},{"functionName":"evalScript","ranges":[{"startOffset":1300,"endOffset":2682,"count":0}],"isBlockCoverage":false},{"functionName":"setUncaughtExceptionCaptureCallback","ranges":[{"startOffset":2759,"endOffset":3453,"count":0}],"isBlockCoverage":false},{"functionName":"hasUncaughtExceptionCaptureCallback","ranges":[{"startOffset":3455,"endOffset":3556,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":3558,"endOffset":3576,"count":0}],"isBlockCoverage":false},{"functionName":"createOnGlobalUncaughtException","ranges":[{"startOffset":4119,"endOffset":6518,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4388,"endOffset":6515,"count":0}],"isBlockCoverage":false},{"functionName":"readStdin","ranges":[{"startOffset":6520,"endOffset":6725,"count":0}],"isBlockCoverage":false}]},{"scriptId":"41","url":"internal/process/warning.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4833,"count":1}],"isBlockCoverage":false},{"functionName":"lazyOption","ranges":[{"startOffset":277,"endOffset":831,"count":0}],"isBlockCoverage":false},{"functionName":"writeOut","ranges":[{"startOffset":932,"endOffset":1054,"count":0}],"isBlockCoverage":false},{"functionName":"writeToFile","ranges":[{"startOffset":1056,"endOffset":1440,"count":0}],"isBlockCoverage":false},{"functionName":"doEmitWarning","ranges":[{"startOffset":1442,"endOffset":1513,"count":0}],"isBlockCoverage":false},{"functionName":"onWarning","ranges":[{"startOffset":1552,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarning","ranges":[{"startOffset":2853,"endOffset":3997,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarningSync","ranges":[{"startOffset":3999,"endOffset":4093,"count":0}],"isBlockCoverage":false},{"functionName":"createWarningObject","ranges":[{"startOffset":4095,"endOffset":4762,"count":0}],"isBlockCoverage":false}]},{"scriptId":"42","url":"internal/bootstrap/switches/is_main_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6397,"count":1}],"isBlockCoverage":true},{"functionName":"process._startProfilerIdleNotifier","ranges":[{"startOffset":513,"endOffset":521,"count":0}],"isBlockCoverage":false},{"functionName":"process._stopProfilerIdleNotifier","ranges":[{"startOffset":559,"endOffset":567,"count":0}],"isBlockCoverage":false},{"functionName":"defineStream","ranges":[{"startOffset":570,"endOffset":717,"count":3}],"isBlockCoverage":true},{"functionName":"createWritableStdioStream","ranges":[{"startOffset":1278,"endOffset":2845,"count":2},{"startOffset":1562,"endOffset":1748,"count":0},{"startOffset":1754,"endOffset":1766,"count":0},{"startOffset":1771,"endOffset":2473,"count":0},{"startOffset":2479,"endOffset":2724,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":2667,"endOffset":2714,"count":0}],"isBlockCoverage":false},{"functionName":"dummyDestroy","ranges":[{"startOffset":2847,"endOffset":3230,"count":0}],"isBlockCoverage":false},{"functionName":"getStdout","ranges":[{"startOffset":3268,"endOffset":3599,"count":66},{"startOffset":3305,"endOffset":3319,"count":65},{"startOffset":3319,"endOffset":3598,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3547,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"getStderr","ranges":[{"startOffset":3601,"endOffset":3932,"count":150},{"startOffset":3638,"endOffset":3652,"count":149},{"startOffset":3652,"endOffset":3931,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3880,"endOffset":3907,"count":0}],"isBlockCoverage":false},{"functionName":"getStdin","ranges":[{"startOffset":3934,"endOffset":6253,"count":0}],"isBlockCoverage":false},{"functionName":"rawMethods.resetStdioForTesting","ranges":[{"startOffset":6316,"endOffset":6395,"count":0}],"isBlockCoverage":false}]},{"scriptId":"43","url":"internal/process/signal.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1124,"count":1}],"isBlockCoverage":false},{"functionName":"isSignal","ranges":[{"startOffset":205,"endOffset":301,"count":5}],"isBlockCoverage":true},{"functionName":"startListeningIfSignal","ranges":[{"startOffset":365,"endOffset":853,"count":5},{"startOffset":426,"endOffset":451,"count":2},{"startOffset":453,"endOffset":851,"count":1},{"startOffset":734,"endOffset":813,"count":0}],"isBlockCoverage":true},{"functionName":"stopListeningIfSignal","ranges":[{"startOffset":855,"endOffset":1050,"count":1},{"startOffset":957,"endOffset":993,"count":0},{"startOffset":995,"endOffset":1048,"count":0}],"isBlockCoverage":true}]},{"scriptId":"44","url":"internal/bootstrap/switches/does_own_process_state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3523,"count":1}],"isBlockCoverage":true},{"functionName":"wrapPosixCredentialSetters","ranges":[{"startOffset":817,"endOffset":2957,"count":1}],"isBlockCoverage":true},{"functionName":"initgroups","ranges":[{"startOffset":1278,"endOffset":1695,"count":0}],"isBlockCoverage":false},{"functionName":"setgroups","ranges":[{"startOffset":1699,"endOffset":2179,"count":0}],"isBlockCoverage":false},{"functionName":"wrapIdSetter","ranges":[{"startOffset":2183,"endOffset":2508,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2232,"endOffset":2503,"count":0}],"isBlockCoverage":false},{"functionName":"validateId","ranges":[{"startOffset":2512,"endOffset":2730,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedChdir","ranges":[{"startOffset":3108,"endOffset":3279,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedUmask","ranges":[{"startOffset":3281,"endOffset":3417,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedCwd","ranges":[{"startOffset":3419,"endOffset":3522,"count":3},{"startOffset":3471,"endOffset":3500,"count":1}],"isBlockCoverage":true}]},{"scriptId":"45","url":"internal/main/run_main_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":632,"count":1}],"isBlockCoverage":true}]},{"scriptId":"46","url":"internal/bootstrap/pre_execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15185,"count":1}],"isBlockCoverage":true},{"functionName":"prepareMainThreadExecution","ranges":[{"startOffset":410,"endOffset":2164,"count":1}],"isBlockCoverage":true},{"functionName":"patchProcessObject","ranges":[{"startOffset":2166,"endOffset":3743,"count":1},{"startOffset":2762,"endOffset":2770,"count":0}],"isBlockCoverage":true},{"functionName":"addReadOnlyProcessAlias","ranges":[{"startOffset":3745,"endOffset":4002,"count":13},{"startOffset":3866,"endOffset":4000,"count":1}],"isBlockCoverage":true},{"functionName":"setupWarningHandler","ranges":[{"startOffset":4004,"endOffset":4233,"count":1}],"isBlockCoverage":true},{"functionName":"setupCoverageHooks","ranges":[{"startOffset":4345,"endOffset":5022,"count":1},{"startOffset":4815,"endOffset":4992,"count":0}],"isBlockCoverage":true},{"functionName":"setupStacktracePrinterOnSigint","ranges":[{"startOffset":5024,"endOffset":5249,"count":1},{"startOffset":5126,"endOffset":5248,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReport","ranges":[{"startOffset":5251,"endOffset":5475,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5433,"endOffset":5467,"count":0}],"isBlockCoverage":false},{"functionName":"setupDebugEnv","ranges":[{"startOffset":5477,"endOffset":5709,"count":1},{"startOffset":5628,"endOffset":5707,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReportSignalHandlers","ranges":[{"startOffset":5771,"endOffset":5906,"count":1}],"isBlockCoverage":true},{"functionName":"initializeHeapSnapshotSignalHandlers","ranges":[{"startOffset":5908,"endOffset":6215,"count":1},{"startOffset":6043,"endOffset":6214,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6175,"endOffset":6211,"count":0}],"isBlockCoverage":false},{"functionName":"setupTraceCategoryState","ranges":[{"startOffset":6217,"endOffset":6476,"count":1}],"isBlockCoverage":true},{"functionName":"setupInspectorHooks","ranges":[{"startOffset":6478,"endOffset":7059,"count":1}],"isBlockCoverage":true},{"functionName":"initializeDeprecations","ranges":[{"startOffset":7254,"endOffset":9775,"count":1},{"startOffset":7965,"endOffset":8267,"count":16},{"startOffset":8010,"endOffset":8242,"count":0},{"startOffset":8584,"endOffset":8757,"count":0},{"startOffset":8785,"endOffset":9179,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":9428,"endOffset":9464,"count":67}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9470,"endOffset":9512,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9638,"endOffset":9673,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9679,"endOffset":9720,"count":0}],"isBlockCoverage":false},{"functionName":"initializeAbortController","ranges":[{"startOffset":9777,"endOffset":10345,"count":1},{"startOffset":9915,"endOffset":10343,"count":0}],"isBlockCoverage":true},{"functionName":"setupChildProcessIpcChannel","ranges":[{"startOffset":10347,"endOffset":10912,"count":1},{"startOffset":10423,"endOffset":10910,"count":0}],"isBlockCoverage":true},{"functionName":"initializeClusterIPC","ranges":[{"startOffset":10914,"endOffset":11184,"count":1},{"startOffset":11001,"endOffset":11182,"count":0}],"isBlockCoverage":true},{"functionName":"initializePolicy","ranges":[{"startOffset":11186,"endOffset":13010,"count":1},{"startOffset":11312,"endOffset":13008,"count":0}],"isBlockCoverage":true},{"functionName":"initializeWASI","ranges":[{"startOffset":13012,"endOffset":13241,"count":1}],"isBlockCoverage":true},{"functionName":"initializeCJSLoader","ranges":[{"startOffset":13243,"endOffset":13529,"count":1}],"isBlockCoverage":true},{"functionName":"initializeESMLoader","ranges":[{"startOffset":13531,"endOffset":14199,"count":1},{"startOffset":13740,"endOffset":13747,"count":0}],"isBlockCoverage":true},{"functionName":"initializeFrozenIntrinsics","ranges":[{"startOffset":14201,"endOffset":14458,"count":1},{"startOffset":14286,"endOffset":14456,"count":0}],"isBlockCoverage":true},{"functionName":"loadPreloadModules","ranges":[{"startOffset":14460,"endOffset":14807,"count":1},{"startOffset":14654,"endOffset":14805,"count":0}],"isBlockCoverage":true}]},{"scriptId":"47","url":"internal/options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":898,"count":1}],"isBlockCoverage":false},{"functionName":"getOptionValue","ranges":[{"startOffset":175,"endOffset":314,"count":217},{"startOffset":262,"endOffset":289,"count":1},{"startOffset":289,"endOffset":313,"count":216}],"isBlockCoverage":true},{"functionName":"getAllowUnauthorized","ranges":[{"startOffset":316,"endOffset":781,"count":30},{"startOffset":453,"endOffset":479,"count":0},{"startOffset":481,"endOffset":751,"count":0}],"isBlockCoverage":true}]},{"scriptId":"48","url":"internal/inspector_async_hook.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1972,"count":1}],"isBlockCoverage":false},{"functionName":"lazyHookCreation","ranges":[{"startOffset":75,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"enable","ranges":[{"startOffset":1259,"endOffset":1840,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":1842,"endOffset":1928,"count":0}],"isBlockCoverage":false}]},{"scriptId":"49","url":"internal/source_map/source_map_cache.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8419,"count":1}],"isBlockCoverage":false},{"functionName":"ObjectGetValueSafe","ranges":[{"startOffset":305,"endOffset":483,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":665,"endOffset":690,"count":0}],"isBlockCoverage":false},{"functionName":"getSourceMapsEnabled","ranges":[{"startOffset":1236,"endOffset":1740,"count":189},{"startOffset":1309,"endOffset":1710,"count":1},{"startOffset":1402,"endOffset":1706,"count":0}],"isBlockCoverage":true},{"functionName":"maybeCacheSourceMap","ranges":[{"startOffset":1742,"endOffset":2852,"count":103},{"startOffset":1900,"endOffset":1920,"count":0},{"startOffset":1923,"endOffset":1930,"count":0},{"startOffset":1990,"endOffset":2128,"count":0},{"startOffset":2232,"endOffset":2850,"count":0}],"isBlockCoverage":true},{"functionName":"dataFromUrl","ranges":[{"startOffset":2854,"endOffset":3380,"count":0}],"isBlockCoverage":false},{"functionName":"lineLengths","ranges":[{"startOffset":3570,"endOffset":3878,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromFile","ranges":[{"startOffset":3880,"endOffset":4136,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromDataUrl","ranges":[{"startOffset":4230,"endOffset":4867,"count":0}],"isBlockCoverage":false},{"functionName":"sourcesToAbsolute","ranges":[{"startOffset":5052,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"rekeySourceMap","ranges":[{"startOffset":5448,"endOffset":5643,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapCacheToObject","ranges":[{"startOffset":6081,"endOffset":6450,"count":0}],"isBlockCoverage":false},{"functionName":"appendCJSCache","ranges":[{"startOffset":6689,"endOffset":7344,"count":0}],"isBlockCoverage":false},{"functionName":"findSourceMap","ranges":[{"startOffset":7562,"endOffset":8287,"count":0}],"isBlockCoverage":false}]},{"scriptId":"50","url":"fs.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":59762,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3694,"endOffset":3854,"count":0}],"isBlockCoverage":false},{"functionName":"showTruncateDeprecation","ranges":[{"startOffset":4089,"endOffset":4376,"count":0}],"isBlockCoverage":false},{"functionName":"maybeCallback","ranges":[{"startOffset":4378,"endOffset":4494,"count":0}],"isBlockCoverage":false},{"functionName":"makeCallback","ranges":[{"startOffset":4697,"endOffset":4840,"count":0}],"isBlockCoverage":false},{"functionName":"makeStatsCallback","ranges":[{"startOffset":5021,"endOffset":5236,"count":0}],"isBlockCoverage":false},{"functionName":"isFileType","ranges":[{"startOffset":5262,"endOffset":5522,"count":2082},{"startOffset":5461,"endOffset":5481,"count":180}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":5524,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"accessSync","ranges":[{"startOffset":5884,"endOffset":6122,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6124,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6435,"endOffset":6513,"count":0}],"isBlockCoverage":false},{"functionName":"existsSync","ranges":[{"startOffset":6930,"endOffset":7460,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterOpen","ranges":[{"startOffset":7462,"endOffset":7742,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterStat","ranges":[{"startOffset":7744,"endOffset":8245,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":8247,"endOffset":9263,"count":0}],"isBlockCoverage":false},{"functionName":"tryStatSync","ranges":[{"startOffset":9265,"endOffset":9495,"count":88},{"startOffset":9408,"endOffset":9420,"count":0},{"startOffset":9422,"endOffset":9477,"count":0}],"isBlockCoverage":true},{"functionName":"tryCreateBuffer","ranges":[{"startOffset":9497,"endOffset":9808,"count":88},{"startOffset":9615,"endOffset":9667,"count":0},{"startOffset":9754,"endOffset":9766,"count":0},{"startOffset":9768,"endOffset":9785,"count":0}],"isBlockCoverage":true},{"functionName":"tryReadSync","ranges":[{"startOffset":9810,"endOffset":10065,"count":88},{"startOffset":10008,"endOffset":10020,"count":0},{"startOffset":10022,"endOffset":10039,"count":0}],"isBlockCoverage":true},{"functionName":"readFileSync","ranges":[{"startOffset":10067,"endOffset":11450,"count":88},{"startOffset":10236,"endOffset":10242,"count":0},{"startOffset":10382,"endOffset":10385,"count":0},{"startOffset":10515,"endOffset":10538,"count":0},{"startOffset":10790,"endOffset":11144,"count":0},{"startOffset":11204,"endOffset":11300,"count":0},{"startOffset":11322,"endOffset":11362,"count":0},{"startOffset":11388,"endOffset":11431,"count":85}],"isBlockCoverage":true},{"functionName":"defaultCloseCallback","ranges":[{"startOffset":11452,"endOffset":11520,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":11522,"endOffset":11778,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":11780,"endOffset":11923,"count":88}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11925,"endOffset":12502,"count":0}],"isBlockCoverage":false},{"functionName":"openSync","ranges":[{"startOffset":12505,"endOffset":12901,"count":88}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":13008,"endOffset":14506,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":14775,"endOffset":15690,"count":88},{"startOffset":14893,"endOffset":15042,"count":0},{"startOffset":15093,"endOffset":15114,"count":0},{"startOffset":15202,"endOffset":15221,"count":0},{"startOffset":15254,"endOffset":15384,"count":0}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":15692,"endOffset":16122,"count":0}],"isBlockCoverage":false},{"functionName":"readvSync","ranges":[{"startOffset":16265,"endOffset":16575,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":16721,"endOffset":17989,"count":0}],"isBlockCoverage":false},{"functionName":"writeSync","ranges":[{"startOffset":18266,"endOffset":19132,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":19193,"endOffset":19621,"count":0}],"isBlockCoverage":false},{"functionName":"writevSync","ranges":[{"startOffset":19750,"endOffset":20063,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":20065,"endOffset":20446,"count":0}],"isBlockCoverage":false},{"functionName":"renameSync","ranges":[{"startOffset":20448,"endOffset":20795,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":20797,"endOffset":21415,"count":0}],"isBlockCoverage":false},{"functionName":"truncateSync","ranges":[{"startOffset":21417,"endOffset":21820,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":21822,"endOffset":22162,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncateSync","ranges":[{"startOffset":22164,"endOffset":22384,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadRimraf","ranges":[{"startOffset":22387,"endOffset":22506,"count":1}],"isBlockCoverage":true},{"functionName":"rmdir","ranges":[{"startOffset":22508,"endOffset":23148,"count":0}],"isBlockCoverage":false},{"functionName":"rmdirSync","ranges":[{"startOffset":23150,"endOffset":23588,"count":17},{"startOffset":23234,"endOffset":23254,"count":1},{"startOffset":23256,"endOffset":23422,"count":1},{"startOffset":23422,"endOffset":23587,"count":16}],"isBlockCoverage":true},{"functionName":"rm","ranges":[{"startOffset":23590,"endOffset":23928,"count":0}],"isBlockCoverage":false},{"functionName":"rmSync","ranges":[{"startOffset":23930,"endOffset":24100,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":24102,"endOffset":24276,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasyncSync","ranges":[{"startOffset":24278,"endOffset":24428,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":24430,"endOffset":24596,"count":0}],"isBlockCoverage":false},{"functionName":"fsyncSync","ranges":[{"startOffset":24598,"endOffset":24740,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":24742,"endOffset":25523,"count":0}],"isBlockCoverage":false},{"functionName":"mkdirSync","ranges":[{"startOffset":25525,"endOffset":26297,"count":1},{"startOffset":25672,"endOffset":25697,"count":0},{"startOffset":25716,"endOffset":25862,"count":0},{"startOffset":25938,"endOffset":26012,"count":0},{"startOffset":26271,"endOffset":26295,"count":0}],"isBlockCoverage":true},{"functionName":"readdir","ranges":[{"startOffset":26299,"endOffset":26880,"count":0}],"isBlockCoverage":false},{"functionName":"readdirSync","ranges":[{"startOffset":26882,"endOffset":27308,"count":8},{"startOffset":27270,"endOffset":27296,"count":0}],"isBlockCoverage":true},{"functionName":"fstat","ranges":[{"startOffset":27310,"endOffset":27649,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":27651,"endOffset":28026,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":28028,"endOffset":28401,"count":0}],"isBlockCoverage":false},{"functionName":"hasNoEntryError","ranges":[{"startOffset":28403,"endOffset":28625,"count":0}],"isBlockCoverage":false},{"functionName":"fstatSync","ranges":[{"startOffset":28627,"endOffset":28891,"count":0}],"isBlockCoverage":false},{"functionName":"lstatSync","ranges":[{"startOffset":28893,"endOffset":29317,"count":24},{"startOffset":29195,"endOffset":29218,"count":0},{"startOffset":29220,"endOffset":29247,"count":0}],"isBlockCoverage":true},{"functionName":"statSync","ranges":[{"startOffset":29319,"endOffset":29740,"count":117},{"startOffset":29618,"endOffset":29641,"count":0},{"startOffset":29643,"endOffset":29670,"count":0}],"isBlockCoverage":true},{"functionName":"readlink","ranges":[{"startOffset":29742,"endOffset":30090,"count":0}],"isBlockCoverage":false},{"functionName":"readlinkSync","ranges":[{"startOffset":30092,"endOffset":30423,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":30425,"endOffset":32035,"count":0}],"isBlockCoverage":false},{"functionName":"symlinkSync","ranges":[{"startOffset":32037,"endOffset":32694,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":32696,"endOffset":33097,"count":0}],"isBlockCoverage":false},{"functionName":"linkSync","ranges":[{"startOffset":33099,"endOffset":33548,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":33550,"endOffset":33777,"count":0}],"isBlockCoverage":false},{"functionName":"unlinkSync","ranges":[{"startOffset":33779,"endOffset":33965,"count":16}],"isBlockCoverage":true},{"functionName":"fchmod","ranges":[{"startOffset":33967,"endOffset":34209,"count":0}],"isBlockCoverage":false},{"functionName":"fchmodSync","ranges":[{"startOffset":34211,"endOffset":34405,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":34407,"endOffset":34844,"count":0}],"isBlockCoverage":false},{"functionName":"lchmodSync","ranges":[{"startOffset":34846,"endOffset":35168,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":35171,"endOffset":35447,"count":0}],"isBlockCoverage":false},{"functionName":"chmodSync","ranges":[{"startOffset":35449,"endOffset":35684,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":35686,"endOffset":36027,"count":0}],"isBlockCoverage":false},{"functionName":"lchownSync","ranges":[{"startOffset":36029,"endOffset":36329,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":36331,"endOffset":36637,"count":0}],"isBlockCoverage":false},{"functionName":"fchownSync","ranges":[{"startOffset":36639,"endOffset":36898,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":36900,"endOffset":37240,"count":0}],"isBlockCoverage":false},{"functionName":"chownSync","ranges":[{"startOffset":37242,"endOffset":37540,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":37542,"endOffset":37883,"count":0}],"isBlockCoverage":false},{"functionName":"utimesSync","ranges":[{"startOffset":37885,"endOffset":38167,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":38169,"endOffset":38477,"count":0}],"isBlockCoverage":false},{"functionName":"futimesSync","ranges":[{"startOffset":38479,"endOffset":38739,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":38741,"endOffset":39087,"count":0}],"isBlockCoverage":false},{"functionName":"lutimesSync","ranges":[{"startOffset":39089,"endOffset":39393,"count":0}],"isBlockCoverage":false},{"functionName":"writeAll","ranges":[{"startOffset":39395,"endOffset":40339,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":40341,"endOffset":41280,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileSync","ranges":[{"startOffset":41282,"endOffset":41992,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":41994,"endOffset":42434,"count":0}],"isBlockCoverage":false},{"functionName":"appendFileSync","ranges":[{"startOffset":42436,"endOffset":42815,"count":0}],"isBlockCoverage":false},{"functionName":"watch","ranges":[{"startOffset":42817,"endOffset":44050,"count":0}],"isBlockCoverage":false},{"functionName":"watchFile","ranges":[{"startOffset":44086,"endOffset":45199,"count":0}],"isBlockCoverage":false},{"functionName":"unwatchFile","ranges":[{"startOffset":45201,"endOffset":45889,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46105,"endOffset":46171,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":46196,"endOffset":46374,"count":112},{"startOffset":46263,"endOffset":46354,"count":224},{"startOffset":46325,"endOffset":46348,"count":112},{"startOffset":46354,"endOffset":46373,"count":0}],"isBlockCoverage":true},{"functionName":"encodeRealpathResult","ranges":[{"startOffset":46379,"endOffset":46666,"count":112},{"startOffset":46464,"endOffset":46494,"count":0},{"startOffset":46514,"endOffset":46665,"count":0}],"isBlockCoverage":true},{"functionName":"nextPart","ranges":[{"startOffset":46789,"endOffset":47032,"count":0}],"isBlockCoverage":false},{"functionName":"nextPart","ranges":[{"startOffset":47056,"endOffset":47109,"count":1087}],"isBlockCoverage":true},{"functionName":"realpathSync","ranges":[{"startOffset":47151,"endOffset":51017,"count":199},{"startOffset":47285,"endOffset":47303,"count":0},{"startOffset":47472,"endOffset":47507,"count":87},{"startOffset":47507,"endOffset":48079,"count":112},{"startOffset":48079,"endOffset":48254,"count":0},{"startOffset":48254,"endOffset":48391,"count":112},{"startOffset":48391,"endOffset":50934,"count":1087},{"startOffset":48503,"endOffset":48618,"count":112},{"startOffset":48618,"endOffset":48744,"count":975},{"startOffset":48867,"endOffset":49004,"count":907},{"startOffset":48958,"endOffset":48982,"count":0},{"startOffset":49004,"endOffset":49084,"count":180},{"startOffset":49115,"endOffset":49164,"count":0},{"startOffset":49164,"endOffset":50448,"count":180},{"startOffset":49617,"endOffset":50442,"count":0},{"startOffset":50448,"endOffset":50743,"count":0},{"startOffset":50745,"endOffset":50930,"count":0},{"startOffset":50934,"endOffset":51016,"count":112}],"isBlockCoverage":true},{"functionName":"realpathSync.native","ranges":[{"startOffset":51042,"endOffset":51281,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":51285,"endOffset":54720,"count":0}],"isBlockCoverage":false},{"functionName":"realpath.native","ranges":[{"startOffset":54741,"endOffset":55011,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":55014,"endOffset":55485,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtempSync","ranges":[{"startOffset":55488,"endOffset":55962,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":55965,"endOffset":56519,"count":0}],"isBlockCoverage":false},{"functionName":"copyFileSync","ranges":[{"startOffset":56522,"endOffset":56894,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadStreams","ranges":[{"startOffset":56896,"endOffset":57090,"count":8},{"startOffset":56944,"endOffset":57088,"count":1}],"isBlockCoverage":true},{"functionName":"createReadStream","ranges":[{"startOffset":57092,"endOffset":57197,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteStream","ranges":[{"startOffset":57199,"endOffset":57306,"count":0}],"isBlockCoverage":false},{"functionName":"get ReadStream","ranges":[{"startOffset":58529,"endOffset":58597,"count":2}],"isBlockCoverage":true},{"functionName":"set ReadStream","ranges":[{"startOffset":58602,"endOffset":58649,"count":0}],"isBlockCoverage":false},{"functionName":"get WriteStream","ranges":[{"startOffset":58654,"endOffset":58724,"count":2}],"isBlockCoverage":true},{"functionName":"set WriteStream","ranges":[{"startOffset":58729,"endOffset":58778,"count":0}],"isBlockCoverage":false},{"functionName":"get FileReadStream","ranges":[{"startOffset":58916,"endOffset":58992,"count":2}],"isBlockCoverage":true},{"functionName":"set FileReadStream","ranges":[{"startOffset":58997,"endOffset":59052,"count":0}],"isBlockCoverage":false},{"functionName":"get FileWriteStream","ranges":[{"startOffset":59057,"endOffset":59135,"count":2}],"isBlockCoverage":true},{"functionName":"set FileWriteStream","ranges":[{"startOffset":59140,"endOffset":59197,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":59628,"endOffset":59753,"count":2},{"startOffset":59673,"endOffset":59724,"count":1}],"isBlockCoverage":true}]},{"scriptId":"51","url":"internal/fs/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":21731,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadFs","ranges":[{"startOffset":2496,"endOffset":2575,"count":1}],"isBlockCoverage":true},{"functionName":"assertEncoding","ranges":[{"startOffset":2577,"endOffset":2724,"count":284},{"startOffset":2628,"endOffset":2659,"count":85},{"startOffset":2661,"endOffset":2722,"count":0}],"isBlockCoverage":true},{"functionName":"Dirent","ranges":[{"startOffset":2743,"endOffset":2818,"count":0}],"isBlockCoverage":false},{"functionName":"isDirectory","ranges":[{"startOffset":2822,"endOffset":2883,"count":0}],"isBlockCoverage":false},{"functionName":"isFile","ranges":[{"startOffset":2887,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"isBlockDevice","ranges":[{"startOffset":2948,"endOffset":3013,"count":0}],"isBlockCoverage":false},{"functionName":"isCharacterDevice","ranges":[{"startOffset":3017,"endOffset":3085,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbolicLink","ranges":[{"startOffset":3089,"endOffset":3154,"count":0}],"isBlockCoverage":false},{"functionName":"isFIFO","ranges":[{"startOffset":3158,"endOffset":3215,"count":0}],"isBlockCoverage":false},{"functionName":"isSocket","ranges":[{"startOffset":3219,"endOffset":3280,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats","ranges":[{"startOffset":3325,"endOffset":3404,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats.","ranges":[{"startOffset":3549,"endOffset":3598,"count":0}],"isBlockCoverage":false},{"functionName":"copyObject","ranges":[{"startOffset":3603,"endOffset":3731,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":3781,"endOffset":4388,"count":0}],"isBlockCoverage":false},{"functionName":"getDirents","ranges":[{"startOffset":4390,"endOffset":5485,"count":0}],"isBlockCoverage":false},{"functionName":"getDirent","ranges":[{"startOffset":5487,"endOffset":6209,"count":0}],"isBlockCoverage":false},{"functionName":"getOptions","ranges":[{"startOffset":6211,"endOffset":6853,"count":314},{"startOffset":6306,"endOffset":6344,"count":292},{"startOffset":6346,"endOffset":6378,"count":22},{"startOffset":6378,"endOffset":6415,"count":292},{"startOffset":6415,"endOffset":6533,"count":93},{"startOffset":6533,"endOffset":6655,"count":199},{"startOffset":6572,"endOffset":6655,"count":0},{"startOffset":6655,"endOffset":6698,"count":292},{"startOffset":6698,"endOffset":6731,"count":284},{"startOffset":6731,"endOffset":6769,"count":292},{"startOffset":6769,"endOffset":6833,"count":0},{"startOffset":6833,"endOffset":6852,"count":292}],"isBlockCoverage":true},{"functionName":"handleErrorFromBinding","ranges":[{"startOffset":6855,"endOffset":7384,"count":626},{"startOffset":6925,"endOffset":7060,"count":28},{"startOffset":7060,"endOffset":7092,"count":598},{"startOffset":7092,"endOffset":7382,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7525,"endOffset":8078,"count":496},{"startOffset":7755,"endOffset":7775,"count":61},{"startOffset":7800,"endOffset":7827,"count":435},{"startOffset":7829,"endOffset":7877,"count":61},{"startOffset":7896,"endOffset":8077,"count":0}],"isBlockCoverage":true},{"functionName":"preprocessSymlinkDestination","ranges":[{"startOffset":8082,"endOffset":8766,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase","ranges":[{"startOffset":8799,"endOffset":9106,"count":141}],"isBlockCoverage":true},{"functionName":"StatsBase.isDirectory","ranges":[{"startOffset":9142,"endOffset":9199,"count":128}],"isBlockCoverage":true},{"functionName":"StatsBase.isFile","ranges":[{"startOffset":9231,"endOffset":9288,"count":88}],"isBlockCoverage":true},{"functionName":"StatsBase.isBlockDevice","ranges":[{"startOffset":9327,"endOffset":9384,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isCharacterDevice","ranges":[{"startOffset":9427,"endOffset":9484,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSymbolicLink","ranges":[{"startOffset":9524,"endOffset":9581,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isFIFO","ranges":[{"startOffset":9613,"endOffset":9670,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSocket","ranges":[{"startOffset":9704,"endOffset":9762,"count":0}],"isBlockCoverage":false},{"functionName":"msFromTimeSpec","ranges":[{"startOffset":9887,"endOffset":9969,"count":484}],"isBlockCoverage":true},{"functionName":"nsFromTimeSpecBigInt","ranges":[{"startOffset":9971,"endOffset":10054,"count":0}],"isBlockCoverage":false},{"functionName":"dateFromMs","ranges":[{"startOffset":10403,"endOffset":10467,"count":564}],"isBlockCoverage":true},{"functionName":"BigIntStats","ranges":[{"startOffset":10469,"endOffset":11205,"count":0}],"isBlockCoverage":false},{"functionName":"BigIntStats._checkModeProperty","ranges":[{"startOffset":11363,"endOffset":11609,"count":0}],"isBlockCoverage":false},{"functionName":"Stats","ranges":[{"startOffset":11612,"endOffset":12129,"count":141}],"isBlockCoverage":true},{"functionName":"Stats._checkModeProperty","ranges":[{"startOffset":12470,"endOffset":12700,"count":216},{"startOffset":12507,"endOffset":12585,"count":0},{"startOffset":12587,"endOffset":12654,"count":0}],"isBlockCoverage":true},{"functionName":"getStatsFromBinding","ranges":[{"startOffset":12703,"endOffset":13781,"count":121},{"startOffset":12784,"endOffset":13309,"count":0}],"isBlockCoverage":true},{"functionName":"stringToFlags","ranges":[{"startOffset":13783,"endOffset":14991,"count":107},{"startOffset":13848,"endOffset":13871,"count":0},{"startOffset":13894,"endOffset":13920,"count":0},{"startOffset":13977,"endOffset":13988,"count":0},{"startOffset":14010,"endOffset":14047,"count":0},{"startOffset":14052,"endOffset":14078,"count":0},{"startOffset":14083,"endOffset":14095,"count":0},{"startOffset":14117,"endOffset":14153,"count":0},{"startOffset":14159,"endOffset":14206,"count":0},{"startOffset":14211,"endOffset":14222,"count":0},{"startOffset":14244,"endOffset":14301,"count":0},{"startOffset":14307,"endOffset":14353,"count":0},{"startOffset":14358,"endOffset":14369,"count":0},{"startOffset":14391,"endOffset":14446,"count":0},{"startOffset":14452,"endOffset":14500,"count":0},{"startOffset":14505,"endOffset":14516,"count":0},{"startOffset":14538,"endOffset":14596,"count":0},{"startOffset":14601,"endOffset":14612,"count":0},{"startOffset":14634,"endOffset":14692,"count":0},{"startOffset":14698,"endOffset":14745,"count":0},{"startOffset":14750,"endOffset":14761,"count":0},{"startOffset":14783,"endOffset":14839,"count":0},{"startOffset":14844,"endOffset":14855,"count":0},{"startOffset":14877,"endOffset":14933,"count":0},{"startOffset":14937,"endOffset":14990,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15037,"endOffset":15397,"count":0}],"isBlockCoverage":false},{"functionName":"toUnixTimestamp","ranges":[{"startOffset":15459,"endOffset":15902,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15956,"endOffset":16335,"count":126},{"startOffset":16012,"endOffset":16079,"count":0},{"startOffset":16100,"endOffset":16167,"count":0},{"startOffset":16208,"endOffset":16331,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":16393,"endOffset":16667,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16709,"endOffset":16979,"count":496},{"startOffset":16771,"endOffset":16793,"count":61},{"startOffset":16795,"endOffset":16881,"count":0},{"startOffset":16957,"endOffset":16977,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17024,"endOffset":17159,"count":297}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17207,"endOffset":17538,"count":0}],"isBlockCoverage":false},{"functionName":"warnOnNonPortableTemplate","ranges":[{"startOffset":17579,"endOffset":18037,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18273,"endOffset":18893,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18943,"endOffset":19525,"count":1},{"startOffset":19184,"endOffset":19351,"count":0},{"startOffset":19356,"endOffset":19504,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":19577,"endOffset":20059,"count":17},{"startOffset":19661,"endOffset":19677,"count":16},{"startOffset":19677,"endOffset":19733,"count":1},{"startOffset":19741,"endOffset":19802,"count":0},{"startOffset":19802,"endOffset":20058,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":20100,"endOffset":20678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20741,"endOffset":21113,"count":0}],"isBlockCoverage":false}]},{"scriptId":"52","url":"internal/fs/dir.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6714,"count":1}],"isBlockCoverage":false},{"functionName":"Dir","ranges":[{"startOffset":1109,"endOffset":1881,"count":0}],"isBlockCoverage":false},{"functionName":"get path","ranges":[{"startOffset":1885,"endOffset":1928,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":1932,"endOffset":1999,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2003,"endOffset":3375,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":3379,"endOffset":4135,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4139,"endOffset":4865,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":4869,"endOffset":5246,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":5250,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"opendir","ranges":[{"startOffset":5674,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"opendirSync","ranges":[{"startOffset":6301,"endOffset":6658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"53","url":"internal/modules/cjs/helpers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5427,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":681,"endOffset":706,"count":1}],"isBlockCoverage":true},{"functionName":"loadNativeModule","ranges":[{"startOffset":860,"endOffset":1066,"count":141},{"startOffset":964,"endOffset":1064,"count":55}],"isBlockCoverage":true},{"functionName":"makeRequireFunction","ranges":[{"startOffset":1315,"endOffset":3313,"count":84},{"startOffset":1429,"endOffset":2705,"count":0}],"isBlockCoverage":true},{"functionName":"require","ranges":[{"startOffset":1567,"endOffset":2700,"count":0}],"isBlockCoverage":false},{"functionName":"require","ranges":[{"startOffset":2727,"endOffset":2789,"count":217}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":2798,"endOffset":2944,"count":0}],"isBlockCoverage":false},{"functionName":"paths","ranges":[{"startOffset":2978,"endOffset":3100,"count":0}],"isBlockCoverage":false},{"functionName":"stripBOM","ranges":[{"startOffset":3498,"endOffset":3624,"count":1},{"startOffset":3567,"endOffset":3604,"count":0}],"isBlockCoverage":true},{"functionName":"addBuiltinLibsToObject","ranges":[{"startOffset":3626,"endOffset":5091,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeReferrerURL","ranges":[{"startOffset":5093,"endOffset":5281,"count":103},{"startOffset":5200,"endOffset":5246,"count":84},{"startOffset":5246,"endOffset":5280,"count":19}],"isBlockCoverage":true}]},{"scriptId":"54","url":"url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30124,"count":1}],"isBlockCoverage":false},{"functionName":"Url","ranges":[{"startOffset":1879,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"urlParse","ranges":[{"startOffset":3833,"endOffset":4047,"count":0}],"isBlockCoverage":false},{"functionName":"isIpv6Hostname","ranges":[{"startOffset":4049,"endOffset":4272,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":4296,"endOffset":13617,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname","ranges":[{"startOffset":13620,"endOffset":14345,"count":0}],"isBlockCoverage":false},{"functionName":"autoEscapeStr","ranges":[{"startOffset":15401,"endOffset":16107,"count":0}],"isBlockCoverage":false},{"functionName":"urlFormat","ranges":[{"startOffset":16153,"endOffset":16863,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":17570,"endOffset":20020,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolve","ranges":[{"startOffset":20023,"endOffset":20122,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":20148,"endOffset":20249,"count":0}],"isBlockCoverage":false},{"functionName":"urlResolveObject","ranges":[{"startOffset":20252,"endOffset":20395,"count":0}],"isBlockCoverage":false},{"functionName":"resolveObject","ranges":[{"startOffset":20427,"endOffset":29546,"count":0}],"isBlockCoverage":false},{"functionName":"parseHost","ranges":[{"startOffset":29575,"endOffset":29848,"count":0}],"isBlockCoverage":false}]},{"scriptId":"55","url":"internal/idna.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":264,"count":1}],"isBlockCoverage":false}]},{"scriptId":"56","url":"internal/process/report.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2945,"count":1}],"isBlockCoverage":false},{"functionName":"writeReport","ranges":[{"startOffset":298,"endOffset":805,"count":0}],"isBlockCoverage":false},{"functionName":"getReport","ranges":[{"startOffset":809,"endOffset":1045,"count":0}],"isBlockCoverage":false},{"functionName":"get directory","ranges":[{"startOffset":1049,"endOffset":1100,"count":0}],"isBlockCoverage":false},{"functionName":"set directory","ranges":[{"startOffset":1104,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"get filename","ranges":[{"startOffset":1196,"endOffset":1245,"count":0}],"isBlockCoverage":false},{"functionName":"set filename","ranges":[{"startOffset":1249,"endOffset":1337,"count":0}],"isBlockCoverage":false},{"functionName":"get compact","ranges":[{"startOffset":1341,"endOffset":1388,"count":0}],"isBlockCoverage":false},{"functionName":"set compact","ranges":[{"startOffset":1392,"endOffset":1469,"count":0}],"isBlockCoverage":false},{"functionName":"get signal","ranges":[{"startOffset":1473,"endOffset":1518,"count":0}],"isBlockCoverage":false},{"functionName":"set signal","ranges":[{"startOffset":1522,"endOffset":1659,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnFatalError","ranges":[{"startOffset":1663,"endOffset":1735,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnFatalError","ranges":[{"startOffset":1739,"endOffset":1923,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnSignal","ranges":[{"startOffset":1927,"endOffset":1991,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnSignal","ranges":[{"startOffset":1995,"endOffset":2222,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnUncaughtException","ranges":[{"startOffset":2226,"endOffset":2312,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnUncaughtException","ranges":[{"startOffset":2316,"endOffset":2514,"count":0}],"isBlockCoverage":false},{"functionName":"addSignalHandler","ranges":[{"startOffset":2519,"endOffset":2690,"count":1},{"startOffset":2585,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"removeSignalHandler","ranges":[{"startOffset":2692,"endOffset":2816,"count":0}],"isBlockCoverage":false},{"functionName":"signalHandler","ranges":[{"startOffset":2818,"endOffset":2892,"count":0}],"isBlockCoverage":false}]},{"scriptId":"57","url":"internal/modules/cjs/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":38134,"count":1}],"isBlockCoverage":false},{"functionName":"get hasLoadedAnyUserCJSModule","ranges":[{"startOffset":1880,"endOffset":1949,"count":1}],"isBlockCoverage":true},{"functionName":"stat","ranges":[{"startOffset":4257,"endOffset":4574,"count":392},{"startOffset":4355,"endOffset":4449,"count":381},{"startOffset":4431,"endOffset":4445,"count":174},{"startOffset":4449,"endOffset":4523,"count":218},{"startOffset":4523,"endOffset":4555,"count":207},{"startOffset":4555,"endOffset":4573,"count":218}],"isBlockCoverage":true},{"functionName":"updateChildren","ranges":[{"startOffset":4576,"endOffset":4751,"count":180},{"startOffset":4649,"endOffset":4667,"count":168},{"startOffset":4684,"endOffset":4722,"count":168},{"startOffset":4694,"endOffset":4721,"count":88},{"startOffset":4728,"endOffset":4749,"count":167}],"isBlockCoverage":true},{"functionName":"Module","ranges":[{"startOffset":4753,"endOffset":4990,"count":86}],"isBlockCoverage":true},{"functionName":"wrap","ranges":[{"startOffset":5441,"endOffset":5518,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":5663,"endOffset":5785,"count":0}],"isBlockCoverage":false},{"functionName":"defineProperty","ranges":[{"startOffset":5790,"endOffset":5923,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5970,"endOffset":5998,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6003,"endOffset":6057,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6107,"endOffset":6143,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6148,"endOffset":6210,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6275,"endOffset":6305,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6376,"endOffset":6401,"count":1}],"isBlockCoverage":true},{"functionName":"readPackage","ranges":[{"startOffset":6749,"endOffset":7559,"count":428},{"startOffset":6929,"endOffset":6945,"count":399},{"startOffset":6945,"endOffset":7043,"count":29},{"startOffset":7043,"endOffset":7049,"count":0},{"startOffset":7050,"endOffset":7065,"count":29},{"startOffset":7093,"endOffset":7159,"count":10},{"startOffset":7159,"endOffset":7442,"count":19},{"startOffset":7442,"endOffset":7557,"count":0}],"isBlockCoverage":true},{"functionName":"readPackageScope","ranges":[{"startOffset":7561,"endOffset":8104,"count":232},{"startOffset":7696,"endOffset":8041,"count":404},{"startOffset":7903,"endOffset":7916,"count":0},{"startOffset":7980,"endOffset":8037,"count":232},{"startOffset":8041,"endOffset":8103,"count":0}],"isBlockCoverage":true},{"functionName":"tryPackage","ranges":[{"startOffset":8106,"endOffset":9407,"count":12},{"startOffset":8228,"endOffset":8309,"count":4},{"startOffset":8309,"endOffset":8403,"count":8},{"startOffset":8403,"endOffset":8447,"count":0},{"startOffset":8448,"endOffset":8515,"count":0},{"startOffset":8541,"endOffset":9388,"count":0},{"startOffset":9388,"endOffset":9406,"count":8}],"isBlockCoverage":true},{"functionName":"tryFile","ranges":[{"startOffset":9748,"endOffset":9958,"count":137},{"startOffset":9836,"endOffset":9843,"count":39},{"startOffset":9843,"endOffset":9867,"count":98},{"startOffset":9867,"endOffset":9877,"count":0},{"startOffset":9879,"endOffset":9922,"count":0},{"startOffset":9922,"endOffset":9957,"count":98}],"isBlockCoverage":true},{"functionName":"toRealPath","ranges":[{"startOffset":9960,"endOffset":10091,"count":124}],"isBlockCoverage":true},{"functionName":"tryExtensions","ranges":[{"startOffset":10166,"endOffset":10372,"count":101},{"startOffset":10248,"endOffset":10354,"count":128},{"startOffset":10320,"endOffset":10350,"count":89},{"startOffset":10354,"endOffset":10371,"count":12}],"isBlockCoverage":true},{"functionName":"findLongestRegisteredExtension","ranges":[{"startOffset":10461,"endOffset":10897,"count":86},{"startOffset":10720,"endOffset":10729,"count":0},{"startOffset":10851,"endOffset":10875,"count":85},{"startOffset":10879,"endOffset":10896,"count":1}],"isBlockCoverage":true},{"functionName":"trySelfParentPath","ranges":[{"startOffset":10899,"endOffset":11188,"count":154},{"startOffset":10951,"endOffset":10964,"count":6},{"startOffset":10964,"endOffset":11022,"count":148},{"startOffset":11022,"endOffset":11186,"count":0}],"isBlockCoverage":true},{"functionName":"trySelf","ranges":[{"startOffset":11190,"endOffset":12039,"count":154},{"startOffset":11249,"endOffset":11262,"count":6},{"startOffset":11262,"endOffset":11332,"count":148},{"startOffset":11332,"endOffset":11337,"count":0},{"startOffset":11350,"endOffset":11378,"count":148},{"startOffset":11380,"endOffset":11393,"count":134},{"startOffset":11393,"endOffset":11430,"count":14},{"startOffset":11430,"endOffset":11443,"count":0},{"startOffset":11443,"endOffset":11490,"count":14},{"startOffset":11490,"endOffset":11516,"count":0},{"startOffset":11516,"endOffset":11682,"count":14},{"startOffset":11578,"endOffset":11653,"count":0},{"startOffset":11682,"endOffset":12037,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExports","ranges":[{"startOffset":12200,"endOffset":12938,"count":115},{"startOffset":12402,"endOffset":12407,"count":103},{"startOffset":12426,"endOffset":12433,"count":103},{"startOffset":12433,"endOffset":12549,"count":12},{"startOffset":12550,"endOffset":12578,"count":12},{"startOffset":12580,"endOffset":12936,"count":1},{"startOffset":12783,"endOffset":12932,"count":0}],"isBlockCoverage":true},{"functionName":"Module._findPath","ranges":[{"startOffset":13004,"endOffset":15631,"count":155},{"startOffset":13114,"endOffset":13137,"count":8},{"startOffset":13137,"endOffset":13200,"count":147},{"startOffset":13177,"endOffset":13200,"count":0},{"startOffset":13276,"endOffset":13286,"count":143},{"startOffset":13287,"endOffset":13307,"count":12},{"startOffset":13372,"endOffset":13385,"count":32},{"startOffset":13385,"endOffset":13508,"count":123},{"startOffset":13532,"endOffset":13669,"count":123},{"startOffset":13669,"endOffset":15612,"count":141},{"startOffset":13767,"endOffset":13787,"count":133},{"startOffset":13789,"endOffset":13798,"count":18},{"startOffset":13798,"endOffset":13826,"count":123},{"startOffset":13826,"endOffset":13956,"count":115},{"startOffset":13927,"endOffset":13950,"count":1},{"startOffset":13956,"endOffset":15263,"count":122},{"startOffset":14107,"endOffset":15040,"count":25},{"startOffset":14174,"endOffset":14234,"count":0},{"startOffset":14308,"endOffset":15032,"count":0},{"startOffset":15063,"endOffset":15257,"count":97},{"startOffset":15263,"endOffset":15283,"count":122},{"startOffset":15283,"endOffset":15294,"count":12},{"startOffset":15296,"endOffset":15512,"count":12},{"startOffset":15406,"endOffset":15444,"count":0},{"startOffset":15512,"endOffset":15608,"count":122},{"startOffset":15612,"endOffset":15630,"count":0}],"isBlockCoverage":true},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":15875,"endOffset":17266,"count":0}],"isBlockCoverage":false},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":17358,"endOffset":18399,"count":92},{"startOffset":17636,"endOffset":17661,"count":0},{"startOffset":17954,"endOffset":18292,"count":6508},{"startOffset":18034,"endOffset":18162,"count":816},{"startOffset":18071,"endOffset":18121,"count":724},{"startOffset":18162,"endOffset":18286,"count":5692},{"startOffset":18182,"endOffset":18286,"count":1980},{"startOffset":18217,"endOffset":18243,"count":1256},{"startOffset":18243,"endOffset":18278,"count":724}],"isBlockCoverage":true},{"functionName":"Module._resolveLookupPaths","ranges":[{"startOffset":18433,"endOffset":19571,"count":154},{"startOffset":18511,"endOffset":18577,"count":0},{"startOffset":18646,"endOffset":18797,"count":135},{"startOffset":18710,"endOffset":18744,"count":87},{"startOffset":18745,"endOffset":18796,"count":0},{"startOffset":18799,"endOffset":19043,"count":19},{"startOffset":18854,"endOffset":18869,"count":13},{"startOffset":18870,"endOffset":18892,"count":13},{"startOffset":18894,"endOffset":18943,"count":13},{"startOffset":19032,"endOffset":19038,"count":0},{"startOffset":19043,"endOffset":19111,"count":135},{"startOffset":19112,"endOffset":19131,"count":135},{"startOffset":19133,"endOffset":19382,"count":0},{"startOffset":19382,"endOffset":19570,"count":135}],"isBlockCoverage":true},{"functionName":"emitCircularRequireWarning","ranges":[{"startOffset":19574,"endOffset":19757,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":19950,"endOffset":20322,"count":0}],"isBlockCoverage":false},{"functionName":"getOwnPropertyDescriptor","ranges":[{"startOffset":20327,"endOffset":20568,"count":0}],"isBlockCoverage":false},{"functionName":"getExportsForCircularRequire","ranges":[{"startOffset":20769,"endOffset":21419,"count":1},{"startOffset":20944,"endOffset":21237,"count":0},{"startOffset":21239,"endOffset":21391,"count":0}],"isBlockCoverage":true},{"functionName":"Module._load","ranges":[{"startOffset":21831,"endOffset":24853,"count":223},{"startOffset":21914,"endOffset":22691,"count":217},{"startOffset":22334,"endOffset":22687,"count":20},{"startOffset":22524,"endOffset":22574,"count":0},{"startOffset":22619,"endOffset":22687,"count":0},{"startOffset":22691,"endOffset":22845,"count":203},{"startOffset":22845,"endOffset":23205,"count":74},{"startOffset":22925,"endOffset":23153,"count":7},{"startOffset":23021,"endOffset":23048,"count":6},{"startOffset":23058,"endOffset":23108,"count":1},{"startOffset":23108,"endOffset":23153,"count":6},{"startOffset":23153,"endOffset":23201,"count":67},{"startOffset":23205,"endOffset":23268,"count":135},{"startOffset":23268,"endOffset":23295,"count":49},{"startOffset":23297,"endOffset":23316,"count":49},{"startOffset":23316,"endOffset":23415,"count":86},{"startOffset":23415,"endOffset":23446,"count":80},{"startOffset":23463,"endOffset":23522,"count":0},{"startOffset":23522,"endOffset":23588,"count":86},{"startOffset":23588,"endOffset":23657,"count":80},{"startOffset":23657,"endOffset":23902,"count":86},{"startOffset":23902,"endOffset":24092,"count":0},{"startOffset":24092,"endOffset":24825,"count":86},{"startOffset":24183,"endOffset":24565,"count":0},{"startOffset":24747,"endOffset":24821,"count":0},{"startOffset":24825,"endOffset":24852,"count":86}],"isBlockCoverage":true},{"functionName":"Module._resolveFilename","ranges":[{"startOffset":24882,"endOffset":27745,"count":203},{"startOffset":24977,"endOffset":25002,"count":49},{"startOffset":25002,"endOffset":25052,"count":154},{"startOffset":25052,"endOffset":25071,"count":0},{"startOffset":25073,"endOffset":26056,"count":0},{"startOffset":26056,"endOffset":26139,"count":154},{"startOffset":26139,"endOffset":26157,"count":148},{"startOffset":26159,"endOffset":26739,"count":148},{"startOffset":26189,"endOffset":26735,"count":0},{"startOffset":26739,"endOffset":26900,"count":154},{"startOffset":26900,"endOffset":27096,"count":0},{"startOffset":27096,"endOffset":27259,"count":154},{"startOffset":27259,"endOffset":27744,"count":0}],"isBlockCoverage":true},{"functionName":"finalizeEsmResolution","ranges":[{"startOffset":27748,"endOffset":28462,"count":1},{"startOffset":27914,"endOffset":28033,"count":0},{"startOffset":28125,"endOffset":28135,"count":0},{"startOffset":28137,"endOffset":28294,"count":0},{"startOffset":28327,"endOffset":28461,"count":0}],"isBlockCoverage":true},{"functionName":"createEsmNotFoundErr","ranges":[{"startOffset":28464,"endOffset":28754,"count":0}],"isBlockCoverage":false},{"functionName":"Module.load","ranges":[{"startOffset":28843,"endOffset":29647,"count":86},{"startOffset":29162,"endOffset":29192,"count":0},{"startOffset":29194,"endOffset":29240,"count":0},{"startOffset":29513,"endOffset":29561,"count":0}],"isBlockCoverage":true},{"functionName":"Module.require","ranges":[{"startOffset":29765,"endOffset":30064,"count":217},{"startOffset":29825,"endOffset":29943,"count":0}],"isBlockCoverage":true},{"functionName":"wrapSafe","ranges":[{"startOffset":30244,"endOffset":31360,"count":84},{"startOffset":30317,"endOffset":30657,"count":0},{"startOffset":30946,"endOffset":31055,"count":0}],"isBlockCoverage":true},{"functionName":"importModuleDynamically","ranges":[{"startOffset":30498,"endOffset":30644,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":31183,"endOffset":31323,"count":0}],"isBlockCoverage":false},{"functionName":"Module._compile","ranges":[{"startOffset":31560,"endOffset":33402,"count":84},{"startOffset":31648,"endOffset":31815,"count":0},{"startOffset":31996,"endOffset":32020,"count":0},{"startOffset":32022,"endOffset":32758,"count":0},{"startOffset":32981,"endOffset":33003,"count":6},{"startOffset":33028,"endOffset":33167,"count":0},{"startOffset":33366,"endOffset":33383,"count":6}],"isBlockCoverage":true},{"functionName":"Module._extensions..js","ranges":[{"startOffset":33461,"endOffset":34235,"count":84},{"startOffset":33522,"endOffset":33918,"count":83},{"startOffset":33680,"endOffset":33914,"count":0},{"startOffset":34052,"endOffset":34068,"count":6},{"startOffset":34070,"endOffset":34135,"count":6},{"startOffset":34135,"endOffset":34195,"count":78}],"isBlockCoverage":true},{"functionName":"Module._extensions..json","ranges":[{"startOffset":34299,"endOffset":34663,"count":1},{"startOffset":34406,"endOffset":34515,"count":0},{"startOffset":34580,"endOffset":34661,"count":0}],"isBlockCoverage":true},{"functionName":"Module._extensions..node","ranges":[{"startOffset":34727,"endOffset":35045,"count":1},{"startOffset":34780,"endOffset":34936,"count":0}],"isBlockCoverage":true},{"functionName":"createRequireFromPath","ranges":[{"startOffset":35048,"endOffset":35473,"count":0}],"isBlockCoverage":false},{"functionName":"createRequire","ranges":[{"startOffset":35758,"endOffset":36311,"count":0}],"isBlockCoverage":false},{"functionName":"Module._initPaths","ranges":[{"startOffset":36372,"endOffset":37280,"count":1},{"startOffset":36413,"endOffset":36438,"count":0},{"startOffset":36490,"endOffset":36513,"count":0},{"startOffset":36721,"endOffset":36763,"count":0},{"startOffset":37030,"endOffset":37159,"count":0}],"isBlockCoverage":true},{"functionName":"pathsFilterCB","ranges":[{"startOffset":37082,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"Module._preloadModules","ranges":[{"startOffset":37308,"endOffset":37890,"count":0}],"isBlockCoverage":false},{"functionName":"syncBuiltinESMExports","ranges":[{"startOffset":37924,"endOffset":38080,"count":0}],"isBlockCoverage":false}]},{"scriptId":"58","url":"vm.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12941,"count":1}],"isBlockCoverage":false},{"functionName":"Script","ranges":[{"startOffset":1992,"endOffset":4152,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":4156,"endOffset":4436,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":4440,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":4850,"endOffset":5021,"count":0}],"isBlockCoverage":false},{"functionName":"validateContext","ranges":[{"startOffset":5025,"endOffset":5244,"count":0}],"isBlockCoverage":false},{"functionName":"getRunInContextArgs","ranges":[{"startOffset":5246,"endOffset":5837,"count":0}],"isBlockCoverage":false},{"functionName":"getContextOptions","ranges":[{"startOffset":5839,"endOffset":6907,"count":0}],"isBlockCoverage":false},{"functionName":"isContext","ranges":[{"startOffset":6909,"endOffset":7091,"count":0}],"isBlockCoverage":false},{"functionName":"createContext","ranges":[{"startOffset":7126,"endOffset":8261,"count":0}],"isBlockCoverage":false},{"functionName":"createScript","ranges":[{"startOffset":8263,"endOffset":8339,"count":0}],"isBlockCoverage":false},{"functionName":"sigintHandlersWrap","ranges":[{"startOffset":8493,"endOffset":8939,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":8941,"endOffset":9338,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":9340,"endOffset":9692,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":9694,"endOffset":9880,"count":0}],"isBlockCoverage":false},{"functionName":"compileFunction","ranges":[{"startOffset":9882,"endOffset":11615,"count":0}],"isBlockCoverage":false},{"functionName":"measureMemory","ranges":[{"startOffset":11892,"endOffset":12454,"count":0}],"isBlockCoverage":false}]},{"scriptId":"59","url":"internal/modules/package_json_reader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":279,"endOffset":946,"count":50},{"startOffset":332,"endOffset":369,"count":13},{"startOffset":369,"endOffset":593,"count":37},{"startOffset":593,"endOffset":896,"count":20},{"startOffset":627,"endOffset":761,"count":1},{"startOffset":686,"endOffset":739,"count":0},{"startOffset":789,"endOffset":892,"count":0},{"startOffset":896,"endOffset":945,"count":37}],"isBlockCoverage":true}]},{"scriptId":"60","url":"internal/process/esm_loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2326,"count":1}],"isBlockCoverage":false},{"functionName":"exports.initializeImportMetaObject","ranges":[{"startOffset":405,"endOffset":701,"count":0}],"isBlockCoverage":false},{"functionName":"exports.importModuleDynamicallyCallback","ranges":[{"startOffset":746,"endOffset":1137,"count":44},{"startOffset":1081,"endOffset":1136,"count":0}],"isBlockCoverage":true},{"functionName":"initializeLoader","ranges":[{"startOffset":1202,"endOffset":1969,"count":1},{"startOffset":1388,"endOffset":1968,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1722,"endOffset":1963,"count":0}],"isBlockCoverage":true},{"functionName":"loadESM","ranges":[{"startOffset":1989,"endOffset":2324,"count":1},{"startOffset":2097,"endOffset":2322,"count":0}],"isBlockCoverage":true}]},{"scriptId":"61","url":"internal/modules/esm/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8625,"count":1}],"isBlockCoverage":false},{"functionName":"Loader","ranges":[{"startOffset":1416,"endOffset":3189,"count":1}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":3193,"endOffset":3816,"count":83},{"startOffset":3298,"endOffset":3337,"count":82},{"startOffset":3514,"endOffset":3617,"count":0},{"startOffset":3689,"endOffset":3796,"count":0}],"isBlockCoverage":true},{"functionName":"getFormat","ranges":[{"startOffset":3820,"endOffset":5128,"count":83},{"startOffset":3977,"endOffset":4084,"count":0},{"startOffset":4153,"endOffset":4410,"count":0},{"startOffset":4447,"endOffset":4562,"count":0},{"startOffset":4594,"endOffset":4622,"count":8},{"startOffset":4622,"endOffset":4666,"count":75},{"startOffset":4666,"endOffset":4835,"count":0},{"startOffset":4835,"endOffset":4927,"count":75},{"startOffset":4928,"endOffset":4977,"count":0},{"startOffset":4984,"endOffset":5104,"count":0},{"startOffset":5104,"endOffset":5127,"count":75}],"isBlockCoverage":true},{"functionName":"eval","ranges":[{"startOffset":5132,"endOffset":5807,"count":0}],"isBlockCoverage":false},{"functionName":"import","ranges":[{"startOffset":5811,"endOffset":5982,"count":45}],"isBlockCoverage":true},{"functionName":"hook","ranges":[{"startOffset":5986,"endOffset":6947,"count":0}],"isBlockCoverage":false},{"functionName":"runGlobalPreloadCode","ranges":[{"startOffset":6951,"endOffset":7755,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleJob","ranges":[{"startOffset":7759,"endOffset":8549,"count":83},{"startOffset":8046,"endOffset":8083,"count":0},{"startOffset":8117,"endOffset":8128,"count":52},{"startOffset":8128,"endOffset":8170,"count":31},{"startOffset":8170,"endOffset":8214,"count":0},{"startOffset":8214,"endOffset":8316,"count":31},{"startOffset":8316,"endOffset":8346,"count":1},{"startOffset":8347,"endOffset":8381,"count":1}],"isBlockCoverage":true}]},{"scriptId":"62","url":"internal/modules/esm/module_map.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":878,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":175,"endOffset":200,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":419,"endOffset":492,"count":83}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":495,"endOffset":771,"count":31},{"startOffset":585,"endOffset":621,"count":0},{"startOffset":623,"endOffset":693,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":774,"endOffset":847,"count":0}],"isBlockCoverage":false}]},{"scriptId":"63","url":"internal/modules/esm/module_job.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5778,"count":1}],"isBlockCoverage":false},{"functionName":"ModuleJob","ranges":[{"startOffset":832,"endOffset":2478,"count":31}],"isBlockCoverage":true},{"functionName":"link","ranges":[{"startOffset":1301,"endOffset":2105,"count":31}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1757,"endOffset":1984,"count":38}],"isBlockCoverage":true},{"functionName":"instantiate","ranges":[{"startOffset":2482,"endOffset":2627,"count":45},{"startOffset":2539,"endOffset":2593,"count":7}],"isBlockCoverage":true},{"functionName":"_instantiate","ranges":[{"startOffset":2631,"endOffset":5498,"count":7},{"startOffset":3105,"endOffset":3282,"count":0},{"startOffset":3339,"endOffset":5251,"count":0},{"startOffset":5298,"endOffset":5494,"count":39}],"isBlockCoverage":true},{"functionName":"addJobsToDependencyGraph","ranges":[{"startOffset":2730,"endOffset":3004,"count":46},{"startOffset":2791,"endOffset":2816,"count":7},{"startOffset":2816,"endOffset":3003,"count":39}],"isBlockCoverage":true},{"functionName":"run","ranges":[{"startOffset":5502,"endOffset":5698,"count":45}],"isBlockCoverage":true}]},{"scriptId":"64","url":"internal/modules/esm/resolve.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":28247,"count":1}],"isBlockCoverage":false},{"functionName":"getConditionsSet","ranges":[{"startOffset":1873,"endOffset":2225,"count":75},{"startOffset":1982,"endOffset":2190,"count":0}],"isBlockCoverage":true},{"functionName":"tryStatSync","ranges":[{"startOffset":2336,"endOffset":2441,"count":116},{"startOffset":2404,"endOffset":2439,"count":20}],"isBlockCoverage":true},{"functionName":"getPackageConfig","ranges":[{"startOffset":2443,"endOffset":3781,"count":261},{"startOffset":2571,"endOffset":2597,"count":240},{"startOffset":2597,"endOffset":2680,"count":21},{"startOffset":2680,"endOffset":2955,"count":13},{"startOffset":2955,"endOffset":3025,"count":8},{"startOffset":3025,"endOffset":3204,"count":0},{"startOffset":3204,"endOffset":3326,"count":8},{"startOffset":3326,"endOffset":3345,"count":0},{"startOffset":3347,"endOffset":3400,"count":8},{"startOffset":3400,"endOffset":3417,"count":0},{"startOffset":3417,"endOffset":3450,"count":8},{"startOffset":3450,"endOffset":3467,"count":0},{"startOffset":3467,"endOffset":3545,"count":8},{"startOffset":3545,"endOffset":3567,"count":6},{"startOffset":3569,"endOffset":3583,"count":6},{"startOffset":3583,"endOffset":3780,"count":8}],"isBlockCoverage":true},{"functionName":"getPackageScopeConfig","ranges":[{"startOffset":3783,"endOffset":4883,"count":84},{"startOffset":3901,"endOffset":4554,"count":250},{"startOffset":4041,"endOffset":4047,"count":0},{"startOffset":4206,"endOffset":4227,"count":84},{"startOffset":4227,"endOffset":4544,"count":166},{"startOffset":4544,"endOffset":4550,"count":0},{"startOffset":4554,"endOffset":4882,"count":0}],"isBlockCoverage":true},{"functionName":"fileExists","ranges":[{"startOffset":5139,"endOffset":5218,"count":13}],"isBlockCoverage":true},{"functionName":"legacyMainResolve","ranges":[{"startOffset":5220,"endOffset":6891,"count":9},{"startOffset":5532,"endOffset":5559,"count":8},{"startOffset":5559,"endOffset":5678,"count":1},{"startOffset":5678,"endOffset":5705,"count":0},{"startOffset":5705,"endOffset":5826,"count":1},{"startOffset":5826,"endOffset":5853,"count":0},{"startOffset":5853,"endOffset":5974,"count":1},{"startOffset":5974,"endOffset":6001,"count":0},{"startOffset":6001,"endOffset":6153,"count":1},{"startOffset":6153,"endOffset":6461,"count":0},{"startOffset":6485,"endOffset":6890,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExtensionsWithTryExactName","ranges":[{"startOffset":6893,"endOffset":7024,"count":0}],"isBlockCoverage":false},{"functionName":"resolveExtensions","ranges":[{"startOffset":7080,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"resolveIndex","ranges":[{"startOffset":7339,"endOffset":7426,"count":0}],"isBlockCoverage":false},{"functionName":"finalizeResolution","ranges":[{"startOffset":7464,"endOffset":8671,"count":75},{"startOffset":7577,"endOffset":7720,"count":0},{"startOffset":7834,"endOffset":8243,"count":0},{"startOffset":8308,"endOffset":8344,"count":0},{"startOffset":8381,"endOffset":8508,"count":0},{"startOffset":8535,"endOffset":8649,"count":0}],"isBlockCoverage":true},{"functionName":"throwImportNotDefined","ranges":[{"startOffset":8673,"endOffset":8888,"count":0}],"isBlockCoverage":false},{"functionName":"throwExportsNotFound","ranges":[{"startOffset":8890,"endOffset":9089,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidSubpath","ranges":[{"startOffset":9091,"endOffset":9441,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidPackageTarget","ranges":[{"startOffset":9443,"endOffset":9825,"count":0}],"isBlockCoverage":false},{"functionName":"resolvePackageTargetString","ranges":[{"startOffset":9926,"endOffset":11589,"count":3},{"startOffset":10065,"endOffset":10076,"count":0},{"startOffset":10077,"endOffset":10113,"count":0},{"startOffset":10119,"endOffset":10192,"count":0},{"startOffset":10242,"endOffset":10782,"count":0},{"startOffset":10869,"endOffset":10942,"count":0},{"startOffset":11165,"endOffset":11238,"count":0},{"startOffset":11278,"endOffset":11588,"count":0}],"isBlockCoverage":true},{"functionName":"isArrayIndex","ranges":[{"startOffset":11644,"endOffset":11784,"count":12},{"startOffset":11736,"endOffset":11781,"count":0}],"isBlockCoverage":true},{"functionName":"resolvePackageTarget","ranges":[{"startOffset":11786,"endOffset":13918,"count":8},{"startOffset":11968,"endOffset":12111,"count":3},{"startOffset":12111,"endOffset":13803,"count":5},{"startOffset":12143,"endOffset":12915,"count":0},{"startOffset":13068,"endOffset":13296,"count":12},{"startOffset":13126,"endOffset":13290,"count":0},{"startOffset":13339,"endOffset":13728,"count":9},{"startOffset":13420,"endOffset":13722,"count":5},{"startOffset":13680,"endOffset":13689,"count":0},{"startOffset":13728,"endOffset":13803,"count":0},{"startOffset":13803,"endOffset":13917,"count":0}],"isBlockCoverage":true},{"functionName":"isConditionalExportsMainSugar","ranges":[{"startOffset":13920,"endOffset":14855,"count":3},{"startOffset":14052,"endOffset":14064,"count":0},{"startOffset":14120,"endOffset":14133,"count":0},{"startOffset":14273,"endOffset":14824,"count":6},{"startOffset":14383,"endOffset":14820,"count":3},{"startOffset":14496,"endOffset":14820,"count":0}],"isBlockCoverage":true},{"functionName":"packageExportsResolve","ranges":[{"startOffset":15040,"endOffset":16923,"count":3},{"startOffset":15252,"endOffset":15279,"count":0},{"startOffset":15579,"endOffset":15638,"count":0},{"startOffset":15680,"endOffset":16922,"count":0}],"isBlockCoverage":true},{"functionName":"packageImportsResolve","ranges":[{"startOffset":16925,"endOffset":18921,"count":0}],"isBlockCoverage":false},{"functionName":"getPackageType","ranges":[{"startOffset":18923,"endOffset":19036,"count":73}],"isBlockCoverage":true},{"functionName":"packageResolve","ranges":[{"startOffset":19149,"endOffset":21981,"count":11},{"startOffset":19350,"endOffset":19578,"count":0},{"startOffset":19640,"endOffset":19692,"count":0},{"startOffset":19835,"endOffset":19952,"count":83},{"startOffset":19896,"endOffset":19948,"count":0},{"startOffset":19979,"endOffset":20098,"count":0},{"startOffset":20159,"endOffset":20212,"count":0},{"startOffset":20426,"endOffset":20472,"count":0},{"startOffset":20473,"endOffset":20506,"count":0},{"startOffset":20508,"endOffset":20641,"count":0},{"startOffset":20816,"endOffset":21772,"count":28},{"startOffset":20998,"endOffset":21275,"count":17},{"startOffset":21075,"endOffset":21112,"count":0},{"startOffset":21275,"endOffset":21421,"count":11},{"startOffset":21421,"endOffset":21454,"count":2},{"startOffset":21462,"endOffset":21581,"count":2},{"startOffset":21581,"endOffset":21682,"count":9},{"startOffset":21682,"endOffset":21772,"count":0},{"startOffset":21772,"endOffset":21980,"count":0}],"isBlockCoverage":true},{"functionName":"isBareSpecifier","ranges":[{"startOffset":21983,"endOffset":22093,"count":0}],"isBlockCoverage":false},{"functionName":"isRelativeSpecifier","ranges":[{"startOffset":22095,"endOffset":22366,"count":75},{"startOffset":22165,"endOffset":22348,"count":63},{"startOffset":22223,"endOffset":22235,"count":54},{"startOffset":22235,"endOffset":22344,"count":9},{"startOffset":22348,"endOffset":22365,"count":12}],"isBlockCoverage":true},{"functionName":"shouldBeTreatedAsRelativeOrAbsolutePath","ranges":[{"startOffset":22368,"endOffset":22551,"count":75},{"startOffset":22454,"endOffset":22467,"count":0},{"startOffset":22496,"endOffset":22508,"count":0}],"isBlockCoverage":true},{"functionName":"moduleResolve","ranges":[{"startOffset":22664,"endOffset":23235,"count":75},{"startOffset":22892,"endOffset":22938,"count":63},{"startOffset":22938,"endOffset":23188,"count":12},{"startOffset":22970,"endOffset":23048,"count":0},{"startOffset":23109,"endOffset":23184,"count":11}],"isBlockCoverage":true},{"functionName":"resolveAsCommonJS","ranges":[{"startOffset":23381,"endOffset":24789,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolve","ranges":[{"startOffset":24791,"endOffset":28097,"count":83},{"startOffset":24923,"endOffset":24942,"count":82},{"startOffset":24944,"endOffset":25547,"count":0},{"startOffset":25640,"endOffset":25694,"count":0},{"startOffset":25699,"endOffset":25707,"count":82},{"startOffset":25721,"endOffset":25751,"count":1},{"startOffset":25757,"endOffset":25783,"count":0},{"startOffset":25797,"endOffset":25827,"count":1},{"startOffset":25828,"endOffset":25858,"count":0},{"startOffset":25864,"endOffset":25913,"count":0},{"startOffset":25966,"endOffset":26022,"count":8},{"startOffset":26022,"endOffset":26039,"count":75},{"startOffset":26039,"endOffset":26087,"count":74},{"startOffset":26089,"endOffset":26177,"count":0},{"startOffset":26177,"endOffset":26235,"count":75},{"startOffset":26235,"endOffset":26762,"count":1},{"startOffset":26719,"endOffset":26758,"count":0},{"startOffset":26762,"endOffset":26891,"count":75},{"startOffset":26891,"endOffset":27695,"count":0},{"startOffset":27695,"endOffset":27710,"count":75},{"startOffset":27710,"endOffset":27733,"count":1},{"startOffset":27734,"endOffset":27753,"count":74},{"startOffset":27755,"endOffset":28066,"count":75},{"startOffset":27995,"endOffset":28000,"count":0},{"startOffset":28066,"endOffset":28096,"count":75}],"isBlockCoverage":true}]},{"scriptId":"65","url":"internal/modules/esm/get_format.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2496,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetFormat","ranges":[{"startOffset":1131,"endOffset":2450,"count":83},{"startOffset":1244,"endOffset":1283,"count":8},{"startOffset":1283,"endOffset":1350,"count":75},{"startOffset":1350,"endOffset":1760,"count":0},{"startOffset":1760,"endOffset":2421,"count":75},{"startOffset":1882,"endOffset":1970,"count":73},{"startOffset":1940,"endOffset":1950,"count":65},{"startOffset":1951,"endOffset":1963,"count":8},{"startOffset":1970,"endOffset":2023,"count":2},{"startOffset":2041,"endOffset":2378,"count":0},{"startOffset":2407,"endOffset":2414,"count":0},{"startOffset":2421,"endOffset":2449,"count":0}],"isBlockCoverage":true}]},{"scriptId":"66","url":"internal/modules/esm/get_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1307,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetSource","ranges":[{"startOffset":609,"endOffset":1261,"count":19},{"startOffset":810,"endOffset":1155,"count":0},{"startOffset":1180,"endOffset":1238,"count":0}],"isBlockCoverage":true}]},{"scriptId":"67","url":"internal/fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20020,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2272,"endOffset":2432,"count":0}],"isBlockCoverage":false},{"functionName":"FileHandle","ranges":[{"startOffset":2480,"endOffset":2657,"count":19},{"startOffset":2594,"endOffset":2598,"count":0}],"isBlockCoverage":true},{"functionName":"getAsyncId","ranges":[{"startOffset":2661,"endOffset":2718,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":2722,"endOffset":2758,"count":57}],"isBlockCoverage":true},{"functionName":"appendFile","ranges":[{"startOffset":2762,"endOffset":2844,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":2848,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":2908,"endOffset":2972,"count":0}],"isBlockCoverage":false},{"functionName":"datasync","ranges":[{"startOffset":2976,"endOffset":3028,"count":0}],"isBlockCoverage":false},{"functionName":"sync","ranges":[{"startOffset":3032,"endOffset":3076,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":3080,"endOffset":3189,"count":0}],"isBlockCoverage":false},{"functionName":"readv","ranges":[{"startOffset":3193,"endOffset":3274,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":3278,"endOffset":3345,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":3349,"endOffset":3409,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":3413,"endOffset":3477,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":3481,"endOffset":3555,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":3559,"endOffset":3670,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":3674,"endOffset":3757,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":3761,"endOffset":3842,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3846,"endOffset":4538,"count":19}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":3854,"endOffset":4538,"count":19},{"startOffset":3888,"endOffset":3926,"count":0},{"startOffset":3957,"endOffset":3998,"count":0},{"startOffset":4192,"endOffset":4501,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4128,"endOffset":4184,"count":19}],"isBlockCoverage":true},{"functionName":".Promise.finally.","ranges":[{"startOffset":4240,"endOffset":4346,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4356,"endOffset":4493,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4542,"endOffset":5011,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5015,"endOffset":5068,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5072,"endOffset":5159,"count":0}],"isBlockCoverage":false},{"functionName":"fsCall","ranges":[{"startOffset":5163,"endOffset":5781,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileHandle","ranges":[{"startOffset":5783,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"readFileHandle","ranges":[{"startOffset":6461,"endOffset":7737,"count":19},{"startOffset":6572,"endOffset":6589,"count":0},{"startOffset":6591,"endOffset":6667,"count":0},{"startOffset":6760,"endOffset":6777,"count":0},{"startOffset":6779,"endOffset":6855,"count":0},{"startOffset":6964,"endOffset":6989,"count":0},{"startOffset":7022,"endOffset":7060,"count":0},{"startOffset":7114,"endOffset":7141,"count":0},{"startOffset":7216,"endOffset":7567,"count":38},{"startOffset":7233,"endOffset":7250,"count":0},{"startOffset":7252,"endOffset":7332,"count":0},{"startOffset":7523,"endOffset":7563,"count":19},{"startOffset":7638,"endOffset":7661,"count":0},{"startOffset":7690,"endOffset":7725,"count":0}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":7890,"endOffset":8111,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":8113,"endOffset":8471,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":8591,"endOffset":8916,"count":19}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":8918,"endOffset":9972,"count":38},{"startOffset":9057,"endOffset":9339,"count":0},{"startOffset":9363,"endOffset":9384,"count":0},{"startOffset":9476,"endOffset":9513,"count":0},{"startOffset":9542,"endOffset":9672,"count":0},{"startOffset":9776,"endOffset":9790,"count":0},{"startOffset":9932,"endOffset":9936,"count":19}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":9974,"endOffset":10294,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":10296,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":11219,"endOffset":11551,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":11553,"endOffset":11859,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":11861,"endOffset":12004,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":12006,"endOffset":12165,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":12167,"endOffset":12364,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":12366,"endOffset":12629,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":12631,"endOffset":12720,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":12722,"endOffset":12803,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":12805,"endOffset":13337,"count":7},{"startOffset":12909,"endOffset":12947,"count":0},{"startOffset":13012,"endOffset":13017,"count":0},{"startOffset":13094,"endOffset":13168,"count":0}],"isBlockCoverage":true},{"functionName":"readdir","ranges":[{"startOffset":13339,"endOffset":13791,"count":0}],"isBlockCoverage":false},{"functionName":"readlink","ranges":[{"startOffset":13793,"endOffset":14036,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":14038,"endOffset":14451,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":14453,"endOffset":14631,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":14633,"endOffset":14903,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":14905,"endOffset":15172,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":15174,"endOffset":15497,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":15499,"endOffset":15637,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":15639,"endOffset":15772,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":15774,"endOffset":15960,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":15962,"endOffset":16200,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":16202,"endOffset":16478,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":16480,"endOffset":16677,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":16679,"endOffset":16952,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":16954,"endOffset":17226,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":17228,"endOffset":17427,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":17429,"endOffset":17706,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":17708,"endOffset":17885,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":17887,"endOffset":18217,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":18219,"endOffset":18938,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":18940,"endOffset":19181,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":19183,"endOffset":19613,"count":19},{"startOffset":19300,"endOffset":19306,"count":0},{"startOffset":19347,"endOffset":19384,"count":0},{"startOffset":19417,"endOffset":19493,"count":0}],"isBlockCoverage":true}]},{"scriptId":"68","url":"internal/fs/rimraf.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7039,"count":1}],"isBlockCoverage":false},{"functionName":"rimraf","ranges":[{"startOffset":1137,"endOffset":1597,"count":0}],"isBlockCoverage":false},{"functionName":"_rimraf","ranges":[{"startOffset":1600,"endOffset":2458,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERM","ranges":[{"startOffset":2461,"endOffset":2896,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdir","ranges":[{"startOffset":2899,"endOffset":3197,"count":0}],"isBlockCoverage":false},{"functionName":"_rmchildren","ranges":[{"startOffset":3200,"endOffset":3872,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafPromises","ranges":[{"startOffset":3875,"endOffset":4073,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafSync","ranges":[{"startOffset":4076,"endOffset":4781,"count":24},{"startOffset":4168,"endOffset":4351,"count":0},{"startOffset":4471,"endOffset":4503,"count":8},{"startOffset":4503,"endOffset":4546,"count":16},{"startOffset":4551,"endOffset":4779,"count":0}],"isBlockCoverage":true},{"functionName":"_unlinkSync","ranges":[{"startOffset":4784,"endOffset":5267,"count":16},{"startOffset":4947,"endOffset":5261,"count":0},{"startOffset":5265,"endOffset":5266,"count":0}],"isBlockCoverage":true},{"functionName":"_rmdirSync","ranges":[{"startOffset":5270,"endOffset":6540,"count":8},{"startOffset":5404,"endOffset":5411,"count":0},{"startOffset":5450,"endOffset":5468,"count":0},{"startOffset":6174,"endOffset":6520,"count":0},{"startOffset":6528,"endOffset":6534,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5892,"endOffset":6023,"count":23}],"isBlockCoverage":true},{"functionName":"fixWinEPERMSync","ranges":[{"startOffset":6543,"endOffset":6979,"count":0}],"isBlockCoverage":false}]},{"scriptId":"69","url":"internal/modules/esm/transform_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":215,"count":1}],"isBlockCoverage":false},{"functionName":"defaultTransformSource","ranges":[{"startOffset":15,"endOffset":157,"count":19}],"isBlockCoverage":true}]},{"scriptId":"70","url":"internal/modules/esm/translators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12048,"count":1}],"isBlockCoverage":false},{"functionName":"lazyTypes","ranges":[{"startOffset":416,"endOffset":528,"count":38},{"startOffset":462,"endOffset":476,"count":37},{"startOffset":476,"endOffset":527,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1202,"endOffset":1227,"count":1}],"isBlockCoverage":true},{"functionName":"initCJSParse","ranges":[{"startOffset":1860,"endOffset":2152,"count":2},{"startOffset":1934,"endOffset":2009,"count":0}],"isBlockCoverage":true},{"functionName":"assertBufferSource","ranges":[{"startOffset":2286,"endOffset":2706,"count":38},{"startOffset":2363,"endOffset":2390,"count":19},{"startOffset":2392,"endOffset":2409,"count":0},{"startOffset":2503,"endOffset":2528,"count":0},{"startOffset":2547,"endOffset":2626,"count":0},{"startOffset":2627,"endOffset":2631,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":2708,"endOffset":2926,"count":19},{"startOffset":2767,"endOffset":2779,"count":0},{"startOffset":2863,"endOffset":2882,"count":1},{"startOffset":2883,"endOffset":2892,"count":18}],"isBlockCoverage":true},{"functionName":"errPath","ranges":[{"startOffset":2928,"endOffset":3073,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":3075,"endOffset":3189,"count":44}],"isBlockCoverage":true},{"functionName":"createImportMetaResolve","ranges":[{"startOffset":3191,"endOffset":3539,"count":0}],"isBlockCoverage":false},{"functionName":"initializeImportMeta","ranges":[{"startOffset":3541,"endOffset":3711,"count":0}],"isBlockCoverage":false},{"functionName":"moduleStrategy","ranges":[{"startOffset":3793,"endOffset":4374,"count":19}],"isBlockCoverage":true},{"functionName":"enrichCJSError","ranges":[{"startOffset":4378,"endOffset":5277,"count":0}],"isBlockCoverage":false},{"functionName":"commonjsStrategy","ranges":[{"startOffset":5435,"endOffset":6741,"count":6},{"startOffset":5609,"endOffset":5672,"count":0},{"startOffset":5691,"endOffset":5712,"count":2},{"startOffset":5837,"endOffset":5859,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5950,"endOffset":6737,"count":6},{"startOffset":6069,"endOffset":6183,"count":0},{"startOffset":6275,"endOffset":6344,"count":0},{"startOffset":6394,"endOffset":6693,"count":14},{"startOffset":6505,"endOffset":6514,"count":0},{"startOffset":6638,"endOffset":6646,"count":0}],"isBlockCoverage":true},{"functionName":"cjsPreparseModuleExports","ranges":[{"startOffset":6745,"endOffset":8189,"count":6},{"startOffset":6848,"endOffset":6973,"count":0},{"startOffset":7272,"endOffset":7280,"count":0},{"startOffset":7362,"endOffset":7367,"count":0},{"startOffset":7375,"endOffset":7424,"count":0},{"startOffset":7585,"endOffset":7682,"count":0},{"startOffset":7719,"endOffset":8152,"count":0}],"isBlockCoverage":true},{"functionName":"builtinStrategy","ranges":[{"startOffset":8313,"endOffset":8701,"count":6},{"startOffset":8574,"endOffset":8626,"count":0}],"isBlockCoverage":true},{"functionName":"jsonStrategy","ranges":[{"startOffset":8765,"endOffset":10884,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10950,"endOffset":12045,"count":0}],"isBlockCoverage":false}]},{"scriptId":"71","url":"internal/modules/esm/create_dynamic_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1756,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":190,"endOffset":215,"count":0}],"isBlockCoverage":false},{"functionName":"createImport","ranges":[{"startOffset":219,"endOffset":409,"count":0}],"isBlockCoverage":false},{"functionName":"createExport","ranges":[{"startOffset":411,"endOffset":612,"count":0}],"isBlockCoverage":false},{"functionName":"createDynamicModule","ranges":[{"startOffset":642,"endOffset":1715,"count":0}],"isBlockCoverage":false}]},{"scriptId":"72","url":"internal/vm/module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12877,"count":1}],"isBlockCoverage":false},{"functionName":"Module","ranges":[{"startOffset":1618,"endOffset":3804,"count":0}],"isBlockCoverage":false},{"functionName":"get identifier","ranges":[{"startOffset":3808,"endOffset":3945,"count":0}],"isBlockCoverage":false},{"functionName":"get context","ranges":[{"startOffset":3949,"endOffset":4082,"count":0}],"isBlockCoverage":false},{"functionName":"get namespace","ranges":[{"startOffset":4086,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":4367,"endOffset":4520,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":4524,"endOffset":4774,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":4778,"endOffset":5257,"count":0}],"isBlockCoverage":false},{"functionName":"evaluate","ranges":[{"startOffset":5261,"endOffset":6213,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6217,"endOffset":6945,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":7092,"endOffset":7128,"count":0}],"isBlockCoverage":false},{"functionName":"SourceTextModule","ranges":[{"startOffset":7133,"endOffset":9559,"count":0}],"isBlockCoverage":false},{"functionName":"get dependencySpecifiers","ranges":[{"startOffset":9563,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":9866,"endOffset":10135,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":10139,"endOffset":10335,"count":0}],"isBlockCoverage":false},{"functionName":"createCachedData","ranges":[{"startOffset":10339,"endOffset":10601,"count":0}],"isBlockCoverage":false},{"functionName":"SyntheticModule","ranges":[{"startOffset":10646,"endOffset":11943,"count":0}],"isBlockCoverage":false},{"functionName":"setExport","ranges":[{"startOffset":11947,"endOffset":12249,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamicallyWrap","ranges":[{"startOffset":12253,"endOffset":12715,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleFromWrap","ranges":[{"startOffset":12837,"endOffset":12872,"count":44}],"isBlockCoverage":true}]},{"scriptId":"73","url":"internal/modules/run_main.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2582,"count":1}],"isBlockCoverage":false},{"functionName":"resolveMainPath","ranges":[{"startOffset":220,"endOffset":658,"count":1},{"startOffset":487,"endOffset":494,"count":0}],"isBlockCoverage":true},{"functionName":"shouldUseESMLoader","ranges":[{"startOffset":660,"endOffset":1215,"count":1},{"startOffset":784,"endOffset":796,"count":0},{"startOffset":944,"endOffset":956,"count":0},{"startOffset":1051,"endOffset":1063,"count":0},{"startOffset":1114,"endOffset":1127,"count":0}],"isBlockCoverage":true},{"functionName":"runMainESM","ranges":[{"startOffset":1217,"endOffset":1552,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1400,"endOffset":1547,"count":1},{"startOffset":1497,"endOffset":1507,"count":0}],"isBlockCoverage":true},{"functionName":"handleMainPromise","ranges":[{"startOffset":1554,"endOffset":1991,"count":1}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":1803,"endOffset":1896,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1953,"endOffset":1987,"count":1}],"isBlockCoverage":true},{"functionName":"executeUserEntryPoint","ranges":[{"startOffset":2177,"endOffset":2512,"count":1},{"startOffset":2387,"endOffset":2394,"count":0},{"startOffset":2400,"endOffset":2510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"74","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3159,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":212,"endOffset":913,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":949,"endOffset":1653,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1686,"endOffset":3156,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2730,"endOffset":2762,"count":2},{"startOffset":2758,"endOffset":2762,"count":0}],"isBlockCoverage":true}]},{"scriptId":"75","url":"internal/deps/cjs-module-lexer/dist/lexer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":33943,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":231,"endOffset":903,"count":6},{"startOffset":261,"endOffset":296,"count":0},{"startOffset":337,"endOffset":352,"count":0},{"startOffset":388,"endOffset":423,"count":1},{"startOffset":447,"endOffset":449,"count":0},{"startOffset":521,"endOffset":668,"count":0},{"startOffset":716,"endOffset":748,"count":0},{"startOffset":761,"endOffset":791,"count":0},{"startOffset":804,"endOffset":863,"count":14}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":903,"endOffset":1004,"count":0}],"isBlockCoverage":false},{"functionName":"C","ranges":[{"startOffset":1004,"endOffset":1078,"count":6},{"startOffset":1055,"endOffset":1077,"count":28254}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":1084,"endOffset":33943,"count":2},{"startOffset":1108,"endOffset":33942,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1114,"endOffset":33938,"count":1},{"startOffset":33782,"endOffset":33851,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":33832,"endOffset":33850,"count":0}],"isBlockCoverage":false}]},{"scriptId":"76","url":"file:///home/mark/Synced/Projects/canhazdb/server2/test/helpers/createTestServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1178,"count":1}],"isBlockCoverage":true},{"functionName":"getNewPort","ranges":[{"startOffset":425,"endOffset":492,"count":7}],"isBlockCoverage":true},{"functionName":"createTestServers","ranges":[{"startOffset":495,"endOffset":1142,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":641,"endOffset":1014,"count":7}],"isBlockCoverage":true},{"functionName":"servers.close","ranges":[{"startOffset":1040,"endOffset":1120,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1089,"endOffset":1113,"count":7}],"isBlockCoverage":true}]},{"scriptId":"77","url":"internal/fs/streams.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"ReadStream","ranges":[{"startOffset":702,"endOffset":2789,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2928,"endOffset":2963,"count":0}],"isBlockCoverage":false},{"functionName":"_openReadFs","ranges":[{"startOffset":3063,"endOffset":3544,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._read","ranges":[{"startOffset":3575,"endOffset":4888,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._destroy","ranges":[{"startOffset":4923,"endOffset":5210,"count":0}],"isBlockCoverage":false},{"functionName":"closeFsStream","ranges":[{"startOffset":5213,"endOffset":5369,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.close","ranges":[{"startOffset":5400,"endOffset":5486,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5547,"endOffset":5581,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":5609,"endOffset":7859,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._final","ranges":[{"startOffset":8002,"endOffset":8159,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":8192,"endOffset":8228,"count":0}],"isBlockCoverage":false},{"functionName":"_openWriteFs","ranges":[{"startOffset":8331,"endOffset":8764,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._write","ranges":[{"startOffset":8798,"endOffset":9466,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._writev","ranges":[{"startOffset":9502,"endOffset":10392,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.close","ranges":[{"startOffset":10490,"endOffset":10872,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":11035,"endOffset":11069,"count":0}],"isBlockCoverage":false}]},{"scriptId":"78","url":"stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2187,"count":1}],"isBlockCoverage":false},{"functionName":"_uint8ArrayToBuffer","ranges":[{"startOffset":1978,"endOffset":2185,"count":0}],"isBlockCoverage":false}]},{"scriptId":"79","url":"internal/streams/pipeline.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7631,"count":1}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":543,"endOffset":1935,"count":0}],"isBlockCoverage":false},{"functionName":"popCallback","ranges":[{"startOffset":1937,"endOffset":2308,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":2392,"endOffset":2473,"count":0}],"isBlockCoverage":false},{"functionName":"isStream","ranges":[{"startOffset":2475,"endOffset":2546,"count":0}],"isBlockCoverage":false},{"functionName":"isIterable","ranges":[{"startOffset":2548,"endOffset":2871,"count":0}],"isBlockCoverage":false},{"functionName":"makeAsyncIterable","ranges":[{"startOffset":2873,"endOffset":3149,"count":0}],"isBlockCoverage":false},{"functionName":"fromReadable","ranges":[{"startOffset":3151,"endOffset":3315,"count":0}],"isBlockCoverage":false},{"functionName":"pump","ranges":[{"startOffset":3317,"endOffset":3794,"count":0}],"isBlockCoverage":false},{"functionName":"pipeline","ranges":[{"startOffset":3796,"endOffset":7602,"count":0}],"isBlockCoverage":false}]},{"scriptId":"80","url":"internal/streams/destroy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3954,"count":1}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":123,"endOffset":1394,"count":155},{"startOffset":227,"endOffset":241,"count":120},{"startOffset":243,"endOffset":264,"count":125},{"startOffset":266,"endOffset":343,"count":30},{"startOffset":302,"endOffset":321,"count":0},{"startOffset":343,"endOffset":356,"count":125},{"startOffset":356,"endOffset":576,"count":0},{"startOffset":576,"endOffset":735,"count":125},{"startOffset":735,"endOffset":764,"count":90},{"startOffset":764,"endOffset":832,"count":125}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":834,"endOffset":1374,"count":125},{"startOffset":858,"endOffset":1096,"count":0},{"startOffset":1109,"endOffset":1139,"count":90},{"startOffset":1217,"endOffset":1239,"count":0},{"startOffset":1254,"endOffset":1314,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorCloseNT","ranges":[{"startOffset":1396,"endOffset":1483,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":1485,"endOffset":1703,"count":125},{"startOffset":1633,"endOffset":1647,"count":90},{"startOffset":1672,"endOffset":1701,"count":35}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":1705,"endOffset":1992,"count":0}],"isBlockCoverage":false},{"functionName":"undestroy","ranges":[{"startOffset":1994,"endOffset":2557,"count":92}],"isBlockCoverage":true},{"functionName":"errorOrDestroy","ranges":[{"startOffset":2559,"endOffset":3458,"count":0}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":3460,"endOffset":3565,"count":0}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":3600,"endOffset":3876,"count":0}],"isBlockCoverage":false}]},{"scriptId":"81","url":"internal/streams/end-of-stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5791,"count":1}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":280,"endOffset":375,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":377,"endOffset":535,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":537,"endOffset":695,"count":0}],"isBlockCoverage":false},{"functionName":"isWritableFinished","ranges":[{"startOffset":697,"endOffset":934,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":936,"endOffset":953,"count":0}],"isBlockCoverage":false},{"functionName":"isReadableEnded","ranges":[{"startOffset":955,"endOffset":1188,"count":0}],"isBlockCoverage":false},{"functionName":"eos","ranges":[{"startOffset":1190,"endOffset":5767,"count":0}],"isBlockCoverage":false}]},{"scriptId":"82","url":"internal/streams/legacy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2081,"count":1}],"isBlockCoverage":false},{"functionName":"Stream","ranges":[{"startOffset":96,"endOffset":144,"count":219}],"isBlockCoverage":true},{"functionName":"Stream.pipe","ranges":[{"startOffset":258,"endOffset":2053,"count":0}],"isBlockCoverage":false}]},{"scriptId":"83","url":"internal/streams/readable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":40444,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1596,"endOffset":1621,"count":1}],"isBlockCoverage":true},{"functionName":"nop","ranges":[{"startOffset":2218,"endOffset":2235,"count":0}],"isBlockCoverage":false},{"functionName":"prependListener","ranges":[{"startOffset":2278,"endOffset":3085,"count":60},{"startOffset":2537,"endOffset":2900,"count":0},{"startOffset":2906,"endOffset":3083,"count":0}],"isBlockCoverage":true},{"functionName":"ReadableState","ranges":[{"startOffset":3087,"endOffset":6664,"count":127},{"startOffset":3486,"endOffset":3529,"count":0},{"startOffset":3729,"endOffset":3814,"count":92},{"startOffset":4062,"endOffset":4098,"count":0},{"startOffset":6476,"endOffset":6662,"count":0}],"isBlockCoverage":true},{"functionName":"Readable","ranges":[{"startOffset":6667,"endOffset":7237,"count":127},{"startOffset":6735,"endOffset":6764,"count":0},{"startOffset":7087,"endOffset":7113,"count":0},{"startOffset":7168,"endOffset":7200,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._destroy","ranges":[{"startOffset":7374,"endOffset":7406,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":7457,"endOffset":7495,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.push","ranges":[{"startOffset":7724,"endOffset":7810,"count":105}],"isBlockCoverage":true},{"functionName":"Readable.unshift","ranges":[{"startOffset":7906,"endOffset":7991,"count":0}],"isBlockCoverage":false},{"functionName":"readableAddChunk","ranges":[{"startOffset":7994,"endOffset":10247,"count":105},{"startOffset":8171,"endOffset":8986,"count":102},{"startOffset":8208,"endOffset":8672,"count":0},{"startOffset":8707,"endOffset":8735,"count":72},{"startOffset":8735,"endOffset":8982,"count":30},{"startOffset":8774,"endOffset":8851,"count":0},{"startOffset":8876,"endOffset":8982,"count":0},{"startOffset":8999,"endOffset":9037,"count":0},{"startOffset":9063,"endOffset":9126,"count":30},{"startOffset":9126,"endOffset":9963,"count":75},{"startOffset":9153,"endOffset":9183,"count":72},{"startOffset":9207,"endOffset":9373,"count":0},{"startOffset":9396,"endOffset":9466,"count":0},{"startOffset":9493,"endOffset":9520,"count":0},{"startOffset":9581,"endOffset":9593,"count":0},{"startOffset":9595,"endOffset":9802,"count":0},{"startOffset":9874,"endOffset":9963,"count":0},{"startOffset":10179,"endOffset":10244,"count":75},{"startOffset":10222,"endOffset":10243,"count":0}],"isBlockCoverage":true},{"functionName":"addChunk","ranges":[{"startOffset":10249,"endOffset":10949,"count":75},{"startOffset":10530,"endOffset":10576,"count":0},{"startOffset":10663,"endOffset":10915,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.isPaused","ranges":[{"startOffset":10981,"endOffset":11093,"count":30}],"isBlockCoverage":true},{"functionName":"Readable.setEncoding","ranges":[{"startOffset":11157,"endOffset":11801,"count":0}],"isBlockCoverage":false},{"functionName":"computeNewHighWaterMark","ranges":[{"startOffset":11862,"endOffset":12227,"count":0}],"isBlockCoverage":false},{"functionName":"howMuchToRead","ranges":[{"startOffset":12340,"endOffset":12734,"count":385},{"startOffset":12388,"endOffset":12426,"count":125},{"startOffset":12432,"endOffset":12441,"count":290},{"startOffset":12441,"endOffset":12470,"count":95},{"startOffset":12470,"endOffset":12479,"count":35},{"startOffset":12479,"endOffset":12652,"count":60},{"startOffset":12588,"endOffset":12623,"count":0},{"startOffset":12652,"endOffset":12727,"count":0},{"startOffset":12728,"endOffset":12731,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.read","ranges":[{"startOffset":12831,"endOffset":17061,"count":385},{"startOffset":13021,"endOffset":13039,"count":125},{"startOffset":13039,"endOffset":13106,"count":260},{"startOffset":13070,"endOffset":13106,"count":0},{"startOffset":13271,"endOffset":13320,"count":0},{"startOffset":13341,"endOffset":13371,"count":125},{"startOffset":13557,"endOffset":13584,"count":260},{"startOffset":13585,"endOffset":13718,"count":105},{"startOffset":13668,"endOffset":13694,"count":0},{"startOffset":13720,"endOffset":13905,"count":0},{"startOffset":14014,"endOffset":14028,"count":350},{"startOffset":14030,"endOffset":14105,"count":60},{"startOffset":14105,"endOffset":15381,"count":325},{"startOffset":15381,"endOffset":15422,"count":0},{"startOffset":15424,"endOffset":15692,"count":325},{"startOffset":15693,"endOffset":15711,"count":200},{"startOffset":15713,"endOffset":15777,"count":125},{"startOffset":15777,"endOffset":16310,"count":200},{"startOffset":16274,"endOffset":16306,"count":0},{"startOffset":16310,"endOffset":16340,"count":325},{"startOffset":16340,"endOffset":16365,"count":35},{"startOffset":16365,"endOffset":16388,"count":290},{"startOffset":16388,"endOffset":16488,"count":325},{"startOffset":16488,"endOffset":16651,"count":0},{"startOffset":16651,"endOffset":16995,"count":325},{"startOffset":16951,"endOffset":16965,"count":95},{"startOffset":16973,"endOffset":16991,"count":0},{"startOffset":16995,"endOffset":17021,"count":325},{"startOffset":17021,"endOffset":17044,"count":0},{"startOffset":17044,"endOffset":17060,"count":325}],"isBlockCoverage":true},{"functionName":"onEofChunk","ranges":[{"startOffset":17064,"endOffset":17884,"count":30},{"startOffset":17143,"endOffset":17150,"count":0},{"startOffset":17172,"endOffset":17346,"count":0},{"startOffset":17388,"endOffset":17590,"count":0}],"isBlockCoverage":true},{"functionName":"emitReadable","ranges":[{"startOffset":18085,"endOffset":18412,"count":0}],"isBlockCoverage":false},{"functionName":"emitReadable_","ranges":[{"startOffset":18414,"endOffset":19050,"count":30},{"startOffset":18969,"endOffset":18988,"count":0},{"startOffset":18989,"endOffset":19031,"count":0}],"isBlockCoverage":true},{"functionName":"maybeReadMore","ranges":[{"startOffset":19400,"endOffset":19556,"count":75}],"isBlockCoverage":true},{"functionName":"maybeReadMore_","ranges":[{"startOffset":19558,"endOffset":21350,"count":75},{"startOffset":21088,"endOffset":21138,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._read","ranges":[{"startOffset":21621,"endOffset":21687,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.pipe","ranges":[{"startOffset":21716,"endOffset":26193,"count":60},{"startOffset":21833,"endOffset":22029,"count":0},{"startOffset":22149,"endOffset":22174,"count":0},{"startOffset":22290,"endOffset":22298,"count":0},{"startOffset":22328,"endOffset":22352,"count":0},{"startOffset":26049,"endOffset":26100,"count":0},{"startOffset":26126,"endOffset":26175,"count":0}],"isBlockCoverage":true},{"functionName":"onunpipe","ranges":[{"startOffset":22422,"endOffset":22648,"count":0}],"isBlockCoverage":false},{"functionName":"onend","ranges":[{"startOffset":22652,"endOffset":22710,"count":30}],"isBlockCoverage":true},{"functionName":"cleanup","ranges":[{"startOffset":22755,"endOffset":23647,"count":0}],"isBlockCoverage":false},{"functionName":"pause","ranges":[{"startOffset":23651,"endOffset":24648,"count":0}],"isBlockCoverage":false},{"functionName":"ondata","ranges":[{"startOffset":24678,"endOffset":24838,"count":72},{"startOffset":24812,"endOffset":24834,"count":0}],"isBlockCoverage":true},{"functionName":"onerror","ranges":[{"startOffset":24960,"endOffset":25375,"count":0}],"isBlockCoverage":false},{"functionName":"onclose","ranges":[{"startOffset":25555,"endOffset":25638,"count":0}],"isBlockCoverage":false},{"functionName":"onfinish","ranges":[{"startOffset":25672,"endOffset":25777,"count":0}],"isBlockCoverage":false},{"functionName":"unpipe","ranges":[{"startOffset":25814,"endOffset":25880,"count":0}],"isBlockCoverage":false},{"functionName":"pipeOnDrain","ranges":[{"startOffset":26196,"endOffset":26870,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.unpipe","ranges":[{"startOffset":26901,"endOffset":27570,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.on","ranges":[{"startOffset":27696,"endOffset":28603,"count":1042},{"startOffset":27828,"endOffset":28160,"count":95},{"startOffset":28160,"endOffset":28586,"count":947},{"startOffset":28189,"endOffset":28586,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeListener","ranges":[{"startOffset":28698,"endOffset":29212,"count":334},{"startOffset":28809,"endOffset":29195,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeAllListeners","ranges":[{"startOffset":29315,"endOffset":29853,"count":0}],"isBlockCoverage":false},{"functionName":"updateReadableListening","ranges":[{"startOffset":29856,"endOffset":30366,"count":0}],"isBlockCoverage":false},{"functionName":"nReadingNextTick","ranges":[{"startOffset":30368,"endOffset":30456,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.resume","ranges":[{"startOffset":30610,"endOffset":30935,"count":95}],"isBlockCoverage":true},{"functionName":"resume","ranges":[{"startOffset":30938,"endOffset":31088,"count":95}],"isBlockCoverage":true},{"functionName":"resume_","ranges":[{"startOffset":31090,"endOffset":31341,"count":95},{"startOffset":31180,"endOffset":31205,"count":35},{"startOffset":31324,"endOffset":31339,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.pause","ranges":[{"startOffset":31370,"endOffset":31637,"count":0}],"isBlockCoverage":false},{"functionName":"flow","ranges":[{"startOffset":31640,"endOffset":31787,"count":125},{"startOffset":31784,"endOffset":31785,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.wrap","ranges":[{"startOffset":31971,"endOffset":33786,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":33831,"endOffset":34212,"count":0}],"isBlockCoverage":false},{"functionName":"createAsyncIterator","ranges":[{"startOffset":34215,"endOffset":35508,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":35706,"endOffset":36095,"count":60}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":36101,"endOffset":36231,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36297,"endOffset":36363,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36422,"endOffset":36504,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36564,"endOffset":36624,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":36635,"endOffset":36744,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36798,"endOffset":36852,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":36910,"endOffset":36998,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37054,"endOffset":37139,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37188,"endOffset":37322,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":37328,"endOffset":37617,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37670,"endOffset":37758,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37877,"endOffset":37922,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37980,"endOffset":38031,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":38037,"endOffset":38086,"count":0}],"isBlockCoverage":false},{"functionName":"fromList","ranges":[{"startOffset":38390,"endOffset":38952,"count":35},{"startOffset":38485,"endOffset":38951,"count":0}],"isBlockCoverage":true},{"functionName":"endReadable","ranges":[{"startOffset":38954,"endOffset":39175,"count":60}],"isBlockCoverage":true},{"functionName":"endReadableNT","ranges":[{"startOffset":39177,"endOffset":40109,"count":60},{"startOffset":39400,"endOffset":39421,"count":30},{"startOffset":39423,"endOffset":40107,"count":30},{"startOffset":39503,"endOffset":39536,"count":0},{"startOffset":39538,"endOffset":39599,"count":0},{"startOffset":39628,"endOffset":40103,"count":0}],"isBlockCoverage":true},{"functionName":"endWritableNT","ranges":[{"startOffset":40111,"endOffset":40278,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.from","ranges":[{"startOffset":40296,"endOffset":40442,"count":0}],"isBlockCoverage":false}]},{"scriptId":"84","url":"internal/streams/buffer_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3798,"count":1}],"isBlockCoverage":false},{"functionName":"BufferList","ranges":[{"startOffset":204,"endOffset":288,"count":127}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":292,"endOffset":479,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":483,"endOffset":641,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":645,"endOffset":872,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":876,"endOffset":944,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":948,"endOffset":1119,"count":0}],"isBlockCoverage":false},{"functionName":"concat","ranges":[{"startOffset":1123,"endOffset":1386,"count":0}],"isBlockCoverage":false},{"functionName":"consume","ranges":[{"startOffset":1470,"endOffset":1924,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":1928,"endOffset":1968,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":1972,"endOffset":2068,"count":0}],"isBlockCoverage":false},{"functionName":"_getString","ranges":[{"startOffset":2143,"endOffset":2738,"count":0}],"isBlockCoverage":false},{"functionName":"_getBuffer","ranges":[{"startOffset":2808,"endOffset":3518,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":3599,"endOffset":3794,"count":0}],"isBlockCoverage":false}]},{"scriptId":"85","url":"internal/streams/state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":881,"count":1}],"isBlockCoverage":false},{"functionName":"highWaterMarkFrom","ranges":[{"startOffset":142,"endOffset":309,"count":219},{"startOffset":240,"endOffset":263,"count":35},{"startOffset":264,"endOffset":306,"count":184},{"startOffset":300,"endOffset":306,"count":0}],"isBlockCoverage":true},{"functionName":"getDefaultHighWaterMark","ranges":[{"startOffset":311,"endOffset":397,"count":184},{"startOffset":378,"endOffset":382,"count":0}],"isBlockCoverage":true},{"functionName":"getHighWaterMark","ranges":[{"startOffset":399,"endOffset":811,"count":219},{"startOffset":546,"endOffset":737,"count":35},{"startOffset":590,"endOffset":706,"count":0},{"startOffset":737,"endOffset":810,"count":184}],"isBlockCoverage":true}]},{"scriptId":"86","url":"internal/streams/writable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":22800,"count":1}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":2223,"endOffset":2240,"count":75}],"isBlockCoverage":true},{"functionName":"WritableState","ranges":[{"startOffset":2242,"endOffset":6406,"count":92},{"startOffset":2637,"endOffset":2680,"count":0},{"startOffset":3231,"endOffset":3267,"count":0}],"isBlockCoverage":true},{"functionName":"resetBuffer","ranges":[{"startOffset":6408,"endOffset":6540,"count":96}],"isBlockCoverage":true},{"functionName":"getBuffer","ranges":[{"startOffset":6578,"endOffset":6652,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6729,"endOffset":6794,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":7121,"endOffset":7335,"count":0}],"isBlockCoverage":false},{"functionName":"realHasInstance","ranges":[{"startOffset":7371,"endOffset":7428,"count":0}],"isBlockCoverage":false},{"functionName":"Writable","ranges":[{"startOffset":7433,"endOffset":8605,"count":92},{"startOffset":8074,"endOffset":8114,"count":0},{"startOffset":8120,"endOffset":8149,"count":0},{"startOffset":8288,"endOffset":8316,"count":0},{"startOffset":8370,"endOffset":8400,"count":0},{"startOffset":8455,"endOffset":8487,"count":0},{"startOffset":8540,"endOffset":8568,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.pipe","ranges":[{"startOffset":8701,"endOffset":8769,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.write","ranges":[{"startOffset":8799,"endOffset":10008,"count":111},{"startOffset":8907,"endOffset":8969,"count":34},{"startOffset":8969,"endOffset":9089,"count":77},{"startOffset":9113,"endOffset":9158,"count":0},{"startOffset":9267,"endOffset":9351,"count":0},{"startOffset":9357,"endOffset":9660,"count":0},{"startOffset":9697,"endOffset":9746,"count":0},{"startOffset":9773,"endOffset":9823,"count":0},{"startOffset":9836,"endOffset":9927,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.cork","ranges":[{"startOffset":10037,"endOffset":10083,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.uncork","ranges":[{"startOffset":10114,"endOffset":10269,"count":0}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":10312,"endOffset":10623,"count":0}],"isBlockCoverage":false},{"functionName":"writeOrBuffer","ranges":[{"startOffset":10813,"endOffset":11804,"count":111},{"startOffset":10911,"endOffset":10914,"count":0},{"startOffset":11133,"endOffset":11156,"count":0},{"startOffset":11178,"endOffset":11193,"count":105},{"startOffset":11194,"endOffset":11210,"count":105},{"startOffset":11212,"endOffset":11444,"count":6},{"startOffset":11295,"endOffset":11319,"count":4},{"startOffset":11321,"endOffset":11360,"count":4},{"startOffset":11404,"endOffset":11440,"count":0},{"startOffset":11444,"endOffset":11635,"count":105}],"isBlockCoverage":true},{"functionName":"doWrite","ranges":[{"startOffset":11806,"endOffset":12184,"count":4},{"startOffset":11992,"endOffset":12041,"count":0},{"startOffset":12065,"endOffset":12160,"count":2}],"isBlockCoverage":true},{"functionName":"onwriteError","ranges":[{"startOffset":12186,"endOffset":12606,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":12608,"endOffset":14202,"count":109},{"startOffset":12766,"endOffset":12840,"count":0},{"startOffset":12958,"endOffset":13469,"count":0},{"startOffset":13530,"endOffset":13571,"count":4},{"startOffset":13587,"endOffset":14143,"count":37},{"startOffset":13886,"endOffset":13933,"count":31},{"startOffset":13935,"endOffset":13986,"count":29},{"startOffset":13986,"endOffset":14137,"count":8},{"startOffset":14143,"endOffset":14196,"count":72}],"isBlockCoverage":true},{"functionName":"afterWriteTick","ranges":[{"startOffset":14204,"endOffset":14343,"count":8}],"isBlockCoverage":true},{"functionName":"afterWrite","ranges":[{"startOffset":14345,"endOffset":14755,"count":80},{"startOffset":14470,"endOffset":14492,"count":76},{"startOffset":14511,"endOffset":14571,"count":0},{"startOffset":14595,"endOffset":14633,"count":109},{"startOffset":14658,"endOffset":14722,"count":0}],"isBlockCoverage":true},{"functionName":"errorBuffer","ranges":[{"startOffset":14827,"endOffset":15148,"count":0}],"isBlockCoverage":false},{"functionName":"clearBuffer","ranges":[{"startOffset":15214,"endOffset":16647,"count":4},{"startOffset":15317,"endOffset":15334,"count":0},{"startOffset":15475,"endOffset":15492,"count":0},{"startOffset":15578,"endOffset":15595,"count":2},{"startOffset":15597,"endOffset":16139,"count":2},{"startOffset":15684,"endOffset":15795,"count":0},{"startOffset":15977,"endOffset":15996,"count":0},{"startOffset":16139,"endOffset":16611,"count":2},{"startOffset":16270,"endOffset":16273,"count":0},{"startOffset":16392,"endOffset":16409,"count":0},{"startOffset":16477,"endOffset":16607,"count":0}],"isBlockCoverage":true},{"functionName":"callback","ranges":[{"startOffset":15686,"endOffset":15795,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._write","ranges":[{"startOffset":16677,"endOffset":16846,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.end","ranges":[{"startOffset":16910,"endOffset":18094,"count":30},{"startOffset":17015,"endOffset":17075,"count":0},{"startOffset":17117,"endOffset":17162,"count":0},{"startOffset":17213,"endOffset":17241,"count":0},{"startOffset":17290,"endOffset":17336,"count":0},{"startOffset":17780,"endOffset":17936,"count":0},{"startOffset":17970,"endOffset":18076,"count":0}],"isBlockCoverage":true},{"functionName":"needFinish","ranges":[{"startOffset":18097,"endOffset":18310,"count":140},{"startOffset":18149,"endOffset":18180,"count":60},{"startOffset":18181,"endOffset":18208,"count":60},{"startOffset":18209,"endOffset":18249,"count":60},{"startOffset":18250,"endOffset":18278,"count":60},{"startOffset":18279,"endOffset":18306,"count":60}],"isBlockCoverage":true},{"functionName":"callFinal","ranges":[{"startOffset":18312,"endOffset":18572,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":18364,"endOffset":18568,"count":30},{"startOffset":18411,"endOffset":18453,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":18574,"endOffset":18922,"count":60},{"startOffset":18635,"endOffset":18656,"count":30},{"startOffset":18658,"endOffset":18920,"count":30},{"startOffset":18839,"endOffset":18916,"count":0}],"isBlockCoverage":true},{"functionName":"finishMaybe","ranges":[{"startOffset":18924,"endOffset":19251,"count":140},{"startOffset":19014,"endOffset":19234,"count":60},{"startOffset":19077,"endOffset":19230,"count":30},{"startOffset":19120,"endOffset":19178,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":19253,"endOffset":19871,"count":30},{"startOffset":19337,"endOffset":19344,"count":0},{"startOffset":19422,"endOffset":19869,"count":0}],"isBlockCoverage":true},{"functionName":"onFinished","ranges":[{"startOffset":19937,"endOffset":20401,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20468,"endOffset":20555,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":20561,"endOffset":20743,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20768,"endOffset":21160,"count":120},{"startOffset":21142,"endOffset":21153,"count":90}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":21166,"endOffset":21300,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":21333,"endOffset":21419,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21454,"endOffset":21542,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21573,"endOffset":21655,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21685,"endOffset":21769,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21803,"endOffset":21961,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21999,"endOffset":22083,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22114,"endOffset":22194,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22225,"endOffset":22302,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.destroy","ranges":[{"startOffset":22378,"endOffset":22589,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._destroy","ranges":[{"startOffset":22677,"endOffset":22709,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.","ranges":[{"startOffset":22760,"endOffset":22798,"count":0}],"isBlockCoverage":false}]},{"scriptId":"87","url":"internal/streams/duplex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3759,"count":1}],"isBlockCoverage":false},{"functionName":"Duplex","ranges":[{"startOffset":1936,"endOffset":2360,"count":92},{"startOffset":2000,"endOffset":2027,"count":0},{"startOffset":2182,"endOffset":2204,"count":2},{"startOffset":2248,"endOffset":2270,"count":0},{"startOffset":2313,"endOffset":2354,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3271,"endOffset":3483,"count":434},{"startOffset":3369,"endOffset":3400,"count":0},{"startOffset":3444,"endOffset":3476,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3489,"endOffset":3750,"count":0}],"isBlockCoverage":false}]},{"scriptId":"88","url":"internal/streams/transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8217,"count":1}],"isBlockCoverage":false},{"functionName":"afterTransform","ranges":[{"startOffset":4032,"endOffset":4550,"count":0}],"isBlockCoverage":false},{"functionName":"Transform","ranges":[{"startOffset":4553,"endOffset":5382,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":5384,"endOffset":5596,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5691,"endOffset":5741,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5838,"endOffset":5890,"count":0}],"isBlockCoverage":false},{"functionName":"Transform.push","ranges":[{"startOffset":5988,"endOffset":6124,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._transform","ranges":[{"startOffset":6607,"endOffset":6696,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._write","ranges":[{"startOffset":6728,"endOffset":7067,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._read","ranges":[{"startOffset":7239,"endOffset":7613,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._destroy","ranges":[{"startOffset":7648,"endOffset":7745,"count":0}],"isBlockCoverage":false},{"functionName":"done","ranges":[{"startOffset":7749,"endOffset":8216,"count":0}],"isBlockCoverage":false}]},{"scriptId":"89","url":"internal/streams/passthrough.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1762,"count":1}],"isBlockCoverage":false},{"functionName":"PassThrough","ranges":[{"startOffset":1529,"endOffset":1671,"count":0}],"isBlockCoverage":false},{"functionName":"PassThrough._transform","ranges":[{"startOffset":1708,"endOffset":1760,"count":0}],"isBlockCoverage":false}]},{"scriptId":"90","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1},{"startOffset":473,"endOffset":550,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":508,"endOffset":546,"count":0}],"isBlockCoverage":false}]},{"scriptId":"92","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/wrapper.mjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":323,"count":1}],"isBlockCoverage":true}]},{"scriptId":"93","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4076,"count":1}],"isBlockCoverage":true},{"functionName":"persistNode","ranges":[{"startOffset":284,"endOffset":618,"count":27}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":620,"endOffset":2047,"count":181},{"startOffset":671,"endOffset":735,"count":0},{"startOffset":927,"endOffset":944,"count":154},{"startOffset":944,"endOffset":2046,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":856,"endOffset":904,"count":504}],"isBlockCoverage":true},{"functionName":"handleError","ranges":[{"startOffset":1172,"endOffset":1445,"count":27},{"startOffset":1369,"endOffset":1444,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1601,"endOffset":1639,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1669,"endOffset":1760,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1844,"endOffset":1904,"count":50}],"isBlockCoverage":true},{"functionName":"node.close","ranges":[{"startOffset":1923,"endOffset":1991,"count":27}],"isBlockCoverage":true},{"functionName":"canhazdb","ranges":[{"startOffset":2049,"endOffset":4049,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2491,"endOffset":2577,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2673,"endOffset":2727,"count":0}],"isBlockCoverage":false},{"functionName":"syncNodesInfo","ranges":[{"startOffset":2733,"endOffset":3334,"count":7},{"startOffset":2785,"endOffset":2806,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2834,"endOffset":3261,"count":27},{"startOffset":3148,"endOffset":3173,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2977,"endOffset":3057,"count":127}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3373,"endOffset":3514,"count":732}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3428,"endOffset":3450,"count":3272}],"isBlockCoverage":true},{"functionName":"context.close","ranges":[{"startOffset":3536,"endOffset":3813,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3700,"endOffset":3742,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3980,"endOffset":4026,"count":17}],"isBlockCoverage":true}]},{"scriptId":"94","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/prepareOptions.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1328,"count":1}],"isBlockCoverage":true},{"functionName":"prepareOptions","ranges":[{"startOffset":91,"endOffset":1295,"count":7},{"startOffset":201,"endOffset":206,"count":0},{"startOffset":254,"endOffset":287,"count":0},{"startOffset":288,"endOffset":304,"count":0},{"startOffset":378,"endOffset":622,"count":0},{"startOffset":763,"endOffset":1152,"count":0},{"startOffset":1205,"endOffset":1273,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":575,"endOffset":616,"count":0}],"isBlockCoverage":false}]},{"scriptId":"95","url":"dns.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9368,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":2019,"endOffset":2220,"count":30},{"startOffset":2066,"endOffset":2146,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupall","ranges":[{"startOffset":2223,"endOffset":2587,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2658,"endOffset":4319,"count":30},{"startOffset":2854,"endOffset":2927,"count":0},{"startOffset":2968,"endOffset":3013,"count":0},{"startOffset":3055,"endOffset":3106,"count":0},{"startOffset":3339,"endOffset":3378,"count":0},{"startOffset":3450,"endOffset":3658,"count":0},{"startOffset":3721,"endOffset":3937,"count":0},{"startOffset":4079,"endOffset":4092,"count":0},{"startOffset":4207,"endOffset":4303,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupservice","ranges":[{"startOffset":4448,"endOffset":4629,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":4632,"endOffset":5263,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":5401,"endOffset":5667,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":5669,"endOffset":6415,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":5704,"endOffset":6334,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":7404,"endOffset":7865,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolverSetServers","ranges":[{"startOffset":7867,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9174,"endOffset":9359,"count":2},{"startOffset":9211,"endOffset":9330,"count":1}],"isBlockCoverage":true}]},{"scriptId":"96","url":"internal/net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1694,"count":1}],"isBlockCoverage":false},{"functionName":"isIPv4","ranges":[{"startOffset":974,"endOffset":1022,"count":150}],"isBlockCoverage":true},{"functionName":"isIPv6","ranges":[{"startOffset":1024,"endOffset":1072,"count":90}],"isBlockCoverage":true},{"functionName":"isIP","ranges":[{"startOffset":1074,"endOffset":1160,"count":150},{"startOffset":1110,"endOffset":1119,"count":60},{"startOffset":1119,"endOffset":1137,"count":90},{"startOffset":1137,"endOffset":1146,"count":0},{"startOffset":1146,"endOffset":1159,"count":90}],"isBlockCoverage":true},{"functionName":"makeSyncWrite","ranges":[{"startOffset":1162,"endOffset":1576,"count":0}],"isBlockCoverage":false}]},{"scriptId":"97","url":"internal/dns/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4700,"count":1}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":610,"endOffset":770,"count":1}],"isBlockCoverage":true},{"functionName":"Resolver","ranges":[{"startOffset":848,"endOffset":977,"count":1}],"isBlockCoverage":true},{"functionName":"cancel","ranges":[{"startOffset":981,"endOffset":1022,"count":0}],"isBlockCoverage":false},{"functionName":"getServers","ranges":[{"startOffset":1026,"endOffset":1273,"count":0}],"isBlockCoverage":false},{"functionName":"setServers","ranges":[{"startOffset":1277,"endOffset":3072,"count":0}],"isBlockCoverage":false},{"functionName":"setLocalAddress","ranges":[{"startOffset":3076,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultResolver","ranges":[{"startOffset":3703,"endOffset":3762,"count":1}],"isBlockCoverage":true},{"functionName":"setDefaultResolver","ranges":[{"startOffset":3764,"endOffset":3835,"count":0}],"isBlockCoverage":false},{"functionName":"bindDefaultResolver","ranges":[{"startOffset":3837,"endOffset":3978,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3907,"endOffset":3974,"count":30}],"isBlockCoverage":true},{"functionName":"validateHints","ranges":[{"startOffset":3980,"endOffset":4135,"count":30},{"startOffset":4075,"endOffset":4133,"count":0}],"isBlockCoverage":true},{"functionName":"emitInvalidHostnameWarning","ranges":[{"startOffset":4181,"endOffset":4531,"count":0}],"isBlockCoverage":false}]},{"scriptId":"98","url":"internal/dns/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6786,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":733,"endOffset":982,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupall","ranges":[{"startOffset":984,"endOffset":1359,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupPromise","ranges":[{"startOffset":1361,"endOffset":2205,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2207,"endOffset":2864,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupservice","ranges":[{"startOffset":2867,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupServicePromise","ranges":[{"startOffset":3052,"endOffset":3463,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":3465,"endOffset":3749,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":3752,"endOffset":4019,"count":0}],"isBlockCoverage":false},{"functionName":"createResolverPromise","ranges":[{"startOffset":4021,"endOffset":4489,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":4491,"endOffset":4786,"count":13}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":4526,"endOffset":4704,"count":0}],"isBlockCoverage":false},{"functionName":"Resolver","ranges":[{"startOffset":4905,"endOffset":5034,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":6261,"endOffset":6671,"count":0}],"isBlockCoverage":false}]},{"scriptId":"99","url":"os.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8688,"count":1}],"isBlockCoverage":false},{"functionName":"getCheckedFunction","ranges":[{"startOffset":1911,"endOffset":2152,"count":3}],"isBlockCoverage":true},{"functionName":"checkError","ranges":[{"startOffset":1970,"endOffset":2148,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease","ranges":[{"startOffset":2459,"endOffset":2472,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType","ranges":[{"startOffset":2521,"endOffset":2531,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion","ranges":[{"startOffset":2583,"endOffset":2596,"count":0}],"isBlockCoverage":false},{"functionName":"getFreeMem.","ranges":[{"startOffset":2631,"endOffset":2649,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname.","ranges":[{"startOffset":2684,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion.","ranges":[{"startOffset":2739,"endOffset":2759,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType.","ranges":[{"startOffset":2792,"endOffset":2809,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease.","ranges":[{"startOffset":2845,"endOffset":2865,"count":0}],"isBlockCoverage":false},{"functionName":"getHomeDirectory.","ranges":[{"startOffset":2905,"endOffset":2929,"count":0}],"isBlockCoverage":false},{"functionName":"getTotalMem.","ranges":[{"startOffset":2964,"endOffset":2983,"count":0}],"isBlockCoverage":false},{"functionName":"getUptime.","ranges":[{"startOffset":3016,"endOffset":3033,"count":0}],"isBlockCoverage":false},{"functionName":"loadavg","ranges":[{"startOffset":3171,"endOffset":3271,"count":0}],"isBlockCoverage":false},{"functionName":"cpus","ranges":[{"startOffset":3546,"endOffset":3958,"count":0}],"isBlockCoverage":false},{"functionName":"arch","ranges":[{"startOffset":3989,"endOffset":4031,"count":0}],"isBlockCoverage":false},{"functionName":"arch.","ranges":[{"startOffset":4058,"endOffset":4076,"count":0}],"isBlockCoverage":false},{"functionName":"platform","ranges":[{"startOffset":4108,"endOffset":4158,"count":0}],"isBlockCoverage":false},{"functionName":"platform.","ranges":[{"startOffset":4189,"endOffset":4211,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir","ranges":[{"startOffset":4243,"endOffset":4760,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir.","ranges":[{"startOffset":4789,"endOffset":4803,"count":0}],"isBlockCoverage":false},{"functionName":"endianness","ranges":[{"startOffset":4840,"endOffset":4887,"count":0}],"isBlockCoverage":false},{"functionName":"endianness.","ranges":[{"startOffset":4920,"endOffset":4937,"count":0}],"isBlockCoverage":false},{"functionName":"countBinaryOnes","ranges":[{"startOffset":5025,"endOffset":5278,"count":0}],"isBlockCoverage":false},{"functionName":"getCIDR","ranges":[{"startOffset":5280,"endOffset":6000,"count":0}],"isBlockCoverage":false},{"functionName":"networkInterfaces","ranges":[{"startOffset":6204,"endOffset":6881,"count":0}],"isBlockCoverage":false},{"functionName":"setPriority","ranges":[{"startOffset":6961,"endOffset":7250,"count":0}],"isBlockCoverage":false},{"functionName":"getPriority","ranges":[{"startOffset":7304,"endOffset":7559,"count":0}],"isBlockCoverage":false},{"functionName":"userInfo","ranges":[{"startOffset":7869,"endOffset":8095,"count":0}],"isBlockCoverage":false}]},{"scriptId":"100","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3290,"count":1}],"isBlockCoverage":true},{"functionName":"formatColor","ranges":[{"startOffset":614,"endOffset":938,"count":0}],"isBlockCoverage":false},{"functionName":"padStartAll","ranges":[{"startOffset":940,"endOffset":1063,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":1090,"endOffset":2704,"count":10}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1152,"endOffset":2701,"count":34},{"startOffset":1249,"endOffset":1270,"count":7},{"startOffset":1270,"endOffset":1321,"count":27},{"startOffset":1321,"endOffset":2487,"count":0},{"startOffset":2487,"endOffset":2602,"count":27},{"startOffset":2609,"endOffset":2696,"count":0}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":2706,"endOffset":3035,"count":2}],"isBlockCoverage":true},{"functionName":"log.setLogger","ranges":[{"startOffset":3053,"endOffset":3091,"count":0}],"isBlockCoverage":false},{"functionName":"log.setLogLevel","ranges":[{"startOffset":3112,"endOffset":3213,"count":1}],"isBlockCoverage":true}]},{"scriptId":"101","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/createHandler.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1181,"count":1}],"isBlockCoverage":true},{"functionName":"createHandler","ranges":[{"startOffset":193,"endOffset":1149,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":319,"endOffset":1145,"count":37},{"startOffset":669,"endOffset":747,"count":0},{"startOffset":793,"endOffset":805,"count":33},{"startOffset":806,"endOffset":818,"count":4},{"startOffset":919,"endOffset":997,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1075,"endOffset":1139,"count":0}],"isBlockCoverage":false}]},{"scriptId":"102","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/waitUntil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":63,"endOffset":190,"count":732},{"startOffset":121,"endOffset":179,"count":725},{"startOffset":179,"endOffset":189,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":138,"endOffset":161,"count":725}],"isBlockCoverage":true}]},{"scriptId":"103","url":"util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8146,"count":1}],"isBlockCoverage":false},{"functionName":"isBoolean","ranges":[{"startOffset":2097,"endOffset":2159,"count":0}],"isBlockCoverage":false},{"functionName":"isNull","ranges":[{"startOffset":2161,"endOffset":2208,"count":0}],"isBlockCoverage":false},{"functionName":"isNullOrUndefined","ranges":[{"startOffset":2210,"endOffset":2289,"count":0}],"isBlockCoverage":false},{"functionName":"isNumber","ranges":[{"startOffset":2291,"endOffset":2351,"count":0}],"isBlockCoverage":false},{"functionName":"isString","ranges":[{"startOffset":2353,"endOffset":2413,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbol","ranges":[{"startOffset":2415,"endOffset":2475,"count":0}],"isBlockCoverage":false},{"functionName":"isUndefined","ranges":[{"startOffset":2477,"endOffset":2534,"count":0}],"isBlockCoverage":false},{"functionName":"isObject","ranges":[{"startOffset":2536,"endOffset":2612,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":2614,"endOffset":2717,"count":0}],"isBlockCoverage":false},{"functionName":"isFunction","ranges":[{"startOffset":2719,"endOffset":2783,"count":0}],"isBlockCoverage":false},{"functionName":"isPrimitive","ranges":[{"startOffset":2785,"endOffset":2904,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":2906,"endOffset":2965,"count":0}],"isBlockCoverage":false},{"functionName":"timestamp","ranges":[{"startOffset":3104,"endOffset":3334,"count":0}],"isBlockCoverage":false},{"functionName":"log","ranges":[{"startOffset":3420,"endOffset":3573,"count":0}],"isBlockCoverage":false},{"functionName":"inherits","ranges":[{"startOffset":4309,"endOffset":4925,"count":0}],"isBlockCoverage":false},{"functionName":"_extend","ranges":[{"startOffset":4927,"endOffset":5215,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5263,"endOffset":5688,"count":0}],"isBlockCoverage":false},{"functionName":"callbackify","ranges":[{"startOffset":5692,"endOffset":7073,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7075,"endOffset":7291,"count":0}],"isBlockCoverage":false},{"functionName":"isDeepStrictEqual","ranges":[{"startOffset":7692,"endOffset":7897,"count":0}],"isBlockCoverage":false}]},{"scriptId":"104","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/replaceErrors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":283,"count":1}],"isBlockCoverage":true},{"functionName":"replaceErrors","ranges":[{"startOffset":0,"endOffset":251,"count":216},{"startOffset":68,"endOffset":232,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":139,"endOffset":207,"count":0}],"isBlockCoverage":false}]},{"scriptId":"105","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":578,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":307,"endOffset":546,"count":37},{"startOffset":434,"endOffset":451,"count":0}],"isBlockCoverage":true}]},{"scriptId":"106","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/logslot/formatDate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":146,"count":1}],"isBlockCoverage":true},{"functionName":"formatDate","ranges":[{"startOffset":0,"endOffset":117,"count":34}],"isBlockCoverage":true}]},{"scriptId":"107","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1239,"count":1}],"isBlockCoverage":true},{"functionName":"createTest","ranges":[{"startOffset":131,"endOffset":187,"count":3}],"isBlockCoverage":true},{"functionName":"createTest.skip","ranges":[{"startOffset":206,"endOffset":270,"count":0}],"isBlockCoverage":false},{"functionName":"createTest.only","ranges":[{"startOffset":290,"endOffset":354,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":444,"endOffset":1236,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":513,"endOffset":710,"count":3},{"startOffset":548,"endOffset":570,"count":0},{"startOffset":572,"endOffset":603,"count":0},{"startOffset":634,"endOffset":665,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":800,"endOffset":1232,"count":1},{"startOffset":895,"endOffset":935,"count":0},{"startOffset":982,"endOffset":1078,"count":0},{"startOffset":1115,"endOffset":1228,"count":0}],"isBlockCoverage":true}]},{"scriptId":"108","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/colorette/index.cjs","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2168,"count":1}],"isBlockCoverage":true},{"functionName":"raw","ranges":[{"startOffset":255,"endOffset":468,"count":41}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":299,"endOffset":468,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":483,"endOffset":626,"count":39}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":692,"endOffset":705,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":714,"endOffset":742,"count":0}],"isBlockCoverage":false}]},{"scriptId":"109","url":"tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5057,"count":1}],"isBlockCoverage":false},{"functionName":"isatty","ranges":[{"startOffset":1534,"endOffset":1640,"count":2}],"isBlockCoverage":true},{"functionName":"ReadStream","ranges":[{"startOffset":1642,"endOffset":2126,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.setRawMode","ranges":[{"startOffset":2275,"endOffset":2491,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":2494,"endOffset":3460,"count":2},{"startOffset":2563,"endOffset":2590,"count":0},{"startOffset":2627,"endOffset":2656,"count":0},{"startOffset":2745,"endOffset":2790,"count":0}],"isBlockCoverage":true},{"functionName":"WriteStream._refreshSize","ranges":[{"startOffset":3751,"endOffset":4179,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.cursorTo","ranges":[{"startOffset":4235,"endOffset":4375,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.moveCursor","ranges":[{"startOffset":4412,"endOffset":4558,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearLine","ranges":[{"startOffset":4594,"endOffset":4733,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearScreenDown","ranges":[{"startOffset":4775,"endOffset":4910,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.getWindowSize","ranges":[{"startOffset":4950,"endOffset":5000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"110","url":"net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47106,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1448,"endOffset":1473,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3388,"endOffset":3406,"count":0}],"isBlockCoverage":false},{"functionName":"getFlags","ranges":[{"startOffset":3408,"endOffset":3502,"count":7},{"startOffset":3465,"endOffset":3495,"count":0}],"isBlockCoverage":true},{"functionName":"createHandle","ranges":[{"startOffset":3504,"endOffset":3885,"count":0}],"isBlockCoverage":false},{"functionName":"getNewAsyncId","ranges":[{"startOffset":3888,"endOffset":4026,"count":191},{"startOffset":3983,"endOffset":4001,"count":0}],"isBlockCoverage":true},{"functionName":"isPipeName","ranges":[{"startOffset":4029,"endOffset":4112,"count":7},{"startOffset":4085,"endOffset":4109,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":4114,"endOffset":4218,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":4441,"endOffset":4732,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeArgs","ranges":[{"startOffset":5227,"endOffset":5953,"count":67},{"startOffset":5295,"endOffset":5376,"count":0},{"startOffset":5453,"endOffset":5469,"count":60},{"startOffset":5471,"endOffset":5524,"count":60},{"startOffset":5524,"endOffset":5772,"count":7},{"startOffset":5552,"endOffset":5607,"count":0},{"startOffset":5699,"endOffset":5729,"count":0},{"startOffset":5731,"endOffset":5768,"count":0},{"startOffset":5846,"endOffset":5868,"count":7},{"startOffset":5868,"endOffset":5900,"count":60}],"isBlockCoverage":true},{"functionName":"initSocketHandle","ranges":[{"startOffset":6025,"endOffset":6628,"count":92},{"startOffset":6381,"endOffset":6622,"count":0}],"isBlockCoverage":true},{"functionName":"Socket","ranges":[{"startOffset":6763,"endOffset":10585,"count":92},{"startOffset":6823,"endOffset":6850,"count":0},{"startOffset":7400,"endOffset":7426,"count":0},{"startOffset":8078,"endOffset":9811,"count":0},{"startOffset":10167,"endOffset":10432,"count":90},{"startOffset":10200,"endOffset":10369,"count":0},{"startOffset":10401,"endOffset":10428,"count":30}],"isBlockCoverage":true},{"functionName":"_unrefTimer","ranges":[{"startOffset":10758,"endOffset":10888,"count":373},{"startOffset":10831,"endOffset":10886,"count":512},{"startOffset":10860,"endOffset":10882,"count":139}],"isBlockCoverage":true},{"functionName":"Socket._final","ranges":[{"startOffset":11008,"endOffset":11656,"count":30},{"startOffset":11122,"endOffset":11223,"count":0},{"startOffset":11250,"endOffset":11262,"count":0},{"startOffset":11540,"endOffset":11574,"count":0},{"startOffset":11601,"endOffset":11654,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11196,"endOffset":11217,"count":0}],"isBlockCoverage":false},{"functionName":"afterShutdown","ranges":[{"startOffset":11660,"endOffset":12039,"count":30},{"startOffset":11913,"endOffset":11920,"count":0},{"startOffset":11943,"endOffset":11964,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterFIN","ranges":[{"startOffset":12246,"endOffset":12702,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._onTimeout","ranges":[{"startOffset":12784,"endOffset":13288,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setNoDelay","ranges":[{"startOffset":13322,"endOffset":13771,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setKeepAlive","ranges":[{"startOffset":13807,"endOffset":14054,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":14085,"endOffset":14129,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14196,"endOffset":14240,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14300,"endOffset":14356,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14447,"endOffset":14762,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14831,"endOffset":14911,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14979,"endOffset":15024,"count":174}],"isBlockCoverage":true},{"functionName":"tryReadStart","ranges":[{"startOffset":15031,"endOffset":15277,"count":60},{"startOffset":15231,"endOffset":15275,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._read","ranges":[{"startOffset":15369,"endOffset":15598,"count":192},{"startOffset":15424,"endOffset":15440,"count":162},{"startOffset":15442,"endOffset":15534,"count":30},{"startOffset":15534,"endOffset":15596,"count":162},{"startOffset":15567,"endOffset":15596,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15509,"endOffset":15528,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.end","ranges":[{"startOffset":15625,"endOffset":15777,"count":30}],"isBlockCoverage":true},{"functionName":"Socket.pause","ranges":[{"startOffset":15806,"endOffset":16140,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.resume","ranges":[{"startOffset":16170,"endOffset":16354,"count":60},{"startOffset":16203,"endOffset":16222,"count":0},{"startOffset":16223,"endOffset":16238,"count":0},{"startOffset":16239,"endOffset":16269,"count":0},{"startOffset":16271,"endOffset":16300,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.read","ranges":[{"startOffset":16382,"endOffset":16568,"count":312},{"startOffset":16416,"endOffset":16435,"count":0},{"startOffset":16436,"endOffset":16451,"count":0},{"startOffset":16452,"endOffset":16482,"count":0},{"startOffset":16484,"endOffset":16513,"count":0}],"isBlockCoverage":true},{"functionName":"onReadableStreamEnd","ranges":[{"startOffset":16615,"endOffset":16900,"count":30},{"startOffset":16749,"endOffset":16806,"count":0},{"startOffset":16810,"endOffset":16898,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.destroySoon","ranges":[{"startOffset":16934,"endOffset":17081,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._destroy","ranges":[{"startOffset":17113,"endOffset":18067,"count":90},{"startOffset":17236,"endOffset":17272,"count":120},{"startOffset":17410,"endOffset":17416,"count":0},{"startOffset":17817,"endOffset":17888,"count":0},{"startOffset":17910,"endOffset":18065,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17629,"endOffset":17708,"count":90}],"isBlockCoverage":true},{"functionName":"Socket._getpeername","ranges":[{"startOffset":18102,"endOffset":18393,"count":0}],"isBlockCoverage":false},{"functionName":"protoGetter","ranges":[{"startOffset":18396,"endOffset":18556,"count":8}],"isBlockCoverage":true},{"functionName":"bytesRead","ranges":[{"startOffset":18583,"endOffset":18674,"count":0}],"isBlockCoverage":false},{"functionName":"remoteAddress","ranges":[{"startOffset":18707,"endOffset":18773,"count":0}],"isBlockCoverage":false},{"functionName":"remoteFamily","ranges":[{"startOffset":18805,"endOffset":18869,"count":0}],"isBlockCoverage":false},{"functionName":"remotePort","ranges":[{"startOffset":18899,"endOffset":18959,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._getsockname","ranges":[{"startOffset":18996,"endOffset":19281,"count":0}],"isBlockCoverage":false},{"functionName":"localAddress","ranges":[{"startOffset":19313,"endOffset":19378,"count":0}],"isBlockCoverage":false},{"functionName":"localPort","ranges":[{"startOffset":19408,"endOffset":19467,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.","ranges":[{"startOffset":19509,"endOffset":19556,"count":72}],"isBlockCoverage":true},{"functionName":"Socket._writeGeneric","ranges":[{"startOffset":19592,"endOffset":20353,"count":109},{"startOffset":19814,"endOffset":20007,"count":0},{"startOffset":20088,"endOffset":20144,"count":0},{"startOffset":20198,"endOffset":20234,"count":2},{"startOffset":20234,"endOffset":20291,"count":107},{"startOffset":20313,"endOffset":20351,"count":72}],"isBlockCoverage":true},{"functionName":"connect","ranges":[{"startOffset":19909,"endOffset":19989,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._writev","ranges":[{"startOffset":20384,"endOffset":20452,"count":2}],"isBlockCoverage":true},{"functionName":"Socket._write","ranges":[{"startOffset":20482,"endOffset":20563,"count":107}],"isBlockCoverage":true},{"functionName":"_bytesDispatched","ranges":[{"startOffset":20756,"endOffset":20860,"count":0}],"isBlockCoverage":false},{"functionName":"bytesWritten","ranges":[{"startOffset":20892,"endOffset":21821,"count":0}],"isBlockCoverage":false},{"functionName":"checkBindError","ranges":[{"startOffset":21826,"endOffset":22625,"count":0}],"isBlockCoverage":false},{"functionName":"internalConnect","ranges":[{"startOffset":22628,"endOffset":24333,"count":30},{"startOffset":22883,"endOffset":23509,"count":0},{"startOffset":23829,"endOffset":23893,"count":0},{"startOffset":23897,"endOffset":24070,"count":0},{"startOffset":24083,"endOffset":24331,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.connect","ranges":[{"startOffset":24363,"endOffset":25667,"count":30},{"startOffset":24707,"endOffset":24739,"count":0},{"startOffset":24741,"endOffset":24772,"count":0},{"startOffset":24933,"endOffset":24969,"count":0},{"startOffset":24993,"endOffset":25077,"count":0},{"startOffset":25181,"endOffset":25315,"count":0},{"startOffset":25459,"endOffset":25602,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndConnect","ranges":[{"startOffset":25671,"endOffset":28698,"count":30},{"startOffset":25789,"endOffset":25803,"count":0},{"startOffset":25851,"endOffset":25873,"count":0},{"startOffset":25875,"endOffset":25932,"count":0},{"startOffset":25950,"endOffset":25982,"count":0},{"startOffset":25984,"endOffset":26067,"count":0},{"startOffset":26139,"endOffset":26166,"count":0},{"startOffset":26168,"endOffset":26294,"count":0},{"startOffset":26438,"endOffset":26742,"count":0},{"startOffset":26765,"endOffset":26804,"count":0},{"startOffset":26810,"endOffset":26922,"count":0},{"startOffset":26950,"endOffset":26971,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":26512,"endOffset":26724,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":27405,"endOffset":28694,"count":30}],"isBlockCoverage":true},{"functionName":"emitLookup","ranges":[{"startOffset":27444,"endOffset":28688,"count":30},{"startOffset":27732,"endOffset":27739,"count":0},{"startOffset":27756,"endOffset":28051,"count":0},{"startOffset":28072,"endOffset":28180,"count":0},{"startOffset":28208,"endOffset":28228,"count":0},{"startOffset":28230,"endOffset":28469,"count":0}],"isBlockCoverage":true},{"functionName":"connectErrorNT","ranges":[{"startOffset":28701,"endOffset":28760,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":28786,"endOffset":28973,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":29002,"endOffset":29195,"count":0}],"isBlockCoverage":false},{"functionName":"afterConnect","ranges":[{"startOffset":29199,"endOffset":30447,"count":30},{"startOffset":29369,"endOffset":29386,"count":0},{"startOffset":29552,"endOffset":29601,"count":0},{"startOffset":29638,"endOffset":29663,"count":0},{"startOffset":29919,"endOffset":30445,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":30450,"endOffset":31779,"count":7},{"startOffset":30534,"endOffset":30581,"count":0},{"startOffset":30648,"endOffset":30752,"count":0},{"startOffset":30953,"endOffset":31030,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":31123,"endOffset":31230,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":31363,"endOffset":31397,"count":0}],"isBlockCoverage":false},{"functionName":"toNumber","ranges":[{"startOffset":31890,"endOffset":31955,"count":14},{"startOffset":31945,"endOffset":31952,"count":0}],"isBlockCoverage":true},{"functionName":"createServerHandle","ranges":[{"startOffset":32023,"endOffset":33475,"count":7},{"startOffset":32239,"endOffset":32249,"count":0},{"startOffset":32251,"endOffset":32562,"count":0},{"startOffset":32584,"endOffset":32605,"count":0},{"startOffset":32607,"endOffset":32857,"count":0},{"startOffset":32945,"endOffset":32952,"count":0},{"startOffset":32953,"endOffset":32961,"count":0},{"startOffset":32994,"endOffset":33002,"count":0},{"startOffset":33023,"endOffset":33260,"count":0},{"startOffset":33344,"endOffset":33397,"count":0},{"startOffset":33414,"endOffset":33455,"count":0}],"isBlockCoverage":true},{"functionName":"setupListenHandle","ranges":[{"startOffset":33477,"endOffset":35828,"count":7},{"startOffset":33782,"endOffset":33842,"count":0},{"startOffset":34154,"endOffset":34246,"count":0},{"startOffset":34360,"endOffset":34425,"count":0},{"startOffset":34461,"endOffset":34608,"count":0},{"startOffset":35043,"endOffset":35401,"count":0},{"startOffset":35631,"endOffset":35644,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":35895,"endOffset":35957,"count":0}],"isBlockCoverage":false},{"functionName":"emitListeningNT","ranges":[{"startOffset":35960,"endOffset":36075,"count":7}],"isBlockCoverage":true},{"functionName":"listenInCluster","ranges":[{"startOffset":36078,"endOffset":37296,"count":7},{"startOffset":36254,"endOffset":36283,"count":1},{"startOffset":36308,"endOffset":36320,"count":0},{"startOffset":36566,"endOffset":37295,"count":0}],"isBlockCoverage":true},{"functionName":"listenOnMasterHandle","ranges":[{"startOffset":36811,"endOffset":37294,"count":0}],"isBlockCoverage":false},{"functionName":"Server.listen","ranges":[{"startOffset":37325,"endOffset":40823,"count":7},{"startOffset":37467,"endOffset":37515,"count":0},{"startOffset":37536,"endOffset":37573,"count":0},{"startOffset":37692,"endOffset":37702,"count":0},{"startOffset":37736,"endOffset":37746,"count":0},{"startOffset":37979,"endOffset":38142,"count":0},{"startOffset":38247,"endOffset":38265,"count":0},{"startOffset":38267,"endOffset":38363,"count":0},{"startOffset":38721,"endOffset":38741,"count":0},{"startOffset":38775,"endOffset":38802,"count":0},{"startOffset":39026,"endOffset":39061,"count":0},{"startOffset":39232,"endOffset":39357,"count":0},{"startOffset":39630,"endOffset":39798,"count":0},{"startOffset":39800,"endOffset":40621,"count":0},{"startOffset":40624,"endOffset":40822,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndListen","ranges":[{"startOffset":40826,"endOffset":41238,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":41301,"endOffset":41344,"count":0}],"isBlockCoverage":false},{"functionName":"Server.address","ranges":[{"startOffset":41419,"endOffset":41708,"count":0}],"isBlockCoverage":false},{"functionName":"onconnection","ranges":[{"startOffset":41711,"endOffset":42372,"count":30},{"startOffset":41852,"endOffset":41924,"count":0},{"startOffset":41952,"endOffset":41995,"count":0},{"startOffset":41997,"endOffset":42040,"count":0}],"isBlockCoverage":true},{"functionName":"Server.getConnections","ranges":[{"startOffset":42409,"endOffset":43162,"count":0}],"isBlockCoverage":false},{"functionName":"Server.close","ranges":[{"startOffset":43191,"endOffset":44058,"count":7},{"startOffset":43238,"endOffset":43413,"count":0},{"startOffset":43519,"endOffset":43997,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":43290,"endOffset":43358,"count":0}],"isBlockCoverage":false},{"functionName":"onWorkerClose","ranges":[{"startOffset":43584,"endOffset":43693,"count":0}],"isBlockCoverage":false},{"functionName":"Server._emitCloseIfDrained","ranges":[{"startOffset":44100,"endOffset":44486,"count":37},{"startOffset":44172,"endOffset":44192,"count":7},{"startOffset":44194,"endOffset":44306,"count":30},{"startOffset":44306,"endOffset":44485,"count":7}],"isBlockCoverage":true},{"functionName":"emitCloseNT","ranges":[{"startOffset":44490,"endOffset":44573,"count":7}],"isBlockCoverage":true},{"functionName":"Server.","ranges":[{"startOffset":44632,"endOffset":44794,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":44997,"endOffset":45033,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":45037,"endOffset":45078,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":45138,"endOffset":45169,"count":2729}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":45173,"endOffset":45209,"count":182}],"isBlockCoverage":true},{"functionName":"Server._setupWorker","ranges":[{"startOffset":45247,"endOffset":45473,"count":0}],"isBlockCoverage":false},{"functionName":"Server.ref","ranges":[{"startOffset":45499,"endOffset":45597,"count":0}],"isBlockCoverage":false},{"functionName":"Server.unref","ranges":[{"startOffset":45625,"endOffset":45724,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":45866,"endOffset":46535,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":46574,"endOffset":46815,"count":0}],"isBlockCoverage":false}]},{"scriptId":"111","url":"internal/stream_base_commons.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7120,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":987,"endOffset":1012,"count":1}],"isBlockCoverage":true},{"functionName":"handleWriteReq","ranges":[{"startOffset":1131,"endOffset":1986,"count":107},{"startOffset":1231,"endOffset":1398,"count":0},{"startOffset":1403,"endOffset":1417,"count":0},{"startOffset":1422,"endOffset":1486,"count":0},{"startOffset":1574,"endOffset":1636,"count":0},{"startOffset":1641,"endOffset":1653,"count":0},{"startOffset":1658,"endOffset":1671,"count":0},{"startOffset":1676,"endOffset":1691,"count":0},{"startOffset":1696,"endOffset":1760,"count":0},{"startOffset":1765,"endOffset":1980,"count":0}],"isBlockCoverage":true},{"functionName":"onWriteComplete","ranges":[{"startOffset":1988,"endOffset":2498,"count":72},{"startOffset":2141,"endOffset":2230,"count":0},{"startOffset":2250,"endOffset":2366,"count":0}],"isBlockCoverage":true},{"functionName":"createWriteWrap","ranges":[{"startOffset":2500,"endOffset":2701,"count":109}],"isBlockCoverage":true},{"functionName":"writevGeneric","ranges":[{"startOffset":2703,"endOffset":3344,"count":2},{"startOffset":2860,"endOffset":2957,"count":0},{"startOffset":3049,"endOffset":3162,"count":4}],"isBlockCoverage":true},{"functionName":"writeGeneric","ranges":[{"startOffset":3346,"endOffset":3553,"count":107}],"isBlockCoverage":true},{"functionName":"afterWriteDispatched","ranges":[{"startOffset":3555,"endOffset":3864,"count":109},{"startOffset":3728,"endOffset":3793,"count":0},{"startOffset":3813,"endOffset":3828,"count":37},{"startOffset":3828,"endOffset":3862,"count":72}],"isBlockCoverage":true},{"functionName":"onStreamRead","ranges":[{"startOffset":3866,"endOffset":5991,"count":102},{"startOffset":4060,"endOffset":4080,"count":72},{"startOffset":4082,"endOffset":4818,"count":72},{"startOffset":4167,"endOffset":4426,"count":0},{"startOffset":4610,"endOffset":4797,"count":0},{"startOffset":4818,"endOffset":4839,"count":30},{"startOffset":4839,"endOffset":4856,"count":0},{"startOffset":4856,"endOffset":4882,"count":30},{"startOffset":4882,"endOffset":5071,"count":0},{"startOffset":5071,"endOffset":5156,"count":30},{"startOffset":5156,"endOffset":5223,"count":0},{"startOffset":5223,"endOffset":5989,"count":30},{"startOffset":5268,"endOffset":5308,"count":0},{"startOffset":5594,"endOffset":5801,"count":0}],"isBlockCoverage":true},{"functionName":"setStreamTimeout","ranges":[{"startOffset":5993,"endOffset":6895,"count":60},{"startOffset":6064,"endOffset":6076,"count":0},{"startOffset":6382,"endOffset":6567,"count":30},{"startOffset":6468,"endOffset":6509,"count":0},{"startOffset":6567,"endOffset":6878,"count":30},{"startOffset":6672,"endOffset":6703,"count":0},{"startOffset":6789,"endOffset":6830,"count":0}],"isBlockCoverage":true}]},{"scriptId":"112","url":"internal/dtrace.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":568,"count":1}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_REQUEST","ranges":[{"startOffset":97,"endOffset":105,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_RESPONSE","ranges":[{"startOffset":139,"endOffset":147,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_REQUEST","ranges":[{"startOffset":180,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_RESPONSE","ranges":[{"startOffset":222,"endOffset":230,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_NET_SERVER_CONNECTION","ranges":[{"startOffset":265,"endOffset":273,"count":30}],"isBlockCoverage":true},{"functionName":"DTRACE_NET_STREAM_END","ranges":[{"startOffset":301,"endOffset":309,"count":30}],"isBlockCoverage":true}]},{"scriptId":"113","url":"internal/tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6292,"count":1}],"isBlockCoverage":false},{"functionName":"warnOnDeactivatedColors","ranges":[{"startOffset":2451,"endOffset":2903,"count":0}],"isBlockCoverage":false},{"functionName":"getColorDepth","ranges":[{"startOffset":3061,"endOffset":5813,"count":34},{"startOffset":3265,"endOffset":3623,"count":0},{"startOffset":3964,"endOffset":3990,"count":0},{"startOffset":4028,"endOffset":4570,"count":0},{"startOffset":4588,"endOffset":4616,"count":0},{"startOffset":4632,"endOffset":4816,"count":0},{"startOffset":4851,"endOffset":4956,"count":0},{"startOffset":4992,"endOffset":5161,"count":0},{"startOffset":5166,"endOffset":5183,"count":0},{"startOffset":5188,"endOffset":5228,"count":0},{"startOffset":5233,"endOffset":5280,"count":0},{"startOffset":5322,"endOffset":5350,"count":0},{"startOffset":5380,"endOffset":5812,"count":0}],"isBlockCoverage":true},{"functionName":"hasColors","ranges":[{"startOffset":5815,"endOffset":6239,"count":0}],"isBlockCoverage":false}]},{"scriptId":"114","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/basictap/runner.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5423,"count":1}],"isBlockCoverage":true},{"functionName":"indent","ranges":[{"startOffset":154,"endOffset":297,"count":0}],"isBlockCoverage":false},{"functionName":"createLogger","ranges":[{"startOffset":299,"endOffset":468,"count":3}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":348,"endOffset":410,"count":24}],"isBlockCoverage":true},{"functionName":"getLogData","ranges":[{"startOffset":448,"endOffset":461,"count":3}],"isBlockCoverage":true},{"functionName":"runner","ranges":[{"startOffset":470,"endOffset":5396,"count":1},{"startOffset":615,"endOffset":619,"count":0}],"isBlockCoverage":true},{"functionName":"testRunner","ranges":[{"startOffset":858,"endOffset":4788,"count":3}],"isBlockCoverage":true},{"functionName":"createAssert","ranges":[{"startOffset":1181,"endOffset":2522,"count":54}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1264,"endOffset":2515,"count":21},{"startOffset":1465,"endOffset":1509,"count":0},{"startOffset":1770,"endOffset":1787,"count":0},{"startOffset":1802,"endOffset":2489,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":2528,"endOffset":3324,"count":21},{"startOffset":2603,"endOffset":2628,"count":18},{"startOffset":2628,"endOffset":2738,"count":3},{"startOffset":2738,"endOffset":3104,"count":0},{"startOffset":3104,"endOffset":3177,"count":3},{"startOffset":3177,"endOffset":3237,"count":0},{"startOffset":3237,"endOffset":3323,"count":3}],"isBlockCoverage":true},{"functionName":"plan","ranges":[{"startOffset":3348,"endOffset":3410,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3602,"endOffset":3650,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4972,"endOffset":5023,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5062,"endOffset":5070,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5095,"endOffset":5392,"count":1}],"isBlockCoverage":true}]},{"scriptId":"115","url":"assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30746,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadComparison","ranges":[{"startOffset":2200,"endOffset":2384,"count":0}],"isBlockCoverage":false},{"functionName":"escapeFn","ranges":[{"startOffset":2964,"endOffset":2996,"count":0}],"isBlockCoverage":false},{"functionName":"innerFail","ranges":[{"startOffset":3550,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"fail","ranges":[{"startOffset":3847,"endOffset":4826,"count":0}],"isBlockCoverage":false},{"functionName":"findColumn","ranges":[{"startOffset":4942,"endOffset":5882,"count":0}],"isBlockCoverage":false},{"functionName":"getCode","ranges":[{"startOffset":5884,"endOffset":7528,"count":0}],"isBlockCoverage":false},{"functionName":"parseCode","ranges":[{"startOffset":7530,"endOffset":9132,"count":0}],"isBlockCoverage":false},{"functionName":"getErrMessage","ranges":[{"startOffset":9134,"endOffset":11930,"count":0}],"isBlockCoverage":false},{"functionName":"innerOk","ranges":[{"startOffset":11932,"endOffset":12539,"count":4},{"startOffset":11993,"endOffset":12537,"count":0}],"isBlockCoverage":true},{"functionName":"ok","ranges":[{"startOffset":12672,"endOffset":12733,"count":4}],"isBlockCoverage":true},{"functionName":"equal","ranges":[{"startOffset":12992,"endOffset":13363,"count":0}],"isBlockCoverage":false},{"functionName":"notEqual","ranges":[{"startOffset":13582,"endOffset":13957,"count":0}],"isBlockCoverage":false},{"functionName":"deepEqual","ranges":[{"startOffset":14157,"endOffset":14521,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepEqual","ranges":[{"startOffset":14727,"endOffset":15099,"count":0}],"isBlockCoverage":false},{"functionName":"deepStrictEqual","ranges":[{"startOffset":15342,"endOffset":15730,"count":0}],"isBlockCoverage":false},{"functionName":"notDeepStrictEqual","ranges":[{"startOffset":15979,"endOffset":16375,"count":0}],"isBlockCoverage":false},{"functionName":"strictEqual","ranges":[{"startOffset":16580,"endOffset":16892,"count":17},{"startOffset":16658,"endOffset":16717,"count":0},{"startOffset":16753,"endOffset":16890,"count":0}],"isBlockCoverage":true},{"functionName":"notStrictEqual","ranges":[{"startOffset":17104,"endOffset":17424,"count":0}],"isBlockCoverage":false},{"functionName":"Comparison","ranges":[{"startOffset":17448,"endOffset":17821,"count":0}],"isBlockCoverage":false},{"functionName":"compareExceptionKey","ranges":[{"startOffset":17825,"endOffset":18542,"count":0}],"isBlockCoverage":false},{"functionName":"expectedException","ranges":[{"startOffset":18544,"endOffset":21902,"count":0}],"isBlockCoverage":false},{"functionName":"getActual","ranges":[{"startOffset":21904,"endOffset":22110,"count":0}],"isBlockCoverage":false},{"functionName":"checkIsPromise","ranges":[{"startOffset":22112,"endOffset":22476,"count":0}],"isBlockCoverage":false},{"functionName":"waitForActual","ranges":[{"startOffset":22478,"endOffset":23192,"count":0}],"isBlockCoverage":false},{"functionName":"expectsError","ranges":[{"startOffset":23194,"endOffset":24808,"count":0}],"isBlockCoverage":false},{"functionName":"hasMatchingError","ranges":[{"startOffset":24810,"endOffset":25407,"count":0}],"isBlockCoverage":false},{"functionName":"expectsNoError","ranges":[{"startOffset":25409,"endOffset":26059,"count":0}],"isBlockCoverage":false},{"functionName":"throws","ranges":[{"startOffset":26217,"endOffset":26311,"count":0}],"isBlockCoverage":false},{"functionName":"rejects","ranges":[{"startOffset":26490,"endOffset":26602,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotThrow","ranges":[{"startOffset":26764,"endOffset":26858,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotReject","ranges":[{"startOffset":27024,"endOffset":27136,"count":0}],"isBlockCoverage":false},{"functionName":"ifError","ranges":[{"startOffset":27264,"endOffset":28633,"count":0}],"isBlockCoverage":false},{"functionName":"internalMatch","ranges":[{"startOffset":28636,"endOffset":29708,"count":0}],"isBlockCoverage":false},{"functionName":"match","ranges":[{"startOffset":29904,"endOffset":29996,"count":0}],"isBlockCoverage":false},{"functionName":"doesNotMatch","ranges":[{"startOffset":30204,"endOffset":30310,"count":0}],"isBlockCoverage":false},{"functionName":"strict","ranges":[{"startOffset":30442,"endOffset":30511,"count":0}],"isBlockCoverage":false}]},{"scriptId":"116","url":"internal/assert/assertion_error.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":17019,"count":1}],"isBlockCoverage":false},{"functionName":"copyError","ranges":[{"startOffset":1418,"endOffset":1694,"count":0}],"isBlockCoverage":false},{"functionName":"inspectValue","ranges":[{"startOffset":1696,"endOffset":2303,"count":0}],"isBlockCoverage":false},{"functionName":"createErrDiff","ranges":[{"startOffset":2305,"endOffset":10859,"count":0}],"isBlockCoverage":false},{"functionName":"AssertionError","ranges":[{"startOffset":10900,"endOffset":15822,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":15826,"endOffset":15901,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":15905,"endOffset":16982,"count":0}],"isBlockCoverage":false}]},{"scriptId":"117","url":"internal/assert/calltracker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2344,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":395,"endOffset":422,"count":0}],"isBlockCoverage":false},{"functionName":"calls","ranges":[{"startOffset":426,"endOffset":1443,"count":0}],"isBlockCoverage":false},{"functionName":"report","ranges":[{"startOffset":1447,"endOffset":2078,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":2082,"endOffset":2310,"count":0}],"isBlockCoverage":false}]},{"scriptId":"118","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/concurrun/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1562,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":17,"endOffset":1561,"count":1},{"startOffset":112,"endOffset":187,"count":0},{"startOffset":234,"endOffset":240,"count":0}],"isBlockCoverage":true},{"functionName":"getRate","ranges":[{"startOffset":243,"endOffset":304,"count":9}],"isBlockCoverage":true},{"functionName":"runNext","ranges":[{"startOffset":400,"endOffset":879,"count":9}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":543,"endOffset":862,"count":9},{"startOffset":598,"endOffset":667,"count":0},{"startOffset":711,"endOffset":727,"count":4},{"startOffset":728,"endOffset":848,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":892,"endOffset":1558,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":923,"endOffset":1551,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1061,"endOffset":1515,"count":3},{"startOffset":1111,"endOffset":1178,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1225,"endOffset":1498,"count":3}],"isBlockCoverage":true}]},{"scriptId":"119","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/righto/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15767,"count":1},{"startOffset":137,"endOffset":159,"count":0},{"startOffset":15701,"endOffset":15741,"count":18}],"isBlockCoverage":true},{"functionName":"isRighto","ranges":[{"startOffset":162,"endOffset":265,"count":21},{"startOffset":219,"endOffset":262,"count":17}],"isBlockCoverage":true},{"functionName":"isThenable","ranges":[{"startOffset":267,"endOffset":354,"count":6},{"startOffset":336,"endOffset":351,"count":3}],"isBlockCoverage":true},{"functionName":"isResolvable","ranges":[{"startOffset":356,"endOffset":424,"count":6},{"startOffset":405,"endOffset":421,"count":3}],"isBlockCoverage":true},{"functionName":"isTake","ranges":[{"startOffset":426,"endOffset":505,"count":3},{"startOffset":484,"endOffset":502,"count":0}],"isBlockCoverage":true},{"functionName":"getCallLine","ranges":[{"startOffset":576,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"takeWrap","ranges":[{"startOffset":847,"endOffset":904,"count":0}],"isBlockCoverage":false},{"functionName":"take","ranges":[{"startOffset":906,"endOffset":1253,"count":0}],"isBlockCoverage":false},{"functionName":"resolveDependency","ranges":[{"startOffset":1255,"endOffset":1826,"count":3},{"startOffset":1319,"endOffset":1363,"count":0},{"startOffset":1421,"endOffset":1566,"count":0},{"startOffset":1567,"endOffset":1597,"count":0},{"startOffset":1598,"endOffset":1626,"count":0},{"startOffset":1627,"endOffset":1656,"count":0},{"startOffset":1662,"endOffset":1825,"count":0}],"isBlockCoverage":true},{"functionName":"traceGet","ranges":[{"startOffset":1828,"endOffset":2088,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2090,"endOffset":2393,"count":0}],"isBlockCoverage":false},{"functionName":"noOp","ranges":[{"startOffset":2406,"endOffset":2418,"count":0}],"isBlockCoverage":false},{"functionName":"proxy","ranges":[{"startOffset":2421,"endOffset":3114,"count":0}],"isBlockCoverage":false},{"functionName":"createIterator","ranges":[{"startOffset":3116,"endOffset":4145,"count":0}],"isBlockCoverage":false},{"functionName":"addTracing","ranges":[{"startOffset":4147,"endOffset":5488,"count":0}],"isBlockCoverage":false},{"functionName":"errorOut","ranges":[{"startOffset":5490,"endOffset":5766,"count":0}],"isBlockCoverage":false},{"functionName":"debugResolve","ranges":[{"startOffset":5768,"endOffset":6045,"count":0}],"isBlockCoverage":false},{"functionName":"resolveWithDependencies","ranges":[{"startOffset":6047,"endOffset":7514,"count":4},{"startOffset":6144,"endOffset":6346,"count":0},{"startOffset":6988,"endOffset":7042,"count":0},{"startOffset":7155,"endOffset":7191,"count":0},{"startOffset":7204,"endOffset":7249,"count":3},{"startOffset":7262,"endOffset":7316,"count":0},{"startOffset":7329,"endOffset":7392,"count":1},{"startOffset":7405,"endOffset":7496,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6381,"endOffset":6589,"count":6},{"startOffset":6422,"endOffset":6449,"count":3},{"startOffset":6450,"endOffset":6518,"count":0}],"isBlockCoverage":true},{"functionName":"complete","ranges":[{"startOffset":6601,"endOffset":6965,"count":4},{"startOffset":6644,"endOffset":6660,"count":0},{"startOffset":6661,"endOffset":6716,"count":0}],"isBlockCoverage":true},{"functionName":"resolveDependencies","ranges":[{"startOffset":7516,"endOffset":8287,"count":4},{"startOffset":7662,"endOffset":7697,"count":0},{"startOffset":8070,"endOffset":8285,"count":6},{"startOffset":8106,"endOffset":8125,"count":3},{"startOffset":8126,"endOffset":8285,"count":3}],"isBlockCoverage":true},{"functionName":"dependencyResolved","ranges":[{"startOffset":7703,"endOffset":8028,"count":6},{"startOffset":7776,"endOffset":7807,"count":0},{"startOffset":7826,"endOffset":7904,"count":0},{"startOffset":7974,"endOffset":8022,"count":4}],"isBlockCoverage":true},{"functionName":"resolver","ranges":[{"startOffset":8289,"endOffset":9506,"count":4},{"startOffset":8407,"endOffset":8439,"count":0},{"startOffset":8467,"endOffset":8570,"count":0},{"startOffset":8610,"endOffset":8673,"count":0},{"startOffset":8698,"endOffset":8784,"count":0},{"startOffset":8912,"endOffset":8951,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8813,"endOffset":8883,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8839,"endOffset":8876,"count":4}],"isBlockCoverage":true},{"functionName":"dependenciesResolved","ranges":[{"startOffset":8973,"endOffset":9285,"count":4},{"startOffset":9046,"endOffset":9235,"count":0}],"isBlockCoverage":true},{"functionName":"thenMethod","ranges":[{"startOffset":9509,"endOffset":9685,"count":0}],"isBlockCoverage":false},{"functionName":"catchMethod","ranges":[{"startOffset":9687,"endOffset":9834,"count":0}],"isBlockCoverage":false},{"functionName":"finallyMethod","ranges":[{"startOffset":9836,"endOffset":9983,"count":0}],"isBlockCoverage":false},{"functionName":"righto","ranges":[{"startOffset":9985,"endOffset":10814,"count":4},{"startOffset":10097,"endOffset":10166,"count":0},{"startOffset":10188,"endOffset":10206,"count":0},{"startOffset":10207,"endOffset":10288,"count":0},{"startOffset":10745,"endOffset":10791,"count":0}],"isBlockCoverage":true},{"functionName":"righto.sync","ranges":[{"startOffset":10830,"endOffset":11156,"count":0}],"isBlockCoverage":false},{"functionName":"righto.all","ranges":[{"startOffset":11172,"endOffset":11622,"count":1},{"startOffset":11239,"endOffset":11279,"count":0},{"startOffset":11489,"endOffset":11593,"count":0}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":11285,"endOffset":11465,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11345,"endOffset":11442,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11513,"endOffset":11579,"count":0}],"isBlockCoverage":false},{"functionName":"righto.reduce","ranges":[{"startOffset":11641,"endOffset":12347,"count":0}],"isBlockCoverage":false},{"functionName":"righto.from","ranges":[{"startOffset":12364,"endOffset":12716,"count":0}],"isBlockCoverage":false},{"functionName":"righto.mate","ranges":[{"startOffset":12733,"endOffset":12915,"count":0}],"isBlockCoverage":false},{"functionName":"righto.take","ranges":[{"startOffset":12932,"endOffset":13086,"count":0}],"isBlockCoverage":false},{"functionName":"righto.after","ranges":[{"startOffset":13104,"endOffset":13352,"count":0}],"isBlockCoverage":false},{"functionName":"righto.resolve","ranges":[{"startOffset":13372,"endOffset":14272,"count":0}],"isBlockCoverage":false},{"functionName":"righto.value","ranges":[{"startOffset":14324,"endOffset":14459,"count":0}],"isBlockCoverage":false},{"functionName":"righto.surely","ranges":[{"startOffset":14478,"endOffset":14711,"count":0}],"isBlockCoverage":false},{"functionName":"righto.handle","ranges":[{"startOffset":14730,"endOffset":15022,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fail","ranges":[{"startOffset":15039,"endOffset":15134,"count":0}],"isBlockCoverage":false},{"functionName":"righto.fork","ranges":[{"startOffset":15151,"endOffset":15383,"count":0}],"isBlockCoverage":false},{"functionName":"righto.proxy","ranges":[{"startOffset":15498,"endOffset":15676,"count":0}],"isBlockCoverage":false}]},{"scriptId":"120","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/abbott/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":757,"count":1}],"isBlockCoverage":true},{"functionName":"checkIfPromise","ranges":[{"startOffset":0,"endOffset":221,"count":0}],"isBlockCoverage":false},{"functionName":"abbott","ranges":[{"startOffset":240,"endOffset":756,"count":0}],"isBlockCoverage":false}]},{"scriptId":"121","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/setimmediate/setImmediate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6473,"count":1},{"startOffset":6447,"endOffset":6453,"count":0},{"startOffset":6463,"endOffset":6469,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1,"endOffset":6386,"count":1},{"startOffset":103,"endOffset":5529,"count":0},{"startOffset":5555,"endOffset":5577,"count":0},{"startOffset":5578,"endOffset":5588,"count":0},{"startOffset":5589,"endOffset":5597,"count":0},{"startOffset":5722,"endOffset":6385,"count":0}],"isBlockCoverage":true},{"functionName":"setImmediate","ranges":[{"startOffset":290,"endOffset":853,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":859,"endOffset":936,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":942,"endOffset":1442,"count":0}],"isBlockCoverage":false},{"functionName":"runIfPresent","ranges":[{"startOffset":1448,"endOffset":2272,"count":0}],"isBlockCoverage":false},{"functionName":"installNextTickImplementation","ranges":[{"startOffset":2278,"endOffset":2453,"count":0}],"isBlockCoverage":false},{"functionName":"canUsePostMessage","ranges":[{"startOffset":2459,"endOffset":3131,"count":0}],"isBlockCoverage":false},{"functionName":"installPostMessageImplementation","ranges":[{"startOffset":3137,"endOffset":4126,"count":0}],"isBlockCoverage":false},{"functionName":"installMessageChannelImplementation","ranges":[{"startOffset":4132,"endOffset":4470,"count":0}],"isBlockCoverage":false},{"functionName":"installReadyStateChangeImplementation","ranges":[{"startOffset":4476,"endOffset":5181,"count":0}],"isBlockCoverage":false},{"functionName":"installSetTimeoutImplementation","ranges":[{"startOffset":5187,"endOffset":5344,"count":0}],"isBlockCoverage":false}]},{"scriptId":"122","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1765,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":146,"endOffset":186,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":257,"endOffset":298,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":369,"endOffset":410,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":481,"endOffset":522,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":594,"endOffset":636,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":712,"endOffset":758,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":835,"endOffset":882,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":960,"endOffset":1008,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1082,"endOffset":1126,"count":2}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":1670,"endOffset":1765,"count":9},{"startOffset":1744,"endOffset":1762,"count":0}],"isBlockCoverage":true}]},{"scriptId":"123","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3618,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v1","ranges":[{"startOffset":627,"endOffset":3570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"124","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/rng.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":549,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":162,"endOffset":257,"count":1},{"startOffset":230,"endOffset":235,"count":0}],"isBlockCoverage":true},{"functionName":"rng","ranges":[{"startOffset":370,"endOffset":549,"count":10},{"startOffset":426,"endOffset":496,"count":1}],"isBlockCoverage":true}]},{"scriptId":"125","url":"crypto.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7347,"count":1}],"isBlockCoverage":false},{"functionName":"createHash","ranges":[{"startOffset":3138,"endOffset":3220,"count":7}],"isBlockCoverage":true},{"functionName":"createCipher","ranges":[{"startOffset":3222,"endOffset":3322,"count":0}],"isBlockCoverage":false},{"functionName":"createCipheriv","ranges":[{"startOffset":3324,"endOffset":3426,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipher","ranges":[{"startOffset":3428,"endOffset":3532,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipheriv","ranges":[{"startOffset":3534,"endOffset":3640,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellman","ranges":[{"startOffset":3642,"endOffset":3798,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellmanGroup","ranges":[{"startOffset":3800,"endOffset":3882,"count":0}],"isBlockCoverage":false},{"functionName":"createECDH","ranges":[{"startOffset":3884,"endOffset":3940,"count":0}],"isBlockCoverage":false},{"functionName":"createHmac","ranges":[{"startOffset":3942,"endOffset":4024,"count":0}],"isBlockCoverage":false},{"functionName":"createSign","ranges":[{"startOffset":4026,"endOffset":4108,"count":0}],"isBlockCoverage":false},{"functionName":"createVerify","ranges":[{"startOffset":4110,"endOffset":4196,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsDisabled","ranges":[{"startOffset":5216,"endOffset":5289,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsForced","ranges":[{"startOffset":5291,"endOffset":5379,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsDisabled","ranges":[{"startOffset":5381,"endOffset":5423,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsForced","ranges":[{"startOffset":5425,"endOffset":5465,"count":0}],"isBlockCoverage":false}]},{"scriptId":"126","url":"internal/crypto/random.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9108,"count":1}],"isBlockCoverage":false},{"functionName":"assertOffset","ranges":[{"startOffset":751,"endOffset":1117,"count":1},{"startOffset":986,"endOffset":1068,"count":0}],"isBlockCoverage":true},{"functionName":"assertSize","ranges":[{"startOffset":1119,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"randomBytes","ranges":[{"startOffset":1582,"endOffset":2136,"count":0}],"isBlockCoverage":false},{"functionName":"randomFillSync","ranges":[{"startOffset":2138,"endOffset":2613,"count":1},{"startOffset":2218,"endOffset":2290,"count":0},{"startOffset":2336,"endOffset":2340,"count":0},{"startOffset":2473,"endOffset":2550,"count":0}],"isBlockCoverage":true},{"functionName":"randomFill","ranges":[{"startOffset":2615,"endOffset":3592,"count":0}],"isBlockCoverage":false},{"functionName":"randomInt","ranges":[{"startOffset":3830,"endOffset":5710,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":5712,"endOffset":5779,"count":1},{"startOffset":5754,"endOffset":5763,"count":0}],"isBlockCoverage":true},{"functionName":"getBufferedUUID","ranges":[{"startOffset":6241,"endOffset":6598,"count":0}],"isBlockCoverage":false},{"functionName":"randomUUID","ranges":[{"startOffset":6600,"endOffset":9010,"count":0}],"isBlockCoverage":false}]},{"scriptId":"127","url":"internal/crypto/pbkdf2.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2373,"count":1}],"isBlockCoverage":false},{"functionName":"pbkdf2","ranges":[{"startOffset":471,"endOffset":1342,"count":0}],"isBlockCoverage":false},{"functionName":"pbkdf2Sync","ranges":[{"startOffset":1344,"endOffset":1755,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":1757,"endOffset":2160,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":2162,"endOffset":2326,"count":0}],"isBlockCoverage":false}]},{"scriptId":"128","url":"internal/crypto/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2336,"count":1}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":704,"endOffset":765,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultEncoding","ranges":[{"startOffset":767,"endOffset":826,"count":7}],"isBlockCoverage":true},{"functionName":"toBuf","ranges":[{"startOffset":1001,"endOffset":1180,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1214,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1291,"endOffset":1333,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1367,"endOffset":1409,"count":0}],"isBlockCoverage":false},{"functionName":"setEngine","ranges":[{"startOffset":1413,"endOffset":1779,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1824,"endOffset":2172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"129","url":"internal/crypto/scrypt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3695,"count":1}],"isBlockCoverage":false},{"functionName":"scrypt","ranges":[{"startOffset":587,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"scryptSync","ranges":[{"startOffset":1426,"endOffset":1851,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1853,"endOffset":2095,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":2097,"endOffset":3652,"count":0}],"isBlockCoverage":false}]},{"scriptId":"130","url":"internal/crypto/keygen.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10082,"count":1}],"isBlockCoverage":false},{"functionName":"wrapKey","ranges":[{"startOffset":954,"endOffset":1082,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPair","ranges":[{"startOffset":1084,"endOffset":1739,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPairSync","ranges":[{"startOffset":1865,"endOffset":1979,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1981,"endOffset":2324,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":2326,"endOffset":3450,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":3452,"endOffset":10021,"count":0}],"isBlockCoverage":false}]},{"scriptId":"131","url":"internal/crypto/keys.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11147,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1513,"endOffset":3483,"count":1}],"isBlockCoverage":true},{"functionName":"KeyObject","ranges":[{"startOffset":1623,"endOffset":2139,"count":0}],"isBlockCoverage":false},{"functionName":"get type","ranges":[{"startOffset":2145,"endOffset":2192,"count":0}],"isBlockCoverage":false},{"functionName":"SecretKeyObject","ranges":[{"startOffset":2246,"endOffset":2304,"count":0}],"isBlockCoverage":false},{"functionName":"get symmetricKeySize","ranges":[{"startOffset":2310,"endOffset":2390,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2396,"endOffset":2449,"count":0}],"isBlockCoverage":false},{"functionName":"get asymmetricKeyType","ranges":[{"startOffset":2567,"endOffset":2719,"count":0}],"isBlockCoverage":false},{"functionName":"PublicKeyObject","ranges":[{"startOffset":2783,"endOffset":2841,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2847,"endOffset":3031,"count":0}],"isBlockCoverage":false},{"functionName":"PrivateKeyObject","ranges":[{"startOffset":3096,"endOffset":3155,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":3161,"endOffset":3402,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormat","ranges":[{"startOffset":3487,"endOffset":3814,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyType","ranges":[{"startOffset":3816,"endOffset":4668,"count":0}],"isBlockCoverage":false},{"functionName":"option","ranges":[{"startOffset":4670,"endOffset":4766,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormatAndType","ranges":[{"startOffset":4768,"endOffset":5362,"count":0}],"isBlockCoverage":false},{"functionName":"isStringOrBuffer","ranges":[{"startOffset":5364,"endOffset":5458,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":5460,"endOffset":6760,"count":0}],"isBlockCoverage":false},{"functionName":"parsePublicKeyEncoding","ranges":[{"startOffset":6959,"endOffset":7095,"count":0}],"isBlockCoverage":false},{"functionName":"parsePrivateKeyEncoding","ranges":[{"startOffset":7295,"endOffset":7411,"count":0}],"isBlockCoverage":false},{"functionName":"getKeyObjectHandle","ranges":[{"startOffset":7413,"endOffset":7975,"count":0}],"isBlockCoverage":false},{"functionName":"prepareAsymmetricKey","ranges":[{"startOffset":7977,"endOffset":9223,"count":0}],"isBlockCoverage":false},{"functionName":"preparePrivateKey","ranges":[{"startOffset":9225,"endOffset":9313,"count":0}],"isBlockCoverage":false},{"functionName":"preparePublicOrPrivateKey","ranges":[{"startOffset":9315,"endOffset":9410,"count":0}],"isBlockCoverage":false},{"functionName":"prepareSecretKey","ranges":[{"startOffset":9412,"endOffset":9903,"count":0}],"isBlockCoverage":false},{"functionName":"createSecretKey","ranges":[{"startOffset":9905,"endOffset":10190,"count":0}],"isBlockCoverage":false},{"functionName":"createPublicKey","ranges":[{"startOffset":10192,"endOffset":10429,"count":0}],"isBlockCoverage":false},{"functionName":"createPrivateKey","ranges":[{"startOffset":10431,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"isKeyObject","ranges":[{"startOffset":10702,"endOffset":10766,"count":0}],"isBlockCoverage":false}]},{"scriptId":"132","url":"internal/crypto/diffiehellman.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8338,"count":1}],"isBlockCoverage":false},{"functionName":"DiffieHellman","ranges":[{"startOffset":970,"endOffset":2743,"count":0}],"isBlockCoverage":false},{"functionName":"DiffieHellmanGroup","ranges":[{"startOffset":2746,"endOffset":3050,"count":0}],"isBlockCoverage":false},{"functionName":"dhGenerateKeys","ranges":[{"startOffset":3161,"endOffset":3323,"count":0}],"isBlockCoverage":false},{"functionName":"dhComputeSecret","ranges":[{"startOffset":3437,"endOffset":3761,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrime","ranges":[{"startOffset":3860,"endOffset":4016,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetGenerator","ranges":[{"startOffset":4127,"endOffset":4299,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPublicKey","ranges":[{"startOffset":4410,"endOffset":4570,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrivateKey","ranges":[{"startOffset":4684,"endOffset":4846,"count":0}],"isBlockCoverage":false},{"functionName":"setPublicKey","ranges":[{"startOffset":4888,"endOffset":5042,"count":0}],"isBlockCoverage":false},{"functionName":"setPrivateKey","ranges":[{"startOffset":5086,"endOffset":5242,"count":0}],"isBlockCoverage":false},{"functionName":"ECDH","ranges":[{"startOffset":5246,"endOffset":5400,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeys","ranges":[{"startOffset":5711,"endOffset":5833,"count":0}],"isBlockCoverage":false},{"functionName":"getPublicKey","ranges":[{"startOffset":5866,"endOffset":6064,"count":0}],"isBlockCoverage":false},{"functionName":"convertKey","ranges":[{"startOffset":6085,"endOffset":6603,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":6606,"endOffset":6741,"count":0}],"isBlockCoverage":false},{"functionName":"getFormat","ranges":[{"startOffset":6743,"endOffset":7066,"count":0}],"isBlockCoverage":false},{"functionName":"diffieHellman","ranges":[{"startOffset":7136,"endOffset":8251,"count":0}],"isBlockCoverage":false}]},{"scriptId":"133","url":"internal/crypto/cipher.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8473,"count":1}],"isBlockCoverage":false},{"functionName":"rsaFunctionFor","ranges":[{"startOffset":1054,"endOffset":1914,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1122,"endOffset":1911,"count":0}],"isBlockCoverage":false},{"functionName":"getDecoder","ranges":[{"startOffset":2415,"endOffset":2732,"count":0}],"isBlockCoverage":false},{"functionName":"getUIntOption","ranges":[{"startOffset":2734,"endOffset":2955,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherBase","ranges":[{"startOffset":2957,"endOffset":3366,"count":0}],"isBlockCoverage":false},{"functionName":"createCipher","ranges":[{"startOffset":3368,"endOffset":3590,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherWithIV","ranges":[{"startOffset":3592,"endOffset":3851,"count":0}],"isBlockCoverage":false},{"functionName":"Cipher","ranges":[{"startOffset":3853,"endOffset":4043,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":4186,"endOffset":4302,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":4331,"endOffset":4469,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":4498,"endOffset":5148,"count":0}],"isBlockCoverage":false},{"functionName":"final","ranges":[{"startOffset":5177,"endOffset":5480,"count":0}],"isBlockCoverage":false},{"functionName":"setAutoPadding","ranges":[{"startOffset":5518,"endOffset":5665,"count":0}],"isBlockCoverage":false},{"functionName":"getAuthTag","ranges":[{"startOffset":5698,"endOffset":5858,"count":0}],"isBlockCoverage":false},{"functionName":"setAuthTag","ranges":[{"startOffset":5862,"endOffset":6205,"count":0}],"isBlockCoverage":false},{"functionName":"setAAD","ranges":[{"startOffset":6233,"endOffset":6660,"count":0}],"isBlockCoverage":false},{"functionName":"Cipheriv","ranges":[{"startOffset":6663,"endOffset":6862,"count":0}],"isBlockCoverage":false},{"functionName":"addCipherPrototypeFunctions","ranges":[{"startOffset":6864,"endOffset":7455,"count":3},{"startOffset":7260,"endOffset":7333,"count":1},{"startOffset":7333,"endOffset":7395,"count":2}],"isBlockCoverage":true},{"functionName":"Decipher","ranges":[{"startOffset":7611,"endOffset":7808,"count":0}],"isBlockCoverage":false},{"functionName":"Decipheriv","ranges":[{"startOffset":7965,"endOffset":8171,"count":0}],"isBlockCoverage":false}]},{"scriptId":"134","url":"internal/streams/lazy_transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1669,"count":1}],"isBlockCoverage":false},{"functionName":"LazyTransform","ranges":[{"startOffset":468,"endOffset":530,"count":7}],"isBlockCoverage":true},{"functionName":"makeGetter","ranges":[{"startOffset":662,"endOffset":970,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":699,"endOffset":967,"count":0}],"isBlockCoverage":false},{"functionName":"makeSetter","ranges":[{"startOffset":972,"endOffset":1167,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1009,"endOffset":1164,"count":0}],"isBlockCoverage":false}]},{"scriptId":"135","url":"internal/crypto/sig.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5946,"count":1}],"isBlockCoverage":false},{"functionName":"Sign","ranges":[{"startOffset":729,"endOffset":977,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":1100,"endOffset":1192,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1219,"endOffset":1580,"count":0}],"isBlockCoverage":false},{"functionName":"getPadding","ranges":[{"startOffset":1583,"endOffset":1658,"count":0}],"isBlockCoverage":false},{"functionName":"getSaltLength","ranges":[{"startOffset":1660,"endOffset":1741,"count":0}],"isBlockCoverage":false},{"functionName":"getDSASignatureEncoding","ranges":[{"startOffset":1743,"endOffset":2087,"count":0}],"isBlockCoverage":false},{"functionName":"getIntOption","ranges":[{"startOffset":2089,"endOffset":2321,"count":0}],"isBlockCoverage":false},{"functionName":"sign","ranges":[{"startOffset":2345,"endOffset":3008,"count":0}],"isBlockCoverage":false},{"functionName":"signOneShot","ranges":[{"startOffset":3011,"endOffset":3809,"count":0}],"isBlockCoverage":false},{"functionName":"Verify","ranges":[{"startOffset":3811,"endOffset":4067,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":4295,"endOffset":4929,"count":0}],"isBlockCoverage":false},{"functionName":"verifyOneShot","ranges":[{"startOffset":4932,"endOffset":5873,"count":0}],"isBlockCoverage":false}]},{"scriptId":"136","url":"internal/crypto/hash.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3801,"count":1}],"isBlockCoverage":false},{"functionName":"Hash","ranges":[{"startOffset":764,"endOffset":1272,"count":7},{"startOffset":835,"endOffset":871,"count":0},{"startOffset":998,"endOffset":1017,"count":0},{"startOffset":1018,"endOffset":1044,"count":0},{"startOffset":1090,"endOffset":1137,"count":0}],"isBlockCoverage":true},{"functionName":"copy","ranges":[{"startOffset":1403,"endOffset":1571,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":1602,"endOffset":1707,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":1734,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1841,"endOffset":2353,"count":7},{"startOffset":1982,"endOffset":2020,"count":0},{"startOffset":2097,"endOffset":2243,"count":0},{"startOffset":2294,"endOffset":2336,"count":0}],"isBlockCoverage":true},{"functionName":"digest","ranges":[{"startOffset":2381,"endOffset":2726,"count":7},{"startOffset":2474,"endOffset":2512,"count":0},{"startOffset":2547,"endOffset":2570,"count":0}],"isBlockCoverage":true},{"functionName":"Hmac","ranges":[{"startOffset":2730,"endOffset":3058,"count":0}],"isBlockCoverage":false},{"functionName":"digest","ranges":[{"startOffset":3239,"endOffset":3658,"count":0}],"isBlockCoverage":false}]},{"scriptId":"137","url":"internal/crypto/certificate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1119,"count":1}],"isBlockCoverage":false},{"functionName":"verifySpkac","ranges":[{"startOffset":247,"endOffset":345,"count":0}],"isBlockCoverage":false},{"functionName":"exportPublicKey","ranges":[{"startOffset":347,"endOffset":476,"count":0}],"isBlockCoverage":false},{"functionName":"exportChallenge","ranges":[{"startOffset":478,"endOffset":607,"count":0}],"isBlockCoverage":false},{"functionName":"Certificate","ranges":[{"startOffset":695,"endOffset":789,"count":0}],"isBlockCoverage":false}]},{"scriptId":"138","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/stringify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1667,"count":1},{"startOffset":442,"endOffset":499,"count":256}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":501,"endOffset":1612,"count":10},{"startOffset":1537,"endOffset":1594,"count":0}],"isBlockCoverage":true}]},{"scriptId":"139","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/validate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":410,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":168,"endOffset":263,"count":1},{"startOffset":242,"endOffset":260,"count":0}],"isBlockCoverage":true},{"functionName":"validate","ranges":[{"startOffset":265,"endOffset":356,"count":10}],"isBlockCoverage":true}]},{"scriptId":"140","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/regex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true}]},{"scriptId":"141","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v3.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":414,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":218,"endOffset":313,"count":2},{"startOffset":292,"endOffset":310,"count":0}],"isBlockCoverage":true}]},{"scriptId":"142","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v35.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2008,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":275,"endOffset":370,"count":2},{"startOffset":349,"endOffset":367,"count":0}],"isBlockCoverage":true},{"functionName":"stringToBytes","ranges":[{"startOffset":372,"endOffset":580,"count":0}],"isBlockCoverage":false},{"functionName":"_default","ranges":[{"startOffset":725,"endOffset":2008,"count":2}],"isBlockCoverage":true},{"functionName":"generateUUID","ranges":[{"startOffset":772,"endOffset":1736,"count":0}],"isBlockCoverage":false}]},{"scriptId":"143","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1380,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":271,"endOffset":1329,"count":0}],"isBlockCoverage":false}]},{"scriptId":"144","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/md5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":550,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"md5","ranges":[{"startOffset":262,"endOffset":501,"count":0}],"isBlockCoverage":false}]},{"scriptId":"145","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v4.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":860,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":233,"endOffset":328,"count":2},{"startOffset":307,"endOffset":325,"count":0}],"isBlockCoverage":true},{"functionName":"v4","ranges":[{"startOffset":330,"endOffset":812,"count":10},{"startOffset":646,"endOffset":769,"count":0}],"isBlockCoverage":true}]},{"scriptId":"146","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/v5.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":417,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":220,"endOffset":315,"count":2},{"startOffset":294,"endOffset":312,"count":0}],"isBlockCoverage":true}]},{"scriptId":"147","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/sha1.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":553,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":165,"endOffset":260,"count":1},{"startOffset":233,"endOffset":238,"count":0}],"isBlockCoverage":true},{"functionName":"sha1","ranges":[{"startOffset":262,"endOffset":503,"count":0}],"isBlockCoverage":false}]},{"scriptId":"148","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/nil.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":188,"count":1}],"isBlockCoverage":true}]},{"scriptId":"149","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/uuid/dist/version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":474,"count":1}],"isBlockCoverage":true},{"functionName":"_interopRequireDefault","ranges":[{"startOffset":174,"endOffset":269,"count":1},{"startOffset":248,"endOffset":266,"count":0}],"isBlockCoverage":true},{"functionName":"version","ranges":[{"startOffset":271,"endOffset":421,"count":0}],"isBlockCoverage":false}]},{"scriptId":"150","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6073,"count":1},{"startOffset":1532,"endOffset":1764,"count":44},{"startOffset":2057,"endOffset":2352,"count":8},{"startOffset":2386,"endOffset":2752,"count":8},{"startOffset":5968,"endOffset":5971,"count":0}],"isBlockCoverage":true},{"functionName":"applyOptions","ranges":[{"startOffset":430,"endOffset":809,"count":2},{"startOffset":477,"endOffset":558,"count":1},{"startOffset":560,"endOffset":638,"count":0},{"startOffset":729,"endOffset":732,"count":0},{"startOffset":778,"endOffset":790,"count":1},{"startOffset":791,"endOffset":806,"count":1}],"isBlockCoverage":true},{"functionName":"ChalkClass","ranges":[{"startOffset":832,"endOffset":941,"count":0}],"isBlockCoverage":false},{"functionName":"chalkFactory","ranges":[{"startOffset":966,"endOffset":1408,"count":2}],"isBlockCoverage":true},{"functionName":"chalk.template","ranges":[{"startOffset":1048,"endOffset":1106,"count":0}],"isBlockCoverage":false},{"functionName":"chalk.template.constructor","ranges":[{"startOffset":1235,"endOffset":1340,"count":0}],"isBlockCoverage":false},{"functionName":"Chalk","ranges":[{"startOffset":1411,"endOffset":1469,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1559,"endOffset":1758,"count":4}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":1786,"endOffset":1933,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2080,"endOffset":2346,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2476,"endOffset":2746,"count":0}],"isBlockCoverage":false},{"functionName":"Object.defineProperties","ranges":[{"startOffset":2792,"endOffset":2800,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2848,"endOffset":2892,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":2896,"endOffset":2946,"count":0}],"isBlockCoverage":false},{"functionName":"createStyler","ranges":[{"startOffset":2976,"endOffset":3250,"count":4},{"startOffset":3101,"endOffset":3184,"count":0}],"isBlockCoverage":true},{"functionName":"createBuilder","ranges":[{"startOffset":3275,"endOffset":4073,"count":4}],"isBlockCoverage":true},{"functionName":"builder","ranges":[{"startOffset":3323,"endOffset":3790,"count":0}],"isBlockCoverage":false},{"functionName":"applyStyle","ranges":[{"startOffset":4095,"endOffset":5135,"count":0}],"isBlockCoverage":false},{"functionName":"chalkTag","ranges":[{"startOffset":5169,"endOffset":5764,"count":0}],"isBlockCoverage":false}]},{"scriptId":"151","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ansi-styles/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4139,"count":1}],"isBlockCoverage":true},{"functionName":"wrapAnsi16","ranges":[{"startOffset":34,"endOffset":129,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi256","ranges":[{"startOffset":152,"endOffset":255,"count":0}],"isBlockCoverage":false},{"functionName":"wrapAnsi16m","ranges":[{"startOffset":278,"endOffset":402,"count":0}],"isBlockCoverage":false},{"functionName":"ansi2ansi","ranges":[{"startOffset":423,"endOffset":429,"count":0}],"isBlockCoverage":false},{"functionName":"rgb2rgb","ranges":[{"startOffset":447,"endOffset":469,"count":0}],"isBlockCoverage":false},{"functionName":"setLazyProperty","ranges":[{"startOffset":496,"endOffset":786,"count":30}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":575,"endOffset":737,"count":0}],"isBlockCoverage":false},{"functionName":"makeDynamicStyles","ranges":[{"startOffset":879,"endOffset":1400,"count":0}],"isBlockCoverage":false},{"functionName":"assembleStyles","ranges":[{"startOffset":1403,"endOffset":4021,"count":5},{"startOffset":2869,"endOffset":3201,"count":15},{"startOffset":2929,"endOffset":3108,"count":220}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3401,"endOffset":3464,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3509,"endOffset":3574,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3619,"endOffset":3678,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3722,"endOffset":3784,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3831,"endOffset":3895,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3942,"endOffset":4000,"count":0}],"isBlockCoverage":false}]},{"scriptId":"152","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/supports-color/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2748,"count":1},{"startOffset":250,"endOffset":270,"count":0},{"startOffset":374,"endOffset":394,"count":0},{"startOffset":422,"endOffset":646,"count":0}],"isBlockCoverage":true},{"functionName":"translateLevel","ranges":[{"startOffset":648,"endOffset":806,"count":2},{"startOffset":699,"endOffset":719,"count":0}],"isBlockCoverage":true},{"functionName":"supportsColor","ranges":[{"startOffset":808,"endOffset":2439,"count":2},{"startOffset":881,"endOffset":897,"count":0},{"startOffset":985,"endOffset":1001,"count":0},{"startOffset":1030,"endOffset":1046,"count":0},{"startOffset":1080,"endOffset":1107,"count":0},{"startOffset":1109,"endOffset":1125,"count":0},{"startOffset":1184,"endOffset":1202,"count":0},{"startOffset":1239,"endOffset":1594,"count":0},{"startOffset":1614,"endOffset":1794,"count":0},{"startOffset":1828,"endOffset":1909,"count":0},{"startOffset":1963,"endOffset":2438,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1706,"endOffset":1725,"count":0}],"isBlockCoverage":false},{"functionName":"getSupportLevel","ranges":[{"startOffset":2441,"endOffset":2570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"153","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/has-flag/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":330,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":32,"endOffset":328,"count":16},{"startOffset":102,"endOffset":106,"count":0},{"startOffset":128,"endOffset":133,"count":0},{"startOffset":262,"endOffset":325,"count":0}],"isBlockCoverage":true}]},{"scriptId":"154","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/chalk/source/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1035,"count":1}],"isBlockCoverage":true},{"functionName":"stringReplaceAll","ranges":[{"startOffset":40,"endOffset":505,"count":0}],"isBlockCoverage":false},{"functionName":"stringEncaseCRLFWithFirstIndex","ranges":[{"startOffset":547,"endOffset":959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"155","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":107,"count":1}],"isBlockCoverage":true}]},{"scriptId":"156","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createClient.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3821,"count":1}],"isBlockCoverage":true},{"functionName":"proxyEventEmitter","ranges":[{"startOffset":119,"endOffset":396,"count":30}],"isBlockCoverage":true},{"functionName":"sourceEmitter.emit","ranges":[{"startOffset":270,"endOffset":393,"count":487}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":426,"endOffset":553,"count":30},{"startOffset":484,"endOffset":542,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":501,"endOffset":524,"count":0}],"isBlockCoverage":false},{"functionName":"createClient","ranges":[{"startOffset":557,"endOffset":3788,"count":30}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":803,"endOffset":1116,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":875,"endOffset":1086,"count":37},{"startOffset":1019,"endOffset":1080,"count":0}],"isBlockCoverage":true},{"functionName":"reconnect","ranges":[{"startOffset":1142,"endOffset":1330,"count":0}],"isBlockCoverage":false},{"functionName":"makeConnection","ranges":[{"startOffset":1334,"endOffset":2387,"count":30},{"startOffset":1414,"endOffset":1445,"count":0},{"startOffset":1552,"endOffset":1641,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1714,"endOffset":1843,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1771,"endOffset":1812,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1870,"endOffset":2111,"count":30},{"startOffset":1929,"endOffset":1975,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2002,"endOffset":2080,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2138,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"waitUntilConnected","ranges":[{"startOffset":2412,"endOffset":2547,"count":37},{"startOffset":2472,"endOffset":2511,"count":32},{"startOffset":2511,"endOffset":2546,"count":5}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":2551,"endOffset":2951,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2644,"endOffset":2945,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2692,"endOffset":2888,"count":37},{"startOffset":2724,"endOffset":2807,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":3165,"endOffset":3770,"count":30},{"startOffset":3220,"endOffset":3269,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3326,"endOffset":3355,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3384,"endOffset":3762,"count":30},{"startOffset":3452,"endOffset":3479,"count":0},{"startOffset":3509,"endOffset":3587,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3618,"endOffset":3656,"count":30}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3688,"endOffset":3726,"count":0}],"isBlockCoverage":false}]},{"scriptId":"157","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/ndjson-fe/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":799,"count":1}],"isBlockCoverage":true},{"functionName":"ndJsonFe","ranges":[{"startOffset":41,"endOffset":770,"count":60}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":148,"endOffset":616,"count":72}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":222,"endOffset":610,"count":146},{"startOffset":262,"endOffset":269,"count":72},{"startOffset":269,"endOffset":343,"count":74},{"startOffset":343,"endOffset":546,"count":0},{"startOffset":546,"endOffset":609,"count":74}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":678,"endOffset":715,"count":72}],"isBlockCoverage":true},{"functionName":"end","ranges":[{"startOffset":728,"endOffset":757,"count":30}],"isBlockCoverage":true}]},{"scriptId":"158","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/tcpocket/createServer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1397,"count":1}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":40,"endOffset":1364,"count":7},{"startOffset":1025,"endOffset":1063,"count":0}],"isBlockCoverage":true},{"functionName":"wrapper","ranges":[{"startOffset":107,"endOffset":946,"count":30}],"isBlockCoverage":true},{"functionName":"next","ranges":[{"startOffset":209,"endOffset":659,"count":37},{"startOffset":562,"endOffset":653,"count":0}],"isBlockCoverage":true},{"functionName":"send","ranges":[{"startOffset":320,"endOffset":419,"count":0}],"isBlockCoverage":false},{"functionName":"reply","ranges":[{"startOffset":438,"endOffset":541,"count":37}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":603,"endOffset":643,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":710,"endOffset":916,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":1103,"endOffset":1151,"count":7}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":1165,"endOffset":1357,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1197,"endOffset":1324,"count":30},{"startOffset":1261,"endOffset":1316,"count":0}],"isBlockCoverage":true}]},{"scriptId":"159","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/driver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5128,"count":1}],"isBlockCoverage":true},{"functionName":"createEjdbDriver","ranges":[{"startOffset":208,"endOffset":5093,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":356,"endOffset":471,"count":0}],"isBlockCoverage":false},{"functionName":"getDatabaseConnection","ranges":[{"startOffset":477,"endOffset":920,"count":65},{"startOffset":548,"endOffset":653,"count":0},{"startOffset":690,"endOffset":737,"count":57},{"startOffset":737,"endOffset":919,"count":8}],"isBlockCoverage":true},{"functionName":"count","ranges":[{"startOffset":924,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":1428,"endOffset":1949,"count":35},{"startOffset":1510,"endOffset":1615,"count":0},{"startOffset":1632,"endOffset":1657,"count":0},{"startOffset":1659,"endOffset":1691,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1926,"endOffset":1943,"count":3}],"isBlockCoverage":true},{"functionName":"post","ranges":[{"startOffset":1953,"endOffset":2477,"count":30},{"startOffset":2017,"endOffset":2122,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2288,"endOffset":2373,"count":90}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":2481,"endOffset":3299,"count":0}],"isBlockCoverage":false},{"functionName":"patch","ranges":[{"startOffset":3303,"endOffset":4174,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":4178,"endOffset":4722,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":4726,"endOffset":4769,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4773,"endOffset":4994,"count":7},{"startOffset":4861,"endOffset":4968,"count":8}],"isBlockCoverage":true}]},{"scriptId":"160","url":"fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":73,"count":1}],"isBlockCoverage":false}]},{"scriptId":"161","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18975,"count":1},{"startOffset":1537,"endOffset":1670,"count":0}],"isBlockCoverage":true},{"functionName":"escapeUnicode","ranges":[{"startOffset":1894,"endOffset":2085,"count":0}],"isBlockCoverage":false},{"functionName":"jsonParseAndEscapeIfNeeded","ranges":[{"startOffset":2087,"endOffset":2243,"count":3},{"startOffset":2176,"endOffset":2241,"count":0}],"isBlockCoverage":true},{"functionName":"isNotFound","ranges":[{"startOffset":2426,"endOffset":2543,"count":0}],"isBlockCoverage":false},{"functionName":"isInvalidQuery","ranges":[{"startOffset":2682,"endOffset":2803,"count":0}],"isBlockCoverage":false},{"functionName":"get json","ranges":[{"startOffset":2892,"endOffset":3072,"count":3},{"startOffset":2933,"endOffset":2965,"count":0}],"isBlockCoverage":true},{"functionName":"JBDOC","ranges":[{"startOffset":3173,"endOffset":3261,"count":3}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":3265,"endOffset":3374,"count":0}],"isBlockCoverage":false},{"functionName":"get _impl","ranges":[{"startOffset":3458,"endOffset":3502,"count":140}],"isBlockCoverage":true},{"functionName":"get writable","ranges":[{"startOffset":3506,"endOffset":3572,"count":0}],"isBlockCoverage":false},{"functionName":"JBDOCStream","ranges":[{"startOffset":3636,"endOffset":4033,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4001,"endOffset":4027,"count":0}],"isBlockCoverage":false},{"functionName":"abort","ranges":[{"startOffset":4037,"endOffset":4251,"count":35}],"isBlockCoverage":true},{"functionName":"_destroy","ranges":[{"startOffset":4287,"endOffset":4482,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4410,"endOffset":4451,"count":35}],"isBlockCoverage":true},{"functionName":"_read","ranges":[{"startOffset":4486,"endOffset":5092,"count":38},{"startOffset":4521,"endOffset":4542,"count":0},{"startOffset":4599,"endOffset":5088,"count":0}],"isBlockCoverage":true},{"functionName":"_doResume","ranges":[{"startOffset":5096,"endOffset":5213,"count":73},{"startOffset":5132,"endOffset":5209,"count":35}],"isBlockCoverage":true},{"functionName":"_doPause","ranges":[{"startOffset":5217,"endOffset":5332,"count":0}],"isBlockCoverage":false},{"functionName":"addStreamResult","ranges":[{"startOffset":5394,"endOffset":6409,"count":38},{"startOffset":5472,"endOffset":5489,"count":0},{"startOffset":5508,"endOffset":5546,"count":0},{"startOffset":5548,"endOffset":5631,"count":0},{"startOffset":5694,"endOffset":5702,"count":35},{"startOffset":5704,"endOffset":6251,"count":3},{"startOffset":5760,"endOffset":5971,"count":0},{"startOffset":6004,"endOffset":6078,"count":0},{"startOffset":6205,"endOffset":6241,"count":0},{"startOffset":6267,"endOffset":6407,"count":35},{"startOffset":6328,"endOffset":6366,"count":0}],"isBlockCoverage":true},{"functionName":"get _impl","ranges":[{"startOffset":6449,"endOffset":6492,"count":229}],"isBlockCoverage":true},{"functionName":"get limit","ranges":[{"startOffset":6546,"endOffset":6602,"count":0}],"isBlockCoverage":false},{"functionName":"JQL","ranges":[{"startOffset":6700,"endOffset":6866,"count":35}],"isBlockCoverage":true},{"functionName":"stream","ranges":[{"startOffset":7031,"endOffset":7095,"count":35}],"isBlockCoverage":true},{"functionName":"completionPromise","ranges":[{"startOffset":7194,"endOffset":7461,"count":0}],"isBlockCoverage":false},{"functionName":"scalarInt","ranges":[{"startOffset":7642,"endOffset":7899,"count":0}],"isBlockCoverage":false},{"functionName":"list","ranges":[{"startOffset":8065,"endOffset":8336,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8159,"endOffset":8330,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8206,"endOffset":8228,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8256,"endOffset":8274,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8302,"endOffset":8322,"count":0}],"isBlockCoverage":false},{"functionName":"firstN","ranges":[{"startOffset":8502,"endOffset":8909,"count":0}],"isBlockCoverage":false},{"functionName":"first","ranges":[{"startOffset":9112,"endOffset":9196,"count":0}],"isBlockCoverage":false},{"functionName":"setJSON","ranges":[{"startOffset":9351,"endOffset":9565,"count":0}],"isBlockCoverage":false},{"functionName":"setRegexp","ranges":[{"startOffset":9729,"endOffset":10117,"count":0}],"isBlockCoverage":false},{"functionName":"setNumber","ranges":[{"startOffset":10271,"endOffset":10530,"count":0}],"isBlockCoverage":false},{"functionName":"setBoolean","ranges":[{"startOffset":10686,"endOffset":10831,"count":0}],"isBlockCoverage":false},{"functionName":"setString","ranges":[{"startOffset":10985,"endOffset":11211,"count":54},{"startOffset":11104,"endOffset":11139,"count":0}],"isBlockCoverage":true},{"functionName":"setNull","ranges":[{"startOffset":11334,"endOffset":11470,"count":0}],"isBlockCoverage":false},{"functionName":"_isInteger","ranges":[{"startOffset":11474,"endOffset":11531,"count":0}],"isBlockCoverage":false},{"functionName":"_checkPlaceholder","ranges":[{"startOffset":11535,"endOffset":11744,"count":54},{"startOffset":11625,"endOffset":11642,"count":0},{"startOffset":11644,"endOffset":11740,"count":0}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11976,"endOffset":12996,"count":8}],"isBlockCoverage":true},{"functionName":"toArgs","ranges":[{"startOffset":12023,"endOffset":12906,"count":8},{"startOffset":12119,"endOffset":12152,"count":0},{"startOffset":12181,"endOffset":12214,"count":0},{"startOffset":12282,"endOffset":12305,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12980,"endOffset":12990,"count":8}],"isBlockCoverage":true},{"functionName":"EJDB2","ranges":[{"startOffset":13000,"endOffset":13061,"count":8}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":13137,"endOffset":13181,"count":8}],"isBlockCoverage":true},{"functionName":"put","ranges":[{"startOffset":13470,"endOffset":13627,"count":30},{"startOffset":13532,"endOffset":13574,"count":0}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":13842,"endOffset":13926,"count":0}],"isBlockCoverage":false},{"functionName":"patchOrPut","ranges":[{"startOffset":14188,"endOffset":14284,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14482,"endOffset":14597,"count":0}],"isBlockCoverage":false},{"functionName":"getOrNull","ranges":[{"startOffset":14875,"endOffset":15080,"count":0}],"isBlockCoverage":false},{"functionName":"info","ranges":[{"startOffset":15175,"endOffset":15264,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":15428,"endOffset":15496,"count":0}],"isBlockCoverage":false},{"functionName":"renameCollection","ranges":[{"startOffset":15697,"endOffset":15836,"count":0}],"isBlockCoverage":false},{"functionName":"ensureStringIndex","ranges":[{"startOffset":16077,"endOffset":16208,"count":90},{"startOffset":16184,"endOffset":16190,"count":0}],"isBlockCoverage":true},{"functionName":"removeStringIndex","ranges":[{"startOffset":16392,"endOffset":16522,"count":0}],"isBlockCoverage":false},{"functionName":"ensureIntIndex","ranges":[{"startOffset":16764,"endOffset":16892,"count":0}],"isBlockCoverage":false},{"functionName":"removeIntIndex","ranges":[{"startOffset":17076,"endOffset":17203,"count":0}],"isBlockCoverage":false},{"functionName":"ensureFloatIndex","ranges":[{"startOffset":17452,"endOffset":17582,"count":0}],"isBlockCoverage":false},{"functionName":"removeFloatIndex","ranges":[{"startOffset":17766,"endOffset":17895,"count":0}],"isBlockCoverage":false},{"functionName":"removeCollection","ranges":[{"startOffset":18013,"endOffset":18089,"count":0}],"isBlockCoverage":false},{"functionName":"createQuery","ranges":[{"startOffset":18369,"endOffset":18450,"count":35}],"isBlockCoverage":true},{"functionName":"onlineBackup","ranges":[{"startOffset":18859,"endOffset":18934,"count":0}],"isBlockCoverage":false}]},{"scriptId":"162","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1982,"count":1}],"isBlockCoverage":true}]},{"scriptId":"163","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/re.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6662,"count":1}],"isBlockCoverage":true},{"functionName":"createToken","ranges":[{"startOffset":276,"endOffset":447,"count":40},{"startOffset":427,"endOffset":432,"count":4},{"startOffset":433,"endOffset":444,"count":36}],"isBlockCoverage":true}]},{"scriptId":"164","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":468,"count":1},{"startOffset":233,"endOffset":281,"count":0}],"isBlockCoverage":true}]},{"scriptId":"165","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/debug.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":226,"count":1},{"startOffset":91,"endOffset":138,"count":0},{"startOffset":141,"endOffset":188,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":143,"endOffset":188,"count":0}],"isBlockCoverage":false},{"functionName":"debug","ranges":[{"startOffset":193,"endOffset":201,"count":59}],"isBlockCoverage":true}]},{"scriptId":"166","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/semver.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7985,"count":1}],"isBlockCoverage":true},{"functionName":"SemVer","ranges":[{"startOffset":303,"endOffset":2193,"count":4},{"startOffset":408,"endOffset":613,"count":2},{"startOffset":558,"endOffset":607,"count":0},{"startOffset":613,"endOffset":716,"count":2},{"startOffset":652,"endOffset":716,"count":0},{"startOffset":716,"endOffset":755,"count":2},{"startOffset":755,"endOffset":855,"count":0},{"startOffset":855,"endOffset":1194,"count":2},{"startOffset":1194,"endOffset":1207,"count":0},{"startOffset":1208,"endOffset":1220,"count":2},{"startOffset":1235,"endOffset":1299,"count":0},{"startOffset":1299,"endOffset":1484,"count":2},{"startOffset":1486,"endOffset":1544,"count":0},{"startOffset":1544,"endOffset":1601,"count":2},{"startOffset":1603,"endOffset":1661,"count":0},{"startOffset":1661,"endOffset":1718,"count":2},{"startOffset":1720,"endOffset":1778,"count":0},{"startOffset":1778,"endOffset":1873,"count":2},{"startOffset":1873,"endOffset":2125,"count":0},{"startOffset":2125,"endOffset":2149,"count":2},{"startOffset":2149,"endOffset":2166,"count":0},{"startOffset":2167,"endOffset":2171,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1925,"endOffset":2118,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":2197,"endOffset":2393,"count":2},{"startOffset":2304,"endOffset":2365,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2397,"endOffset":2438,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":2442,"endOffset":2832,"count":1},{"startOffset":2559,"endOffset":2702,"count":0},{"startOffset":2744,"endOffset":2766,"count":0},{"startOffset":2803,"endOffset":2828,"count":0}],"isBlockCoverage":true},{"functionName":"compareMain","ranges":[{"startOffset":2836,"endOffset":3127,"count":1},{"startOffset":2894,"endOffset":2947,"count":0},{"startOffset":3012,"endOffset":3064,"count":0},{"startOffset":3065,"endOffset":3117,"count":0}],"isBlockCoverage":true},{"functionName":"comparePre","ranges":[{"startOffset":3131,"endOffset":3982,"count":0}],"isBlockCoverage":false},{"functionName":"compareBuild","ranges":[{"startOffset":3986,"endOffset":4528,"count":0}],"isBlockCoverage":false},{"functionName":"inc","ranges":[{"startOffset":4681,"endOffset":7957,"count":0}],"isBlockCoverage":false}]},{"scriptId":"167","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/parse-options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":401,"count":1}],"isBlockCoverage":true},{"functionName":"parseOptions","ranges":[{"startOffset":186,"endOffset":370,"count":6},{"startOffset":208,"endOffset":212,"count":2},{"startOffset":215,"endOffset":370,"count":4},{"startOffset":245,"endOffset":262,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":279,"endOffset":294,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":303,"endOffset":365,"count":0}],"isBlockCoverage":false}]},{"scriptId":"168","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/internal/identifiers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":409,"count":1}],"isBlockCoverage":true},{"functionName":"compareIdentifiers","ranges":[{"startOffset":54,"endOffset":278,"count":1},{"startOffset":195,"endOffset":198,"count":0},{"startOffset":221,"endOffset":225,"count":0},{"startOffset":248,"endOffset":251,"count":0},{"startOffset":264,"endOffset":268,"count":0}],"isBlockCoverage":true},{"functionName":"rcompareIdentifiers","ranges":[{"startOffset":308,"endOffset":342,"count":0}],"isBlockCoverage":false}]},{"scriptId":"169","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/parse.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":660,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":215,"endOffset":635,"count":0}],"isBlockCoverage":false}]},{"scriptId":"170","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":162,"count":1}],"isBlockCoverage":true},{"functionName":"valid","ranges":[{"startOffset":47,"endOffset":138,"count":0}],"isBlockCoverage":false}]},{"scriptId":"171","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/clean.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":191,"count":1}],"isBlockCoverage":true},{"functionName":"clean","ranges":[{"startOffset":47,"endOffset":167,"count":0}],"isBlockCoverage":false}]},{"scriptId":"172","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/inc.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":336,"count":1}],"isBlockCoverage":true},{"functionName":"inc","ranges":[{"startOffset":57,"endOffset":314,"count":0}],"isBlockCoverage":false}]},{"scriptId":"173","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/diff.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":634,"count":1}],"isBlockCoverage":true},{"functionName":"diff","ranges":[{"startOffset":74,"endOffset":611,"count":0}],"isBlockCoverage":false}]},{"scriptId":"174","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/eq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":112,"count":1}],"isBlockCoverage":true},{"functionName":"eq","ranges":[{"startOffset":48,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"175","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":156,"count":1}],"isBlockCoverage":true},{"functionName":"compare","ranges":[{"startOffset":60,"endOffset":129,"count":1}],"isBlockCoverage":true}]},{"scriptId":"176","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/major.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"major","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"177","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/minor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"minor","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"178","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/patch.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":122,"count":1}],"isBlockCoverage":true},{"functionName":"patch","ranges":[{"startOffset":58,"endOffset":98,"count":0}],"isBlockCoverage":false}]},{"scriptId":"179","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/prerelease.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":220,"count":1}],"isBlockCoverage":true},{"functionName":"prerelease","ranges":[{"startOffset":52,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"180","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rcompare.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"rcompare","ranges":[{"startOffset":54,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"181","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-loose.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":118,"count":1}],"isBlockCoverage":true},{"functionName":"compareLoose","ranges":[{"startOffset":58,"endOffset":87,"count":0}],"isBlockCoverage":false}]},{"scriptId":"182","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/compare-build.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":267,"count":1}],"isBlockCoverage":true},{"functionName":"compareBuild","ranges":[{"startOffset":65,"endOffset":236,"count":0}],"isBlockCoverage":false}]},{"scriptId":"183","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/sort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":147,"count":1}],"isBlockCoverage":true},{"functionName":"sort","ranges":[{"startOffset":61,"endOffset":124,"count":0}],"isBlockCoverage":false}]},{"scriptId":"184","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/rsort.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":149,"count":1}],"isBlockCoverage":true},{"functionName":"rsort","ranges":[{"startOffset":62,"endOffset":125,"count":0}],"isBlockCoverage":false}]},{"scriptId":"185","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"gt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"186","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true},{"functionName":"lt","ranges":[{"startOffset":48,"endOffset":89,"count":0}],"isBlockCoverage":false}]},{"scriptId":"187","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/neq.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":114,"count":1}],"isBlockCoverage":true},{"functionName":"neq","ranges":[{"startOffset":49,"endOffset":92,"count":0}],"isBlockCoverage":false}]},{"scriptId":"188","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/gte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"gte","ranges":[{"startOffset":49,"endOffset":91,"count":1}],"isBlockCoverage":true}]},{"scriptId":"189","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/lte.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":113,"count":1}],"isBlockCoverage":true},{"functionName":"lte","ranges":[{"startOffset":49,"endOffset":91,"count":0}],"isBlockCoverage":false}]},{"scriptId":"190","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/cmp.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":907,"count":1}],"isBlockCoverage":true},{"functionName":"cmp","ranges":[{"startOffset":181,"endOffset":885,"count":1},{"startOffset":224,"endOffset":366,"count":0},{"startOffset":372,"endOffset":514,"count":0},{"startOffset":520,"endOffset":528,"count":0},{"startOffset":533,"endOffset":542,"count":0},{"startOffset":547,"endOffset":586,"count":0},{"startOffset":592,"endOffset":632,"count":0},{"startOffset":638,"endOffset":676,"count":0},{"startOffset":728,"endOffset":766,"count":0},{"startOffset":772,"endOffset":812,"count":0},{"startOffset":818,"endOffset":879,"count":0}],"isBlockCoverage":true}]},{"scriptId":"191","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/coerce.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1497,"count":1}],"isBlockCoverage":true},{"functionName":"coerce","ranges":[{"startOffset":135,"endOffset":1472,"count":0}],"isBlockCoverage":false}]},{"scriptId":"192","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/comparator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3606,"count":1}],"isBlockCoverage":true},{"functionName":"get ANY","ranges":[{"startOffset":100,"endOffset":131,"count":2}],"isBlockCoverage":true},{"functionName":"Comparator","ranges":[{"startOffset":134,"endOffset":635,"count":1},{"startOffset":237,"endOffset":357,"count":0},{"startOffset":509,"endOffset":538,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":639,"endOffset":1135,"count":1},{"startOffset":687,"endOffset":710,"count":0},{"startOffset":771,"endOffset":835,"count":0},{"startOffset":883,"endOffset":887,"count":0},{"startOffset":919,"endOffset":951,"count":0},{"startOffset":1030,"endOffset":1061,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":1139,"endOffset":1178,"count":1}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":1182,"endOffset":1562,"count":1},{"startOffset":1306,"endOffset":1331,"count":0},{"startOffset":1370,"endOffset":1491,"count":0}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":1566,"endOffset":3322,"count":0}],"isBlockCoverage":false}]},{"scriptId":"193","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/classes/range.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13989,"count":1}],"isBlockCoverage":true},{"functionName":"Range","ranges":[{"startOffset":55,"endOffset":1826,"count":1},{"startOffset":155,"endOffset":379,"count":0},{"startOffset":418,"endOffset":562,"count":0},{"startOffset":1162,"endOffset":1229,"count":0},{"startOffset":1330,"endOffset":1803,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":857,"endOffset":895,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1120,"endOffset":1133,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1456,"endOffset":1477,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":1830,"endOffset":1996,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1879,"endOffset":1937,"count":1}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":2000,"endOffset":2039,"count":0}],"isBlockCoverage":false},{"functionName":"parseRange","ranges":[{"startOffset":2043,"endOffset":4217,"count":1},{"startOffset":2364,"endOffset":2377,"count":0},{"startOffset":2481,"endOffset":2505,"count":0},{"startOffset":3187,"endOffset":3210,"count":0},{"startOffset":3559,"endOffset":3589,"count":0},{"startOffset":3992,"endOffset":4005,"count":0},{"startOffset":4075,"endOffset":4094,"count":0},{"startOffset":4102,"endOffset":4121,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3287,"endOffset":3330,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3416,"endOffset":3455,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3561,"endOffset":3589,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3592,"endOffset":3602,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3615,"endOffset":3657,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":4221,"endOffset":4851,"count":0}],"isBlockCoverage":false},{"functionName":"test","ranges":[{"startOffset":4919,"endOffset":5301,"count":1},{"startOffset":4954,"endOffset":4980,"count":0},{"startOffset":5093,"endOffset":5134,"count":0},{"startOffset":5280,"endOffset":5300,"count":0}],"isBlockCoverage":true},{"functionName":"isNullSet","ranges":[{"startOffset":5710,"endOffset":5737,"count":1}],"isBlockCoverage":true},{"functionName":"isAny","ranges":[{"startOffset":5752,"endOffset":5771,"count":0}],"isBlockCoverage":false},{"functionName":"isSatisfiable","ranges":[{"startOffset":5893,"endOffset":6299,"count":0}],"isBlockCoverage":false},{"functionName":"parseComparator","ranges":[{"startOffset":6469,"endOffset":6782,"count":1}],"isBlockCoverage":true},{"functionName":"isX","ranges":[{"startOffset":6796,"endOffset":6847,"count":3}],"isBlockCoverage":true},{"functionName":"replaceTildes","ranges":[{"startOffset":7152,"endOffset":7267,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7202,"endOffset":7256,"count":1}],"isBlockCoverage":true},{"functionName":"replaceTilde","ranges":[{"startOffset":7290,"endOffset":7964,"count":1},{"startOffset":7337,"endOffset":7355,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7395,"endOffset":7961,"count":0}],"isBlockCoverage":false},{"functionName":"replaceCarets","ranges":[{"startOffset":8195,"endOffset":8310,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8245,"endOffset":8299,"count":1}],"isBlockCoverage":true},{"functionName":"replaceCaret","ranges":[{"startOffset":8333,"endOffset":9635,"count":1},{"startOffset":8412,"endOffset":8430,"count":0},{"startOffset":8483,"endOffset":8489,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8520,"endOffset":9632,"count":0}],"isBlockCoverage":false},{"functionName":"replaceXRanges","ranges":[{"startOffset":9660,"endOffset":9821,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9753,"endOffset":9808,"count":1}],"isBlockCoverage":true},{"functionName":"replaceXRange","ranges":[{"startOffset":9845,"endOffset":11535,"count":1},{"startOffset":9913,"endOffset":9932,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9973,"endOffset":11532,"count":1},{"startOffset":10173,"endOffset":10180,"count":0},{"startOffset":10182,"endOffset":10205,"count":0},{"startOffset":10370,"endOffset":10376,"count":0},{"startOffset":10395,"endOffset":10572,"count":0},{"startOffset":10596,"endOffset":11330,"count":0},{"startOffset":11344,"endOffset":11398,"count":0},{"startOffset":11412,"endOffset":11479,"count":0}],"isBlockCoverage":true},{"functionName":"replaceStars","ranges":[{"startOffset":11681,"endOffset":11856,"count":1}],"isBlockCoverage":true},{"functionName":"replaceGTE0","ranges":[{"startOffset":11878,"endOffset":12028,"count":1},{"startOffset":12000,"endOffset":12011,"count":0}],"isBlockCoverage":true},{"functionName":"hyphenReplace","ranges":[{"startOffset":12270,"endOffset":12946,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":12279,"endOffset":12946,"count":0}],"isBlockCoverage":false},{"functionName":"testSet","ranges":[{"startOffset":12964,"endOffset":13988,"count":1},{"startOffset":13065,"endOffset":13091,"count":0},{"startOffset":13129,"endOffset":13158,"count":0},{"startOffset":13160,"endOffset":13971,"count":0}],"isBlockCoverage":true}]},{"scriptId":"194","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/lru-cache/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8186,"count":1}],"isBlockCoverage":true},{"functionName":"naiveLength","ranges":[{"startOffset":510,"endOffset":517,"count":1}],"isBlockCoverage":true},{"functionName":"LRUCache","ranges":[{"startOffset":853,"endOffset":1751,"count":1},{"startOffset":920,"endOffset":946,"count":0},{"startOffset":972,"endOffset":984,"count":0},{"startOffset":1069,"endOffset":1125,"count":0},{"startOffset":1235,"endOffset":1246,"count":0},{"startOffset":1350,"endOffset":1363,"count":0},{"startOffset":1439,"endOffset":1476,"count":0},{"startOffset":1484,"endOffset":1530,"count":0}],"isBlockCoverage":true},{"functionName":"set max","ranges":[{"startOffset":1799,"endOffset":1969,"count":0}],"isBlockCoverage":false},{"functionName":"get max","ranges":[{"startOffset":1972,"endOffset":2009,"count":0}],"isBlockCoverage":false},{"functionName":"set allowStale","ranges":[{"startOffset":2013,"endOffset":2083,"count":0}],"isBlockCoverage":false},{"functionName":"get allowStale","ranges":[{"startOffset":2086,"endOffset":2138,"count":0}],"isBlockCoverage":false},{"functionName":"set maxAge","ranges":[{"startOffset":2142,"endOffset":2300,"count":0}],"isBlockCoverage":false},{"functionName":"get maxAge","ranges":[{"startOffset":2303,"endOffset":2347,"count":0}],"isBlockCoverage":false},{"functionName":"set lengthCalculator","ranges":[{"startOffset":2408,"endOffset":2765,"count":0}],"isBlockCoverage":false},{"functionName":"get lengthCalculator","ranges":[{"startOffset":2768,"endOffset":2826,"count":0}],"isBlockCoverage":false},{"functionName":"get length","ranges":[{"startOffset":2830,"endOffset":2867,"count":0}],"isBlockCoverage":false},{"functionName":"get itemCount","ranges":[{"startOffset":2870,"endOffset":2919,"count":0}],"isBlockCoverage":false},{"functionName":"rforEach","ranges":[{"startOffset":2923,"endOffset":3138,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":3142,"endOffset":3356,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":3360,"endOffset":3425,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":3429,"endOffset":3498,"count":0}],"isBlockCoverage":false},{"functionName":"reset","ranges":[{"startOffset":3502,"endOffset":3858,"count":1},{"startOffset":3535,"endOffset":3560,"count":0},{"startOffset":3561,"endOffset":3593,"count":0},{"startOffset":3595,"endOffset":3673,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3626,"endOffset":3666,"count":0}],"isBlockCoverage":false},{"functionName":"dump","ranges":[{"startOffset":3862,"endOffset":4064,"count":0}],"isBlockCoverage":false},{"functionName":"dumpLru","ranges":[{"startOffset":4068,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":4114,"endOffset":5376,"count":1},{"startOffset":4194,"endOffset":4223,"count":0},{"startOffset":4231,"endOffset":4277,"count":0},{"startOffset":4302,"endOffset":4314,"count":0},{"startOffset":4402,"endOffset":4996,"count":0},{"startOffset":5145,"endOffset":5231,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":5380,"endOffset":5513,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5517,"endOffset":5564,"count":1}],"isBlockCoverage":true},{"functionName":"peek","ranges":[{"startOffset":5568,"endOffset":5617,"count":0}],"isBlockCoverage":false},{"functionName":"pop","ranges":[{"startOffset":5621,"endOffset":5746,"count":0}],"isBlockCoverage":false},{"functionName":"del","ranges":[{"startOffset":5750,"endOffset":5801,"count":0}],"isBlockCoverage":false},{"functionName":"load","ranges":[{"startOffset":5805,"endOffset":6378,"count":0}],"isBlockCoverage":false},{"functionName":"prune","ranges":[{"startOffset":6382,"endOffset":6459,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6475,"endOffset":6871,"count":1},{"startOffset":6547,"endOffset":6869,"count":0}],"isBlockCoverage":true},{"functionName":"isStale","ranges":[{"startOffset":6889,"endOffset":7094,"count":0}],"isBlockCoverage":false},{"functionName":"trim","ranges":[{"startOffset":7109,"endOffset":7497,"count":1},{"startOffset":7151,"endOffset":7495,"count":0}],"isBlockCoverage":true},{"functionName":"del","ranges":[{"startOffset":7511,"endOffset":7738,"count":0}],"isBlockCoverage":false},{"functionName":"Entry","ranges":[{"startOffset":7756,"endOffset":7923,"count":1}],"isBlockCoverage":true},{"functionName":"forEachStep","ranges":[{"startOffset":7947,"endOffset":8158,"count":0}],"isBlockCoverage":false}]},{"scriptId":"195","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/yallist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8411,"count":1},{"startOffset":8397,"endOffset":8410,"count":0}],"isBlockCoverage":true},{"functionName":"Yallist","ranges":[{"startOffset":85,"endOffset":517,"count":1},{"startOffset":163,"endOffset":193,"count":0},{"startOffset":263,"endOffset":300,"count":0},{"startOffset":302,"endOffset":371,"count":0},{"startOffset":403,"endOffset":500,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":321,"endOffset":366,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.removeNode","ranges":[{"startOffset":550,"endOffset":1001,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshiftNode","ranges":[{"startOffset":1035,"endOffset":1334,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.pushNode","ranges":[{"startOffset":1365,"endOffset":1664,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.push","ranges":[{"startOffset":1691,"endOffset":1814,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.unshift","ranges":[{"startOffset":1844,"endOffset":1970,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.pop","ranges":[{"startOffset":1996,"endOffset":2224,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.shift","ranges":[{"startOffset":2252,"endOffset":2480,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEach","ranges":[{"startOffset":2510,"endOffset":2691,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.forEachReverse","ranges":[{"startOffset":2728,"endOffset":2923,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.get","ranges":[{"startOffset":2949,"endOffset":3182,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.getReverse","ranges":[{"startOffset":3215,"endOffset":3448,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.map","ranges":[{"startOffset":3474,"endOffset":3690,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.mapReverse","ranges":[{"startOffset":3723,"endOffset":3939,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduce","ranges":[{"startOffset":3968,"endOffset":4363,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reduceReverse","ranges":[{"startOffset":4399,"endOffset":4808,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArray","ranges":[{"startOffset":4838,"endOffset":5018,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.toArrayReverse","ranges":[{"startOffset":5055,"endOffset":5235,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.slice","ranges":[{"startOffset":5263,"endOffset":5790,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.sliceReverse","ranges":[{"startOffset":5825,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.splice","ranges":[{"startOffset":6391,"endOffset":7034,"count":0}],"isBlockCoverage":false},{"functionName":"Yallist.reverse","ranges":[{"startOffset":7064,"endOffset":7322,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":7324,"endOffset":7643,"count":0}],"isBlockCoverage":false},{"functionName":"push","ranges":[{"startOffset":7645,"endOffset":7793,"count":0}],"isBlockCoverage":false},{"functionName":"unshift","ranges":[{"startOffset":7795,"endOffset":7946,"count":1}],"isBlockCoverage":true},{"functionName":"Node","ranges":[{"startOffset":7948,"endOffset":8300,"count":1},{"startOffset":8021,"endOffset":8071,"count":0},{"startOffset":8126,"endOffset":8173,"count":0},{"startOffset":8219,"endOffset":8266,"count":0}],"isBlockCoverage":true}]},{"scriptId":"196","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/yallist/iterator.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":207,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":30,"endOffset":206,"count":1}],"isBlockCoverage":true},{"functionName":"Yallist.","ranges":[{"startOffset":90,"endOffset":204,"count":0}],"isBlockCoverage":false}]},{"scriptId":"197","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/functions/satisfies.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":233,"count":1}],"isBlockCoverage":true},{"functionName":"satisfies","ranges":[{"startOffset":60,"endOffset":205,"count":1},{"startOffset":141,"endOffset":174,"count":0}],"isBlockCoverage":true}]},{"scriptId":"198","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/to-comparators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":268,"count":1}],"isBlockCoverage":true},{"functionName":"toComparators","ranges":[{"startOffset":115,"endOffset":235,"count":0}],"isBlockCoverage":false}]},{"scriptId":"199","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/max-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":579,"count":1}],"isBlockCoverage":true},{"functionName":"maxSatisfying","ranges":[{"startOffset":109,"endOffset":547,"count":0}],"isBlockCoverage":false}]},{"scriptId":"200","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-satisfying.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":577,"count":1}],"isBlockCoverage":true},{"functionName":"minSatisfying","ranges":[{"startOffset":108,"endOffset":545,"count":0}],"isBlockCoverage":false}]},{"scriptId":"201","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/min-version.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1492,"count":1}],"isBlockCoverage":true},{"functionName":"minVersion","ranges":[{"startOffset":144,"endOffset":1463,"count":0}],"isBlockCoverage":false}]},{"scriptId":"202","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/valid.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":312,"count":1}],"isBlockCoverage":true},{"functionName":"validRange","ranges":[{"startOffset":61,"endOffset":283,"count":0}],"isBlockCoverage":false}]},{"scriptId":"203","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/outside.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2188,"count":1}],"isBlockCoverage":true},{"functionName":"outside","ranges":[{"startOffset":388,"endOffset":2161,"count":0}],"isBlockCoverage":false}]},{"scriptId":"204","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/gtr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":217,"count":1}],"isBlockCoverage":true},{"functionName":"gtr","ranges":[{"startOffset":129,"endOffset":195,"count":0}],"isBlockCoverage":false}]},{"scriptId":"205","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/ltr.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":213,"count":1}],"isBlockCoverage":true},{"functionName":"ltr","ranges":[{"startOffset":125,"endOffset":191,"count":0}],"isBlockCoverage":false}]},{"scriptId":"206","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/intersects.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":201,"count":1}],"isBlockCoverage":true},{"functionName":"intersects","ranges":[{"startOffset":61,"endOffset":172,"count":0}],"isBlockCoverage":false}]},{"scriptId":"207","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/simplify.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1287,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":329,"endOffset":1286,"count":0}],"isBlockCoverage":false}]},{"scriptId":"208","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/semver/ranges/subset.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7224,"count":1}],"isBlockCoverage":true},{"functionName":"subset","ranges":[{"startOffset":1996,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"simpleSubset","ranges":[{"startOffset":2726,"endOffset":6700,"count":0}],"isBlockCoverage":false},{"functionName":"higherGT","ranges":[{"startOffset":6751,"endOffset":6949,"count":0}],"isBlockCoverage":false},{"functionName":"lowerLT","ranges":[{"startOffset":7000,"endOffset":7198,"count":0}],"isBlockCoverage":false}]},{"scriptId":"209","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/binary.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1697,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":1534,"endOffset":1695,"count":1}],"isBlockCoverage":true}]},{"scriptId":"210","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/node-ejdb-lite/src/bindings/ejdb2_node/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1579,"count":1},{"startOffset":1483,"endOffset":1510,"count":0}],"isBlockCoverage":true}]},{"scriptId":"211","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":95,"count":1}],"isBlockCoverage":true}]},{"scriptId":"212","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/convert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4855,"count":1}],"isBlockCoverage":true},{"functionName":"parseQuery","ranges":[{"startOffset":0,"endOffset":2315,"count":35},{"startOffset":43,"endOffset":77,"count":27},{"startOffset":79,"endOffset":138,"count":8},{"startOffset":138,"endOffset":2314,"count":27}],"isBlockCoverage":true},{"functionName":"subQuery","ranges":[{"startOffset":183,"endOffset":525,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":556,"endOffset":2252,"count":27},{"startOffset":588,"endOffset":645,"count":0},{"startOffset":671,"endOffset":729,"count":0},{"startOffset":1036,"endOffset":1352,"count":0},{"startOffset":1731,"endOffset":1809,"count":0},{"startOffset":1835,"endOffset":1918,"count":0},{"startOffset":1956,"endOffset":1995,"count":0},{"startOffset":2035,"endOffset":2085,"count":0},{"startOffset":2122,"endOffset":2161,"count":0},{"startOffset":2198,"endOffset":2248,"count":0}],"isBlockCoverage":true},{"functionName":"parseEquality","ranges":[{"startOffset":758,"endOffset":917,"count":162},{"startOffset":853,"endOffset":916,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1186,"endOffset":1344,"count":0}],"isBlockCoverage":false},{"functionName":"parseFields","ranges":[{"startOffset":2317,"endOffset":2689,"count":35},{"startOffset":2421,"endOffset":2688,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2440,"endOffset":2615,"count":0}],"isBlockCoverage":false},{"functionName":"parseOrder","ranges":[{"startOffset":2691,"endOffset":3464,"count":35},{"startOffset":2792,"endOffset":3463,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2810,"endOffset":3039,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3075,"endOffset":3388,"count":0}],"isBlockCoverage":false},{"functionName":"convert","ranges":[{"startOffset":3466,"endOffset":4827,"count":35},{"startOffset":4118,"endOffset":4386,"count":0},{"startOffset":4423,"endOffset":4696,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4736,"endOffset":4750,"count":105}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4756,"endOffset":4775,"count":35}],"isBlockCoverage":true}]},{"scriptId":"213","url":"file:///home/mark/Synced/Projects/canhazdb/server2/node_modules/mql-to-jql/createQuery.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":452,"count":1}],"isBlockCoverage":true},{"functionName":"createQuery","ranges":[{"startOffset":0,"endOffset":420,"count":35}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":120,"endOffset":403,"count":54},{"startOffset":229,"endOffset":399,"count":0}],"isBlockCoverage":true}]},{"scriptId":"214","url":"tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10936,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3218,"endOffset":3282,"count":0}],"isBlockCoverage":false},{"functionName":"cacheRootCertificates","ranges":[{"startOffset":3310,"endOffset":3404,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3508,"endOffset":3659,"count":38},{"startOffset":3602,"endOffset":3626,"count":1}],"isBlockCoverage":true},{"functionName":"convertProtocols","ranges":[{"startOffset":3769,"endOffset":4366,"count":0}],"isBlockCoverage":false},{"functionName":"convertALPNProtocols","ranges":[{"startOffset":4399,"endOffset":4736,"count":0}],"isBlockCoverage":false},{"functionName":"unfqdn","ranges":[{"startOffset":4739,"endOffset":4799,"count":90}],"isBlockCoverage":true},{"functionName":"toLowerCase","ranges":[{"startOffset":4907,"endOffset":5001,"count":0}],"isBlockCoverage":false},{"functionName":"splitHost","ranges":[{"startOffset":5003,"endOffset":5140,"count":60}],"isBlockCoverage":true},{"functionName":"check","ranges":[{"startOffset":5142,"endOffset":7004,"count":30},{"startOffset":5265,"endOffset":5278,"count":0},{"startOffset":5376,"endOffset":5389,"count":0},{"startOffset":5488,"endOffset":5501,"count":0},{"startOffset":5856,"endOffset":5869,"count":0},{"startOffset":5971,"endOffset":6038,"count":0},{"startOffset":6424,"endOffset":6460,"count":0},{"startOffset":6508,"endOffset":7003,"count":0}],"isBlockCoverage":true},{"functionName":"isBad","ranges":[{"startOffset":5784,"endOffset":5818,"count":30}],"isBlockCoverage":true},{"functionName":"checkServerIdentity","ranges":[{"startOffset":7067,"endOffset":9523,"count":30},{"startOffset":7296,"endOffset":8182,"count":0},{"startOffset":8430,"endOffset":8649,"count":0},{"startOffset":8817,"endOffset":9074,"count":0},{"startOffset":9223,"endOffset":9249,"count":0},{"startOffset":9326,"endOffset":9380,"count":0},{"startOffset":9390,"endOffset":9431,"count":0},{"startOffset":9447,"endOffset":9521,"count":0}],"isBlockCoverage":true},{"functionName":"wildcard","ranges":[{"startOffset":8749,"endOffset":8793,"count":30}],"isBlockCoverage":true},{"functionName":"noWildcard","ranges":[{"startOffset":8844,"endOffset":8889,"count":0}],"isBlockCoverage":false},{"functionName":"SecurePair","ranges":[{"startOffset":9569,"endOffset":10165,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":10169,"endOffset":10244,"count":0}],"isBlockCoverage":false},{"functionName":"createSecurePair","ranges":[{"startOffset":10762,"endOffset":10838,"count":0}],"isBlockCoverage":false}]},{"scriptId":"215","url":"internal/tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":671,"count":1}],"isBlockCoverage":false},{"functionName":"parseCertString","ranges":[{"startOffset":164,"endOffset":629,"count":120},{"startOffset":264,"endOffset":613,"count":600},{"startOffset":441,"endOffset":562,"count":0}],"isBlockCoverage":true}]},{"scriptId":"216","url":"internal/streams/duplexpair.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":975,"count":1}],"isBlockCoverage":false},{"functionName":"DuplexSocket","ranges":[{"startOffset":203,"endOffset":292,"count":0}],"isBlockCoverage":false},{"functionName":"_read","ranges":[{"startOffset":296,"endOffset":421,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":425,"endOffset":629,"count":0}],"isBlockCoverage":false},{"functionName":"_final","ranges":[{"startOffset":633,"endOffset":730,"count":0}],"isBlockCoverage":false},{"functionName":"DuplexPair","ranges":[{"startOffset":755,"endOffset":942,"count":0}],"isBlockCoverage":false}]},{"scriptId":"217","url":"_tls_common.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11156,"count":1}],"isBlockCoverage":false},{"functionName":"toV","ranges":[{"startOffset":1778,"endOffset":2071,"count":74},{"startOffset":1855,"endOffset":1875,"count":0},{"startOffset":1899,"endOffset":1921,"count":0},{"startOffset":1945,"endOffset":2013,"count":37},{"startOffset":2013,"endOffset":2070,"count":0}],"isBlockCoverage":true},{"functionName":"SecureContext","ranges":[{"startOffset":2147,"endOffset":2921,"count":37},{"startOffset":2267,"endOffset":2386,"count":0},{"startOffset":2410,"endOffset":2629,"count":0},{"startOffset":2880,"endOffset":2919,"count":7}],"isBlockCoverage":true},{"functionName":"validateKeyOrCertOption","ranges":[{"startOffset":2923,"endOffset":3174,"count":111},{"startOffset":3033,"endOffset":3172,"count":0}],"isBlockCoverage":true},{"functionName":"createSecureContext","ranges":[{"startOffset":3247,"endOffset":10200,"count":37},{"startOffset":3303,"endOffset":3316,"count":0},{"startOffset":3399,"endOffset":3448,"count":7},{"startOffset":3852,"endOffset":3937,"count":0},{"startOffset":3941,"endOffset":3982,"count":0},{"startOffset":4054,"endOffset":4179,"count":0},{"startOffset":4604,"endOffset":4880,"count":0},{"startOffset":5047,"endOffset":5301,"count":0},{"startOffset":5407,"endOffset":6582,"count":0},{"startOffset":6606,"endOffset":6644,"count":30},{"startOffset":6646,"endOffset":6740,"count":0},{"startOffset":7067,"endOffset":7089,"count":7},{"startOffset":7329,"endOffset":7349,"count":0},{"startOffset":7351,"endOffset":7543,"count":0},{"startOffset":7651,"endOffset":7694,"count":0},{"startOffset":7695,"endOffset":7744,"count":0},{"startOffset":7750,"endOffset":7788,"count":0},{"startOffset":7814,"endOffset":7857,"count":0},{"startOffset":7858,"endOffset":7907,"count":0},{"startOffset":7913,"endOffset":7951,"count":0},{"startOffset":8043,"endOffset":8120,"count":0},{"startOffset":8145,"endOffset":8281,"count":0},{"startOffset":8302,"endOffset":8478,"count":0},{"startOffset":8512,"endOffset":8578,"count":7},{"startOffset":8599,"endOffset":9284,"count":0},{"startOffset":9474,"endOffset":9539,"count":30},{"startOffset":9593,"endOffset":9767,"count":0},{"startOffset":9811,"endOffset":10009,"count":0},{"startOffset":10037,"endOffset":10091,"count":0},{"startOffset":10123,"endOffset":10185,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7139,"endOffset":7215,"count":888},{"startOffset":7164,"endOffset":7215,"count":777}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7266,"endOffset":7289,"count":888}],"isBlockCoverage":true},{"functionName":"translatePeerCertificate","ranges":[{"startOffset":10475,"endOffset":11154,"count":60},{"startOffset":10528,"endOffset":10540,"count":0},{"startOffset":10668,"endOffset":10746,"count":30},{"startOffset":10840,"endOffset":11140,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10994,"endOffset":11134,"count":0}],"isBlockCoverage":false}]},{"scriptId":"218","url":"_tls_wrap.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":47991,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1763,"endOffset":1788,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3528,"endOffset":3536,"count":30}],"isBlockCoverage":true},{"functionName":"onhandshakestart","ranges":[{"startOffset":3712,"endOffset":4495,"count":30},{"startOffset":4072,"endOffset":4493,"count":0}],"isBlockCoverage":true},{"functionName":"onhandshakedone","ranges":[{"startOffset":4497,"endOffset":4790,"count":30},{"startOffset":4714,"endOffset":4764,"count":0}],"isBlockCoverage":true},{"functionName":"loadSession","ranges":[{"startOffset":4793,"endOffset":5997,"count":0}],"isBlockCoverage":false},{"functionName":"loadSNI","ranges":[{"startOffset":6000,"endOffset":6653,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSP","ranges":[{"startOffset":6656,"endOffset":7978,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSPDone","ranges":[{"startOffset":7980,"endOffset":8175,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsessionclient","ranges":[{"startOffset":8177,"endOffset":8413,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsession","ranges":[{"startOffset":8415,"endOffset":9251,"count":0}],"isBlockCoverage":false},{"functionName":"onPskServerCallback","ranges":[{"startOffset":9253,"endOffset":9901,"count":0}],"isBlockCoverage":false},{"functionName":"onPskClientCallback","ranges":[{"startOffset":9903,"endOffset":10667,"count":0}],"isBlockCoverage":false},{"functionName":"onkeylog","ranges":[{"startOffset":10669,"endOffset":10760,"count":0}],"isBlockCoverage":false},{"functionName":"onocspresponse","ranges":[{"startOffset":10762,"endOffset":10878,"count":0}],"isBlockCoverage":false},{"functionName":"onerror","ranges":[{"startOffset":10880,"endOffset":11656,"count":0}],"isBlockCoverage":false},{"functionName":"initRead","ranges":[{"startOffset":11800,"endOffset":12346,"count":60},{"startOffset":11901,"endOffset":11911,"count":30},{"startOffset":11912,"endOffset":11922,"count":30},{"startOffset":11994,"endOffset":12018,"count":30},{"startOffset":12109,"endOffset":12116,"count":0},{"startOffset":12197,"endOffset":12221,"count":30},{"startOffset":12223,"endOffset":12322,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket","ranges":[{"startOffset":12424,"endOffset":14710,"count":60},{"startOffset":12616,"endOffset":12636,"count":0},{"startOffset":12638,"endOffset":12806,"count":0},{"startOffset":12810,"endOffset":12949,"count":0},{"startOffset":12987,"endOffset":13050,"count":0},{"startOffset":13525,"endOffset":13542,"count":30},{"startOffset":13544,"endOffset":13554,"count":30},{"startOffset":13674,"endOffset":13995,"count":0},{"startOffset":14206,"endOffset":14228,"count":30},{"startOffset":14229,"endOffset":14255,"count":30},{"startOffset":14546,"endOffset":14561,"count":0},{"startOffset":14567,"endOffset":14594,"count":0}],"isBlockCoverage":true},{"functionName":"makeMethodProxy","ranges":[{"startOffset":15153,"endOffset":15320,"count":15}],"isBlockCoverage":true},{"functionName":"methodProxy","ranges":[{"startOffset":15195,"endOffset":15317,"count":30}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":15487,"endOffset":16180,"count":60},{"startOffset":16011,"endOffset":16055,"count":30},{"startOffset":16057,"endOffset":16179,"count":30}],"isBlockCoverage":true},{"functionName":"done","ranges":[{"startOffset":15768,"endOffset":15985,"count":60},{"startOffset":15855,"endOffset":15951,"count":30}],"isBlockCoverage":true},{"functionName":"disableRenegotiation","ranges":[{"startOffset":16226,"endOffset":16299,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._wrapHandle","ranges":[{"startOffset":16336,"endOffset":17339,"count":60},{"startOffset":16384,"endOffset":16406,"count":30},{"startOffset":16459,"endOffset":16600,"count":30},{"startOffset":16487,"endOffset":16525,"count":0},{"startOffset":16668,"endOffset":16708,"count":0},{"startOffset":16709,"endOffset":16762,"count":0},{"startOffset":16883,"endOffset":16938,"count":0}],"isBlockCoverage":true},{"functionName":"defineHandleReading","ranges":[{"startOffset":17478,"endOffset":17699,"count":60}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":17578,"endOffset":17626,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17637,"endOffset":17691,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketCloseDestroySSL","ranges":[{"startOffset":17701,"endOffset":17848,"count":60}],"isBlockCoverage":true},{"functionName":"destroySSL","ranges":[{"startOffset":17850,"endOffset":17901,"count":60}],"isBlockCoverage":true},{"functionName":"_destroySSL","ranges":[{"startOffset":17937,"endOffset":18229,"count":60},{"startOffset":17986,"endOffset":18228,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._init","ranges":[{"startOffset":18368,"endOffset":23192,"count":60},{"startOffset":18535,"endOffset":18545,"count":30},{"startOffset":18546,"endOffset":18556,"count":30},{"startOffset":18748,"endOffset":18768,"count":0},{"startOffset":18932,"endOffset":18953,"count":0},{"startOffset":19400,"endOffset":19992,"count":30},{"startOffset":19786,"endOffset":19898,"count":0},{"startOffset":19963,"endOffset":19982,"count":0},{"startOffset":19992,"endOffset":20637,"count":30},{"startOffset":20212,"endOffset":20244,"count":0},{"startOffset":20656,"endOffset":21199,"count":0},{"startOffset":21382,"endOffset":21410,"count":30},{"startOffset":21411,"endOffset":21519,"count":30},{"startOffset":21521,"endOffset":21650,"count":0},{"startOffset":21681,"endOffset":21857,"count":0},{"startOffset":21885,"endOffset":21909,"count":0},{"startOffset":21911,"endOffset":22610,"count":0},{"startOffset":22653,"endOffset":22716,"count":30},{"startOffset":22754,"endOffset":23027,"count":30},{"startOffset":23069,"endOffset":23190,"count":30}],"isBlockCoverage":true},{"functionName":"keylogNewListener","ranges":[{"startOffset":19143,"endOffset":19374,"count":570},{"startOffset":19220,"endOffset":19373,"count":0}],"isBlockCoverage":true},{"functionName":"ssl.onhandshakedone","ranges":[{"startOffset":20059,"endOffset":20137,"count":30}],"isBlockCoverage":true},{"functionName":"newListener","ranges":[{"startOffset":20399,"endOffset":20633,"count":360},{"startOffset":20475,"endOffset":20632,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":20889,"endOffset":21193,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22949,"endOffset":23021,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23092,"endOffset":23124,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.renegotiate","ranges":[{"startOffset":23229,"endOffset":24588,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.exportKeyingMaterial","ranges":[{"startOffset":24634,"endOffset":24956,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxSendFragment","ranges":[{"startOffset":25000,"endOffset":25091,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._handleTimeout","ranges":[{"startOffset":25131,"endOffset":25200,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._emitTLSError","ranges":[{"startOffset":25239,"endOffset":25325,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._tlsError","ranges":[{"startOffset":25360,"endOffset":25468,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._releaseControl","ranges":[{"startOffset":25509,"endOffset":25665,"count":60},{"startOffset":25555,"endOffset":25568,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._finishInit","ranges":[{"startOffset":25702,"endOffset":26761,"count":60},{"startOffset":26182,"endOffset":26189,"count":0},{"startOffset":26479,"endOffset":26489,"count":30},{"startOffset":26490,"endOffset":26500,"count":30},{"startOffset":26696,"endOffset":26736,"count":30}],"isBlockCoverage":true},{"functionName":"TLSSocket._start","ranges":[{"startOffset":26793,"endOffset":27292,"count":30},{"startOffset":26861,"endOffset":26871,"count":0},{"startOffset":27043,"endOffset":27099,"count":0},{"startOffset":27190,"endOffset":27197,"count":0},{"startOffset":27239,"endOffset":27266,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.setServername","ranges":[{"startOffset":27331,"endOffset":27499,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.setSession","ranges":[{"startOffset":27535,"endOffset":27673,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.getPeerCertificate","ranges":[{"startOffset":27717,"endOffset":27881,"count":30},{"startOffset":27853,"endOffset":27858,"count":0},{"startOffset":27863,"endOffset":27880,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.getCertificate","ranges":[{"startOffset":27921,"endOffset":28127,"count":0}],"isBlockCoverage":false},{"functionName":"makeSocketMethodProxy","ranges":[{"startOffset":28164,"endOffset":28354,"count":10}],"isBlockCoverage":true},{"functionName":"socketMethodProxy","ranges":[{"startOffset":28212,"endOffset":28351,"count":60},{"startOffset":28330,"endOffset":28350,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":28557,"endOffset":28635,"count":10}],"isBlockCoverage":true},{"functionName":"onServerSocketSecure","ranges":[{"startOffset":28677,"endOffset":29172,"count":30},{"startOffset":28811,"endOffset":28929,"count":0}],"isBlockCoverage":true},{"functionName":"onSocketTLSError","ranges":[{"startOffset":29174,"endOffset":29410,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketKeylog","ranges":[{"startOffset":29412,"endOffset":29499,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketClose","ranges":[{"startOffset":29501,"endOffset":29854,"count":30},{"startOffset":29602,"endOffset":29609,"count":0},{"startOffset":29661,"endOffset":29684,"count":0},{"startOffset":29686,"endOffset":29852,"count":0}],"isBlockCoverage":true},{"functionName":"tlsConnectionListener","ranges":[{"startOffset":29856,"endOffset":30705,"count":30},{"startOffset":30552,"endOffset":30588,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":33471,"endOffset":35377,"count":7},{"startOffset":33545,"endOffset":33582,"count":0},{"startOffset":33621,"endOffset":33668,"count":0},{"startOffset":33750,"endOffset":33755,"count":0},{"startOffset":33760,"endOffset":33837,"count":0},{"startOffset":34014,"endOffset":34059,"count":0},{"startOffset":34091,"endOffset":34128,"count":0},{"startOffset":34163,"endOffset":34217,"count":0},{"startOffset":34516,"endOffset":34628,"count":0},{"startOffset":34655,"endOffset":34698,"count":0},{"startOffset":34700,"endOffset":34804,"count":0},{"startOffset":34831,"endOffset":34874,"count":0},{"startOffset":34876,"endOffset":34980,"count":0},{"startOffset":35010,"endOffset":35055,"count":0},{"startOffset":35057,"endOffset":35184,"count":0}],"isBlockCoverage":true},{"functionName":"createServer","ranges":[{"startOffset":35531,"endOffset":35615,"count":7}],"isBlockCoverage":true},{"functionName":"Server.setSecureContext","ranges":[{"startOffset":35655,"endOffset":38690,"count":7},{"startOffset":35734,"endOffset":35795,"count":0},{"startOffset":35820,"endOffset":35843,"count":0},{"startOffset":35924,"endOffset":35957,"count":0},{"startOffset":35989,"endOffset":36026,"count":0},{"startOffset":36117,"endOffset":36151,"count":0},{"startOffset":36189,"endOffset":36238,"count":0},{"startOffset":36329,"endOffset":36361,"count":0},{"startOffset":36393,"endOffset":36430,"count":0},{"startOffset":36502,"endOffset":36539,"count":0},{"startOffset":36615,"endOffset":36660,"count":0},{"startOffset":36729,"endOffset":36752,"count":0},{"startOffset":36849,"endOffset":36880,"count":0},{"startOffset":36985,"endOffset":37016,"count":0},{"startOffset":37105,"endOffset":37156,"count":0},{"startOffset":37277,"endOffset":37312,"count":0},{"startOffset":37389,"endOffset":37448,"count":0},{"startOffset":37713,"endOffset":37758,"count":0},{"startOffset":37790,"endOffset":37827,"count":0}],"isBlockCoverage":true},{"functionName":"Server._getServerData","ranges":[{"startOffset":38728,"endOffset":38811,"count":0}],"isBlockCoverage":false},{"functionName":"Server._setServerData","ranges":[{"startOffset":38849,"endOffset":38926,"count":0}],"isBlockCoverage":false},{"functionName":"getTicketKeys","ranges":[{"startOffset":38963,"endOffset":39043,"count":0}],"isBlockCoverage":false},{"functionName":"setTicketKeys","ranges":[{"startOffset":39080,"endOffset":39161,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39205,"endOffset":41320,"count":0}],"isBlockCoverage":false},{"functionName":"Server.addContext","ranges":[{"startOffset":41443,"endOffset":41808,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":41857,"endOffset":42091,"count":0}],"isBlockCoverage":false},{"functionName":"SNICallback","ranges":[{"startOffset":42094,"endOffset":42337,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeConnectArgs","ranges":[{"startOffset":42570,"endOffset":43298,"count":30},{"startOffset":43097,"endOffset":43142,"count":0},{"startOffset":43209,"endOffset":43254,"count":0},{"startOffset":43284,"endOffset":43295,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectSecure","ranges":[{"startOffset":43300,"endOffset":45064,"count":30},{"startOffset":43537,"endOffset":43573,"count":0},{"startOffset":43575,"endOffset":43731,"count":0},{"startOffset":44026,"endOffset":44088,"count":0},{"startOffset":44089,"endOffset":44122,"count":0},{"startOffset":44259,"endOffset":44689,"count":0},{"startOffset":44987,"endOffset":45017,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectEnd","ranges":[{"startOffset":45066,"endOffset":45615,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":45681,"endOffset":47989,"count":30},{"startOffset":47231,"endOffset":47281,"count":0},{"startOffset":47391,"endOffset":47427,"count":0},{"startOffset":47455,"endOffset":47833,"count":0},{"startOffset":47861,"endOffset":47878,"count":0}],"isBlockCoverage":true}]},{"scriptId":"219","url":"internal/js_stream_socket.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7449,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":335,"endOffset":364,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":693,"endOffset":756,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstart","ranges":[{"startOffset":758,"endOffset":823,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstop","ranges":[{"startOffset":825,"endOffset":888,"count":0}],"isBlockCoverage":false},{"functionName":"onshutdown","ranges":[{"startOffset":890,"endOffset":961,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":963,"endOffset":1040,"count":0}],"isBlockCoverage":false},{"functionName":"JSStreamSocket","ranges":[{"startOffset":1800,"endOffset":3495,"count":0}],"isBlockCoverage":false},{"functionName":"get StreamWrap","ranges":[{"startOffset":3635,"endOffset":3684,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":3688,"endOffset":3750,"count":0}],"isBlockCoverage":false},{"functionName":"readStart","ranges":[{"startOffset":3754,"endOffset":3811,"count":0}],"isBlockCoverage":false},{"functionName":"readStop","ranges":[{"startOffset":3815,"endOffset":3870,"count":0}],"isBlockCoverage":false},{"functionName":"doShutdown","ranges":[{"startOffset":3874,"endOffset":4870,"count":0}],"isBlockCoverage":false},{"functionName":"finishShutdown","ranges":[{"startOffset":4938,"endOffset":5230,"count":0}],"isBlockCoverage":false},{"functionName":"doWrite","ranges":[{"startOffset":5234,"endOffset":6156,"count":0}],"isBlockCoverage":false},{"functionName":"finishWrite","ranges":[{"startOffset":6224,"endOffset":6667,"count":0}],"isBlockCoverage":false},{"functionName":"doClose","ranges":[{"startOffset":6671,"endOffset":7412,"count":0}],"isBlockCoverage":false}]},{"scriptId":"220","url":"cluster.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1288,"count":1}],"isBlockCoverage":false}]},{"scriptId":"221","url":"internal/cluster/master.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10797,"count":1}],"isBlockCoverage":false},{"functionName":"cluster.setupMaster","ranges":[{"startOffset":1751,"endOffset":3368,"count":0}],"isBlockCoverage":false},{"functionName":"setupSettingsNT","ranges":[{"startOffset":3371,"endOffset":3444,"count":0}],"isBlockCoverage":false},{"functionName":"createWorkerProcess","ranges":[{"startOffset":3446,"endOffset":4850,"count":0}],"isBlockCoverage":false},{"functionName":"removeWorker","ranges":[{"startOffset":4852,"endOffset":5087,"count":0}],"isBlockCoverage":false},{"functionName":"removeHandlesForWorker","ranges":[{"startOffset":5089,"endOffset":5252,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.fork","ranges":[{"startOffset":5269,"endOffset":6877,"count":0}],"isBlockCoverage":false},{"functionName":"emitForkNT","ranges":[{"startOffset":6880,"endOffset":6943,"count":0}],"isBlockCoverage":false},{"functionName":"cluster.disconnect","ranges":[{"startOffset":6966,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"onmessage","ranges":[{"startOffset":7340,"endOffset":7763,"count":0}],"isBlockCoverage":false},{"functionName":"online","ranges":[{"startOffset":7765,"endOffset":7878,"count":0}],"isBlockCoverage":false},{"functionName":"exitedAfterDisconnect","ranges":[{"startOffset":7880,"endOffset":8008,"count":0}],"isBlockCoverage":false},{"functionName":"queryServer","ranges":[{"startOffset":8010,"endOffset":9580,"count":0}],"isBlockCoverage":false},{"functionName":"listening","ranges":[{"startOffset":9582,"endOffset":9862,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":10017,"endOffset":10179,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":10181,"endOffset":10285,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.disconnect","ranges":[{"startOffset":10387,"endOffset":10544,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.destroy","ranges":[{"startOffset":10574,"endOffset":10795,"count":0}],"isBlockCoverage":false}]},{"scriptId":"222","url":"child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20033,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1538,"endOffset":1567,"count":0}],"isBlockCoverage":false},{"functionName":"fork","ranges":[{"startOffset":2262,"endOffset":3916,"count":0}],"isBlockCoverage":false},{"functionName":"_forkChild","ranges":[{"startOffset":3918,"endOffset":4407,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeExecArgs","ranges":[{"startOffset":4409,"endOffset":4817,"count":0}],"isBlockCoverage":false},{"functionName":"exec","ranges":[{"startOffset":4820,"endOffset":5067,"count":0}],"isBlockCoverage":false},{"functionName":"customPromiseExecFunction","ranges":[{"startOffset":5103,"endOffset":5531,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5124,"endOffset":5528,"count":0}],"isBlockCoverage":false},{"functionName":"execFile","ranges":[{"startOffset":5648,"endOffset":10990,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeSpawnArguments","ranges":[{"startOffset":11114,"endOffset":15353,"count":0}],"isBlockCoverage":false},{"functionName":"spawn","ranges":[{"startOffset":15356,"endOffset":15558,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":15560,"endOffset":17046,"count":0}],"isBlockCoverage":false},{"functionName":"checkExecSyncError","ranges":[{"startOffset":17049,"endOffset":17478,"count":0}],"isBlockCoverage":false},{"functionName":"execFileSync","ranges":[{"startOffset":17481,"endOffset":17891,"count":0}],"isBlockCoverage":false},{"functionName":"execSync","ranges":[{"startOffset":17894,"endOffset":18270,"count":0}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":18273,"endOffset":18461,"count":0}],"isBlockCoverage":false},{"functionName":"validateMaxBuffer","ranges":[{"startOffset":18464,"endOffset":18737,"count":0}],"isBlockCoverage":false},{"functionName":"sanitizeKillSignal","ranges":[{"startOffset":18740,"endOffset":19103,"count":0}],"isBlockCoverage":false},{"functionName":"spawnWithSignal","ranges":[{"startOffset":19252,"endOffset":19886,"count":0}],"isBlockCoverage":false}]},{"scriptId":"223","url":"internal/child_process.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30647,"count":1}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2131,"endOffset":2190,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2197,"endOffset":2251,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2312,"endOffset":2379,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":2386,"endOffset":2527,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":2556,"endOffset":4110,"count":0}],"isBlockCoverage":false},{"functionName":"postSend","ranges":[{"startOffset":4117,"endOffset":4863,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":4870,"endOffset":5325,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5389,"endOffset":5448,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5455,"endOffset":5509,"count":0}],"isBlockCoverage":false},{"functionName":"send","ranges":[{"startOffset":5573,"endOffset":5693,"count":0}],"isBlockCoverage":false},{"functionName":"got","ranges":[{"startOffset":5700,"endOffset":5859,"count":0}],"isBlockCoverage":false},{"functionName":"stdioStringToArray","ranges":[{"startOffset":5868,"endOffset":6215,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess","ranges":[{"startOffset":6217,"endOffset":7562,"count":0}],"isBlockCoverage":false},{"functionName":"flushStdio","ranges":[{"startOffset":7685,"endOffset":8163,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":8166,"endOffset":8277,"count":0}],"isBlockCoverage":false},{"functionName":"getHandleWrapType","ranges":[{"startOffset":8280,"endOffset":8509,"count":0}],"isBlockCoverage":false},{"functionName":"closePendingHandle","ranges":[{"startOffset":8511,"endOffset":8624,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.spawn","ranges":[{"startOffset":8658,"endOffset":12526,"count":0}],"isBlockCoverage":false},{"functionName":"onErrorNT","ranges":[{"startOffset":12530,"endOffset":12591,"count":0}],"isBlockCoverage":false},{"functionName":"onSpawnNT","ranges":[{"startOffset":12594,"endOffset":12644,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.kill","ranges":[{"startOffset":12677,"endOffset":13342,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.ref","ranges":[{"startOffset":13375,"endOffset":13429,"count":0}],"isBlockCoverage":false},{"functionName":"ChildProcess.unref","ranges":[{"startOffset":13464,"endOffset":13520,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":13562,"endOffset":13619,"count":0}],"isBlockCoverage":false},{"functionName":"Control","ranges":[{"startOffset":13624,"endOffset":13692,"count":0}],"isBlockCoverage":false},{"functionName":"refCounted","ranges":[{"startOffset":14006,"endOffset":14114,"count":0}],"isBlockCoverage":false},{"functionName":"unrefCounted","ranges":[{"startOffset":14118,"endOffset":14256,"count":0}],"isBlockCoverage":false},{"functionName":"ref","ranges":[{"startOffset":14260,"endOffset":14331,"count":0}],"isBlockCoverage":false},{"functionName":"unref","ranges":[{"startOffset":14335,"endOffset":14410,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":14414,"endOffset":14485,"count":0}],"isBlockCoverage":false},{"functionName":"setupChannel","ranges":[{"startOffset":14635,"endOffset":26287,"count":0}],"isBlockCoverage":false},{"functionName":"isInternal","ranges":[{"startOffset":26322,"endOffset":26604,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":26606,"endOffset":26624,"count":0}],"isBlockCoverage":false},{"functionName":"getValidStdio","ranges":[{"startOffset":26626,"endOffset":29345,"count":0}],"isBlockCoverage":false},{"functionName":"getSocketList","ranges":[{"startOffset":29348,"endOffset":29664,"count":0}],"isBlockCoverage":false},{"functionName":"maybeClose","ranges":[{"startOffset":29667,"endOffset":29868,"count":0}],"isBlockCoverage":false},{"functionName":"spawnSync","ranges":[{"startOffset":29870,"endOffset":30522,"count":0}],"isBlockCoverage":false}]},{"scriptId":"224","url":"dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":27406,"count":1}],"isBlockCoverage":false},{"functionName":"Socket","ranges":[{"startOffset":2704,"endOffset":3981,"count":0}],"isBlockCoverage":false},{"functionName":"createSocket","ranges":[{"startOffset":4092,"endOffset":4170,"count":0}],"isBlockCoverage":false},{"functionName":"startListening","ranges":[{"startOffset":4173,"endOffset":4607,"count":0}],"isBlockCoverage":false},{"functionName":"replaceHandle","ranges":[{"startOffset":4609,"endOffset":5179,"count":0}],"isBlockCoverage":false},{"functionName":"bufferSize","ranges":[{"startOffset":5181,"endOffset":5473,"count":0}],"isBlockCoverage":false},{"functionName":"bindServerHandle","ranges":[{"startOffset":5540,"endOffset":5963,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.bind","ranges":[{"startOffset":5989,"endOffset":9579,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.connect","ranges":[{"startOffset":9609,"endOffset":10351,"count":0}],"isBlockCoverage":false},{"functionName":"_connect","ranges":[{"startOffset":10355,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"doConnect","ranges":[{"startOffset":10703,"endOffset":11345,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.disconnect","ranges":[{"startOffset":11378,"endOffset":11685,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.sendto","ranges":[{"startOffset":11790,"endOffset":12231,"count":0}],"isBlockCoverage":false},{"functionName":"sliceBuffer","ranges":[{"startOffset":12235,"endOffset":12805,"count":0}],"isBlockCoverage":false},{"functionName":"fixBufferList","ranges":[{"startOffset":12808,"endOffset":13192,"count":0}],"isBlockCoverage":false},{"functionName":"enqueue","ranges":[{"startOffset":13195,"endOffset":13607,"count":0}],"isBlockCoverage":false},{"functionName":"onListenSuccess","ranges":[{"startOffset":13610,"endOffset":13730,"count":0}],"isBlockCoverage":false},{"functionName":"onListenError","ranges":[{"startOffset":13733,"endOffset":13857,"count":0}],"isBlockCoverage":false},{"functionName":"clearQueue","ranges":[{"startOffset":13860,"endOffset":14057,"count":0}],"isBlockCoverage":false},{"functionName":"isConnected","ranges":[{"startOffset":14059,"endOffset":14174,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.send","ranges":[{"startOffset":14746,"endOffset":17640,"count":0}],"isBlockCoverage":false},{"functionName":"doSend","ranges":[{"startOffset":17643,"endOffset":18782,"count":0}],"isBlockCoverage":false},{"functionName":"afterSend","ranges":[{"startOffset":18784,"endOffset":18961,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.close","ranges":[{"startOffset":18988,"endOffset":19523,"count":0}],"isBlockCoverage":false},{"functionName":"socketCloseNT","ranges":[{"startOffset":19527,"endOffset":19581,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":19611,"endOffset":19801,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.remoteAddress","ranges":[{"startOffset":19837,"endOffset":20147,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setBroadcast","ranges":[{"startOffset":20183,"endOffset":20331,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setTTL","ranges":[{"startOffset":20361,"endOffset":20535,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastTTL","ranges":[{"startOffset":20574,"endOffset":20766,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastLoopback","ranges":[{"startOffset":20810,"endOffset":21010,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setMulticastInterface","ranges":[{"startOffset":21055,"endOffset":21317,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addMembership","ranges":[{"startOffset":21353,"endOffset":21727,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropMembership","ranges":[{"startOffset":21765,"endOffset":22142,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.addSourceSpecificMembership","ranges":[{"startOffset":22192,"endOffset":22949,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.dropSourceSpecificMembership","ranges":[{"startOffset":23001,"endOffset":23764,"count":0}],"isBlockCoverage":false},{"functionName":"healthCheck","ranges":[{"startOffset":23768,"endOffset":23931,"count":0}],"isBlockCoverage":false},{"functionName":"stopReceiving","ranges":[{"startOffset":23934,"endOffset":24098,"count":0}],"isBlockCoverage":false},{"functionName":"onMessage","ranges":[{"startOffset":24101,"endOffset":24355,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":24381,"endOffset":24488,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":24517,"endOffset":24626,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setRecvBufferSize","ranges":[{"startOffset":24667,"endOffset":24724,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setSendBufferSize","ranges":[{"startOffset":24765,"endOffset":24822,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getRecvBufferSize","ranges":[{"startOffset":24863,"endOffset":24920,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.getSendBufferSize","ranges":[{"startOffset":24961,"endOffset":25018,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25119,"endOffset":25173,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25246,"endOffset":25302,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25435,"endOffset":25492,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25568,"endOffset":25627,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25763,"endOffset":25820,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":25896,"endOffset":25955,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26087,"endOffset":26140,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26212,"endOffset":26267,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26399,"endOffset":26456,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26532,"endOffset":26591,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26697,"endOffset":26732,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26841,"endOffset":26878,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":27144,"endOffset":27180,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27184,"endOffset":27225,"count":0}],"isBlockCoverage":false}]},{"scriptId":"225","url":"internal/dgram.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1844,"count":1}],"isBlockCoverage":false},{"functionName":"lookup4","ranges":[{"startOffset":448,"endOffset":549,"count":0}],"isBlockCoverage":false},{"functionName":"lookup6","ranges":[{"startOffset":552,"endOffset":647,"count":0}],"isBlockCoverage":false},{"functionName":"newHandle","ranges":[{"startOffset":649,"endOffset":1317,"count":0}],"isBlockCoverage":false},{"functionName":"_createSocketHandle","ranges":[{"startOffset":1320,"endOffset":1768,"count":0}],"isBlockCoverage":false}]},{"scriptId":"226","url":"internal/socket_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2705,"count":1}],"isBlockCoverage":false},{"functionName":"SocketListSend","ranges":[{"startOffset":235,"endOffset":376,"count":0}],"isBlockCoverage":false},{"functionName":"_request","ranges":[{"startOffset":380,"endOffset":1035,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":1039,"endOffset":1189,"count":0}],"isBlockCoverage":false},{"functionName":"getConnections","ranges":[{"startOffset":1193,"endOffset":1428,"count":0}],"isBlockCoverage":false},{"functionName":"SocketListReceive","ranges":[{"startOffset":1542,"endOffset":2400,"count":0}],"isBlockCoverage":false},{"functionName":"add","ranges":[{"startOffset":2404,"endOffset":2645,"count":0}],"isBlockCoverage":false}]},{"scriptId":"227","url":"internal/cluster/round_robin_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3060,"count":1}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle","ranges":[{"startOffset":341,"endOffset":1127,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.add","ranges":[{"startOffset":1162,"endOffset":1791,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.remove","ranges":[{"startOffset":1830,"endOffset":2155,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.distribute","ranges":[{"startOffset":2198,"endOffset":2448,"count":0}],"isBlockCoverage":false},{"functionName":"RoundRobinHandle.handoff","ranges":[{"startOffset":2488,"endOffset":3058,"count":0}],"isBlockCoverage":false}]},{"scriptId":"228","url":"internal/cluster/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1039,"count":1}],"isBlockCoverage":false},{"functionName":"sendHelper","ranges":[{"startOffset":163,"endOffset":495,"count":0}],"isBlockCoverage":false},{"functionName":"internal","ranges":[{"startOffset":629,"endOffset":1038,"count":0}],"isBlockCoverage":false}]},{"scriptId":"229","url":"internal/cluster/shared_handle.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1102,"count":1}],"isBlockCoverage":false},{"functionName":"SharedHandle","ranges":[{"startOffset":192,"endOffset":670,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.add","ranges":[{"startOffset":701,"endOffset":845,"count":0}],"isBlockCoverage":false},{"functionName":"SharedHandle.remove","ranges":[{"startOffset":880,"endOffset":1100,"count":0}],"isBlockCoverage":false}]},{"scriptId":"230","url":"internal/cluster/worker.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1314,"count":1}],"isBlockCoverage":false},{"functionName":"Worker","ranges":[{"startOffset":227,"endOffset":809,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.kill","ranges":[{"startOffset":944,"endOffset":1005,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.send","ranges":[{"startOffset":1032,"endOffset":1113,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isDead","ranges":[{"startOffset":1142,"endOffset":1231,"count":0}],"isBlockCoverage":false},{"functionName":"Worker.isConnected","ranges":[{"startOffset":1265,"endOffset":1312,"count":0}],"isBlockCoverage":false}]},{"scriptId":"231","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/info.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":529,"count":1}],"isBlockCoverage":true},{"functionName":"infoController","ranges":[{"startOffset":37,"endOffset":496,"count":29},{"startOffset":350,"endOffset":379,"count":27},{"startOffset":381,"endOffset":494,"count":27}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":240,"endOffset":308,"count":133}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":422,"endOffset":488,"count":127}],"isBlockCoverage":true}]},{"scriptId":"232","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":853,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":156,"endOffset":820,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":483,"endOffset":742,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":652,"endOffset":669,"count":3}],"isBlockCoverage":true}]},{"scriptId":"233","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/utils/selectRandomItemsFromArray.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":256,"count":1}],"isBlockCoverage":true},{"functionName":"selectRandomItemFromArray","ranges":[{"startOffset":0,"endOffset":212,"count":3},{"startOffset":88,"endOffset":105,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":145,"endOffset":170,"count":0}],"isBlockCoverage":false}]},{"scriptId":"234","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/post.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":958,"count":1}],"isBlockCoverage":true},{"functionName":"postController","ranges":[{"startOffset":37,"endOffset":925,"count":3}],"isBlockCoverage":true}]},{"scriptId":"235","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/external/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":514,"count":1}],"isBlockCoverage":true},{"functionName":"getController","ranges":[{"startOffset":37,"endOffset":482,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":169,"endOffset":339,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":383,"endOffset":407,"count":1}],"isBlockCoverage":true}]},{"scriptId":"236","url":"file:///home/mark/Synced/Projects/canhazdb/server2/lib/controllers/internal/get.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1072,"count":1}],"isBlockCoverage":true},{"functionName":"internalGetController","ranges":[{"startOffset":37,"endOffset":1032,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":591,"endOffset":613,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":670,"endOffset":940,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":754,"endOffset":843,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":803,"endOffset":835,"count":3}],"isBlockCoverage":true}]}],"timestamp":96229.426708} \ No newline at end of file From 617083dce15e681026480158e81501d8f514946d Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 20:51:27 +1000 Subject: [PATCH 07/73] Fix tests --- test/helpers/createTestServer.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/helpers/createTestServer.js b/test/helpers/createTestServer.js index 5eaf35d..8ab45d7 100644 --- a/test/helpers/createTestServer.js +++ b/test/helpers/createTestServer.js @@ -2,7 +2,9 @@ import fs from 'fs'; import { v4 as uuid } from 'uuid'; import canhazdb from '../../lib/index.js'; -fs.rmdirSync('./canhazdata', { recursive: true }); +try { + fs.rmdirSync('./canhazdata', { recursive: true }); +} catch (error) {} fs.mkdirSync('./canhazdata'); const tls = { From 7b407034ac33792cd9f4b5862d37b9a5c64240bd Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 21:40:17 +1000 Subject: [PATCH 08/73] Add locks; Add cluster tests; --- lib/controllers/external/get.js | 16 ++-- lib/controllers/internal/post.js | 7 +- lib/index.js | 10 ++- lib/utils/isLockedOrWait.js | 24 ++++++ package-lock.json | 38 ++++----- package.json | 2 +- test/basic.js | 88 +++++++++++++++++++++ test/cluster.js | 130 +++++++++++++++++++++++++++++++ test/index.js | 113 +-------------------------- 9 files changed, 284 insertions(+), 144 deletions(-) create mode 100644 lib/utils/isLockedOrWait.js create mode 100644 test/basic.js create mode 100644 test/cluster.js diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 2785c6a..228ec12 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -2,13 +2,15 @@ import c from '../../constants.js'; async function getController (context, socketState, request, response) { const results = await Promise.all( - context.nodes.map(node => { - return node.client.send({ - [c.COMMAND]: c.GET, - [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], - [c.INTERNAL]: true - }); - }) + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], + [c.INTERNAL]: true + }); + }) ); const documents = results.flatMap(result => result[c.DATA]); diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 4550e36..fe03fb4 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -1,4 +1,5 @@ import c from '../../constants.js'; +import isLockedOrWait from '../../utils/isLockedOrWait.js'; async function postController (context, socketState, request, response) { const data = request.data[c.DATA]; @@ -7,9 +8,9 @@ async function postController (context, socketState, request, response) { const lockId = request.data[c.LOCK_ID]; const waitForUnlock = request.data[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - // if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - // throw Object.assign(new Error('lock prevented change'), { status: 409 }); - // } + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } data._replicatedNodes = replicatedNodes.sort(); const document = await context.driver.post(collectionId, data); diff --git a/lib/index.js b/lib/index.js index 551e74b..71d0f12 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,5 +1,6 @@ import logslot from 'logslot'; import tcpocket from 'tcpocket'; +import lockbase from 'lockbase'; import prepareOptions from './prepareOptions.js'; import createHandler from './createHandler.js'; @@ -55,11 +56,16 @@ function join (context, host, port) { function handleError (error) { node.connected = false; - if (['CLOSED', 'ECONNREFUSED', 'EHOSTUNREACH', 'ECONNRESET'].includes(error.code)) { + + if (['CLOSED', 'EPIPE', 'ECONNREFUSED', 'EHOSTUNREACH', 'ECONNRESET'].includes(error.code)) { if (node.closing) { return; } + if (context.closed) { + return; + } + join(context, host, port); return; } @@ -111,6 +117,8 @@ async function canhazdb (rawOptions) { context.driver = (await import('./driver/index.js')).default(context); + context.locks = lockbase(); + const tcpServer = createHandler(context); tcpServer.open(); diff --git a/lib/utils/isLockedOrWait.js b/lib/utils/isLockedOrWait.js new file mode 100644 index 0000000..f122fe3 --- /dev/null +++ b/lib/utils/isLockedOrWait.js @@ -0,0 +1,24 @@ +async function isLockedOrWait (locks, keys, lockId, waitForUnlock) { + const locked = locks.check(keys); + + if (!locked) { + return false; + } + + if (locked && locked[0] === lockId) { + return false; + } + + if (waitForUnlock) { + try { + await locks.wait(keys); + } catch (error) { + throw Object.assign(new Error('canhazdb cancelled all locks'), { status: 409 }); + } + return false; + } + + return true; +} + +export default isLockedOrWait; diff --git a/package-lock.json b/package-lock.json index 7dea64c..52671a9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,8 +10,8 @@ "license": "ISC", "dependencies": { "basictap": "^1.1.13", - "canhazdb-driver-ejdb": "^1.1.4", "chalk": "^4.1.1", + "lockbase": "^1.0.9", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.1.9", @@ -467,16 +467,6 @@ "node": ">=6" } }, - "node_modules/canhazdb-driver-ejdb": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/canhazdb-driver-ejdb/-/canhazdb-driver-ejdb-1.1.4.tgz", - "integrity": "sha512-Fw/2MTDyEHR0JqqSLUN/yY+OGLZWgQj3jM07QOpe/Rv0hYKPhJhBuwHQXOrHt/LcGaKyPqXpFDerHJahTtUWJg==", - "dependencies": { - "mql-to-jql": "^1.1.9", - "node-ejdb-lite": "^3.3.3", - "uuid": "^8.3.2" - } - }, "node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -1810,6 +1800,14 @@ "node": ">=4" } }, + "node_modules/lockbase": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.0.9.tgz", + "integrity": "sha512-6UYmTjzPSZcoAj2DNlmz6J8uXYD5UcIlu3JXcx6FJoFCZbjQ5n78WfQ4CVQebRpL704MXCIOV00Kn1QzuS2zyQ==", + "dependencies": { + "uuid": "^8.3.1" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -3724,16 +3722,6 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, - "canhazdb-driver-ejdb": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/canhazdb-driver-ejdb/-/canhazdb-driver-ejdb-1.1.4.tgz", - "integrity": "sha512-Fw/2MTDyEHR0JqqSLUN/yY+OGLZWgQj3jM07QOpe/Rv0hYKPhJhBuwHQXOrHt/LcGaKyPqXpFDerHJahTtUWJg==", - "requires": { - "mql-to-jql": "^1.1.9", - "node-ejdb-lite": "^3.3.3", - "uuid": "^8.3.2" - } - }, "chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -4714,6 +4702,14 @@ "path-exists": "^3.0.0" } }, + "lockbase": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.0.9.tgz", + "integrity": "sha512-6UYmTjzPSZcoAj2DNlmz6J8uXYD5UcIlu3JXcx6FJoFCZbjQ5n78WfQ4CVQebRpL704MXCIOV00Kn1QzuS2zyQ==", + "requires": { + "uuid": "^8.3.1" + } + }, "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", diff --git a/package.json b/package.json index e043d02..490ac3f 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,8 @@ "license": "ISC", "dependencies": { "basictap": "^1.1.13", - "canhazdb-driver-ejdb": "^1.1.4", "chalk": "^4.1.1", + "lockbase": "^1.0.9", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.1.9", diff --git a/test/basic.js b/test/basic.js new file mode 100644 index 0000000..a174f17 --- /dev/null +++ b/test/basic.js @@ -0,0 +1,88 @@ +import test from 'basictap'; +import createTestServer from './helpers/createTestServer.js'; + +import c from '../lib/constants.js'; +import tcpocket from 'tcpocket'; + +// wtfnode.init(); + +test('info - single server', async t => { + t.plan(5); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + + const result = await client.send({ + [c.COMMAND]: c.INFO, + [c.INTERNAL]: true + }); + + t.equal(result[c.STATUS], 200, 'response had 200 status'); + t.equal(result[c.DATA].nodeName.length, 36, 'nodeName has correct length'); + t.equal(result[c.DATA].nodes.length, 1, 'one node was returned'); + t.equal(result[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); + t.equal(result[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); + + await Promise.all([ + client.close(), + servers.close() + ]); +}); + +test('post - single server', async t => { + t.plan(11); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + + const postResponses = await Promise.all([ + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar1' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar2' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar3' + } + }) + ]); + + t.equal(postResponses[0][c.STATUS], 201, 'has status'); + t.ok(postResponses[0][c.DATA].id, 'has id'); + t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests' + }); + + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + const sortedDocuments = getResponse[c.DATA] + .sort((a, b) => a.foo > b.foo ? 1 : -1); + + t.ok(sortedDocuments[0].id, 'has id property'); + t.equal(sortedDocuments[0].foo, 'bar1', 'has foo property'); + t.ok(sortedDocuments[1].id, 'has id property'); + t.equal(sortedDocuments[1].foo, 'bar2', 'has foo property'); + t.ok(sortedDocuments[2].id, 'has id property'); + t.equal(sortedDocuments[2].foo, 'bar3', 'has foo property'); + + await client.close(); + await servers.close(); +}); diff --git a/test/cluster.js b/test/cluster.js new file mode 100644 index 0000000..7349ab0 --- /dev/null +++ b/test/cluster.js @@ -0,0 +1,130 @@ +import test from 'basictap'; +import createTestServer from './helpers/createTestServer.js'; + +import c from '../lib/constants.js'; +import tcpocket from 'tcpocket'; + +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + +test('cluster - post', async t => { + t.plan(11); + + const servers = await createTestServer(5); + const client = tcpocket.createClient(servers[0].clientConfig); + + const postResponses = await Promise.all([ + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar1' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar2' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar3' + } + }) + ]); + + t.equal(postResponses[0][c.STATUS], 201, 'has status'); + t.ok(postResponses[0][c.DATA].id, 'has id'); + t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests' + }); + + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + const sortedDocuments = getResponse[c.DATA] + .sort((a, b) => a.foo > b.foo ? 1 : -1); + + t.ok(sortedDocuments[0].id, 'has id property'); + t.equal(sortedDocuments[0].foo, 'bar1', 'has foo property'); + t.ok(sortedDocuments[1].id, 'has id property'); + t.equal(sortedDocuments[1].foo, 'bar2', 'has foo property'); + t.ok(sortedDocuments[2].id, 'has id property'); + t.equal(sortedDocuments[2].foo, 'bar3', 'has foo property'); + + await client.close(); + await servers.close(); +}); + +test('cluster - post - two goes down', async t => { + t.plan(11); + + const servers = await createTestServer(3); + const client = tcpocket.createClient(servers[0].clientConfig); + + const postResponses = await Promise.all([ + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar1' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar2' + } + }), + + client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar3' + } + }) + ]); + + t.equal(postResponses[0][c.STATUS], 201, 'has status'); + t.ok(postResponses[0][c.DATA].id, 'has id'); + t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + + await Promise.all([ + servers[1].close(), + servers[2].close() + ]); + + await sleep(100); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests' + }); + console.log('here'); + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + const sortedDocuments = getResponse[c.DATA] + .sort((a, b) => a.foo > b.foo ? 1 : -1); + + t.ok(sortedDocuments[0].id, 'has id property'); + t.equal(sortedDocuments[0].foo, 'bar1', 'has foo=bar1 property'); + t.ok(sortedDocuments[1].id, 'has id property'); + t.equal(sortedDocuments[1].foo, 'bar2', 'has foo=bar2 property'); + t.ok(sortedDocuments[2].id, 'has id property'); + t.equal(sortedDocuments[2].foo, 'bar3', 'has foo=bar3 property'); + + await client.close(); + await servers.close(); +}); diff --git a/test/index.js b/test/index.js index 92ac360..6d7f07a 100644 --- a/test/index.js +++ b/test/index.js @@ -1,111 +1,2 @@ -import test from 'basictap'; -import createTestServer from './helpers/createTestServer.js'; - -import c from '../lib/constants.js'; -import tcpocket from 'tcpocket'; - -// wtfnode.init(); - -test('info - single server', async t => { - t.plan(5); - - const servers = await createTestServer(1); - const client = tcpocket.createClient(servers[0].clientConfig); - - const result = await client.send({ - [c.COMMAND]: c.INFO, - [c.INTERNAL]: true - }); - - t.equal(result[c.STATUS], 200, 'response had 200 status'); - t.equal(result[c.DATA].nodeName.length, 36, 'nodeName has correct length'); - t.equal(result[c.DATA].nodes.length, 1, 'one node was returned'); - t.equal(result[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); - t.equal(result[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); - - await Promise.all([ - client.close(), - servers.close() - ]); -}); - -test('info - multiple servers', async t => { - t.plan(5); - - const servers = await createTestServer(5); - const client = tcpocket.createClient(servers[0].clientConfig); - - const result = await client.send({ - [c.COMMAND]: c.INFO, - [c.INTERNAL]: true - }); - - t.equal(result[c.STATUS], 200, 'response had 200 status'); - t.equal(result[c.DATA].nodeName.length, 36, 'nodeName has correct length'); - t.equal(result[c.DATA].nodes.length, 5, 'five nodes were returned'); - t.equal(result[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); - t.equal(result[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); - - await Promise.all([ - client.close(), - servers.close() - ]); -}); - -test('post - single server', async t => { - t.plan(11); - - const servers = await createTestServer(1); - const client = tcpocket.createClient(servers[0].clientConfig); - - const postResponses = await Promise.all([ - client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar1' - } - }), - - client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar2' - } - }), - - client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar3' - } - }) - ]); - - t.equal(postResponses[0][c.STATUS], 201, 'has status'); - t.ok(postResponses[0][c.DATA].id, 'has id'); - t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); - - const getResponse = await client.send({ - [c.COMMAND]: c.GET, - [c.COLLECTION_ID]: 'tests' - }); - - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); - - const sortedDocuments = getResponse[c.DATA] - .sort((a, b) => a.foo > b.foo ? 1 : -1); - - t.ok(sortedDocuments[0].id, 'has id property'); - t.equal(sortedDocuments[0].foo, 'bar1', 'has foo property'); - t.ok(sortedDocuments[1].id, 'has id property'); - t.equal(sortedDocuments[1].foo, 'bar2', 'has foo property'); - t.ok(sortedDocuments[2].id, 'has id property'); - t.equal(sortedDocuments[2].foo, 'bar3', 'has foo property'); - - await client.close(); - await servers.close(); -}); +import './basic.js'; +import './cluster.js'; From a70832e6fb8eab97fdeb26441d810ae78ae94fe5 Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 13 Jun 2021 22:54:15 +1000 Subject: [PATCH 09/73] Upgrade tcpocket, which fixes reconnect logic --- lib/controllers/external/get.js | 9 +++++- lib/controllers/internal/get.js | 3 +- lib/index.js | 53 +++++++++++++++++++-------------- package-lock.json | 14 ++++----- package.json | 2 +- test/basic.js | 4 +-- test/cluster.js | 9 +++--- 7 files changed, 54 insertions(+), 40 deletions(-) diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 228ec12..289b747 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -9,11 +9,18 @@ async function getController (context, socketState, request, response) { [c.COMMAND]: c.GET, [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], [c.INTERNAL]: true + }, false).catch(error => { + if (error.message === 'client disconnected') { + return null; + } + throw error; }); }) ); - const documents = results.flatMap(result => result[c.DATA]); + const documents = results + .flatMap(result => result && result[c.DATA]) + .filter(item => !!item); response.reply({ [c.STATUS]: 200, diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index 0ae2c55..c97f95e 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -1,7 +1,6 @@ import c from '../../constants.js'; async function internalGetController (context, socketState, request, response) { - const data = request.data[c.DATA]; const collectionId = request.data[c.COLLECTION_ID]; const query = request.data[c.QUERY]; const fields = request.data[c.FIELDS]; @@ -21,6 +20,8 @@ async function internalGetController (context, socketState, request, response) { if (availableReplicatedNodes[0] === context.thisNode.name) { return true; } + + return false; }); response.reply({ diff --git a/lib/index.js b/lib/index.js index 71d0f12..fd1cb39 100644 --- a/lib/index.js +++ b/lib/index.js @@ -132,33 +132,40 @@ async function canhazdb (rawOptions) { join(context, node.host, node.port); }); - function syncNodesInfo () { + async function syncNodesInfo () { if (context.closed) { return; } - context.nodes.forEach(async node => { - node.info = await node.client.send({ - [c.COMMAND]: c.INFO, - [c.DATA]: { - nodes: context.nodes.map(node => ({ - host: node.host, - port: node.port - })) - }, - [c.INTERNAL]: true - }); - - if (!node.info[c.STATUS] === 200) { - return; - } - - node.name = node.info[c.DATA].nodeName; - - persistNode(context, node); - }); - - context.syncNodesInfoTimer = setTimeout(syncNodesInfo, 5000); + await Promise.all( + context.nodes.map(async node => { + node.info = await node.client.send({ + [c.COMMAND]: c.INFO, + [c.DATA]: { + nodes: context.nodes.map(node => ({ + host: node.host, + port: node.port + })) + }, + [c.INTERNAL]: true + }).catch(error => { + if (error.message !== 'client disconnected') { + throw error; + } + return null; + }); + + if (!node.info || node.info[c.STATUS] !== 200) { + return; + } + + node.name = node.info[c.DATA].nodeName; + + persistNode(context, node); + }) + ); + + context.syncNodesInfoTimer = setTimeout(syncNodesInfo, 250); } syncNodesInfo(); diff --git a/package-lock.json b/package-lock.json index 52671a9..b691073 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "tcpocket": "^5.1.1", + "tcpocket": "^6.0.0", "wtfnode": "^0.8.4" }, "devDependencies": { @@ -3117,9 +3117,9 @@ "dev": true }, "node_modules/tcpocket": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-5.1.1.tgz", - "integrity": "sha512-5r2jH74SPB1ErHkqBMtw5MH57ULY3gICtvCbJxDos360XfBkDmK5RCSMHsfEfxCRUW92wtCdThlKEOZCLTJuHQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-6.0.0.tgz", + "integrity": "sha512-z0SsrMa4hg0FIYUvm+28jvMsJBTC9QCSKbqotazv0+6zkIeCi7xajXadTkDt9KwbU7RDzuZue9CsSxzsBKzu8Q==", "dependencies": { "ndjson-fe": "^1.2.10" } @@ -5694,9 +5694,9 @@ } }, "tcpocket": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-5.1.1.tgz", - "integrity": "sha512-5r2jH74SPB1ErHkqBMtw5MH57ULY3gICtvCbJxDos360XfBkDmK5RCSMHsfEfxCRUW92wtCdThlKEOZCLTJuHQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-6.0.0.tgz", + "integrity": "sha512-z0SsrMa4hg0FIYUvm+28jvMsJBTC9QCSKbqotazv0+6zkIeCi7xajXadTkDt9KwbU7RDzuZue9CsSxzsBKzu8Q==", "requires": { "ndjson-fe": "^1.2.10" } diff --git a/package.json b/package.json index 490ac3f..c89bbd2 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "tcpocket": "^5.1.1", + "tcpocket": "^6.0.0", "wtfnode": "^0.8.4" }, "devDependencies": { diff --git a/test/basic.js b/test/basic.js index a174f17..050d717 100644 --- a/test/basic.js +++ b/test/basic.js @@ -4,14 +4,13 @@ import createTestServer from './helpers/createTestServer.js'; import c from '../lib/constants.js'; import tcpocket from 'tcpocket'; -// wtfnode.init(); - test('info - single server', async t => { t.plan(5); const servers = await createTestServer(1); const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); const result = await client.send({ [c.COMMAND]: c.INFO, [c.INTERNAL]: true @@ -34,6 +33,7 @@ test('post - single server', async t => { const servers = await createTestServer(1); const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); const postResponses = await Promise.all([ client.send({ diff --git a/test/cluster.js b/test/cluster.js index 7349ab0..41d7f11 100644 --- a/test/cluster.js +++ b/test/cluster.js @@ -4,13 +4,13 @@ import createTestServer from './helpers/createTestServer.js'; import c from '../lib/constants.js'; import tcpocket from 'tcpocket'; -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - test('cluster - post', async t => { t.plan(11); const servers = await createTestServer(5); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); const postResponses = await Promise.all([ client.send({ @@ -69,6 +69,7 @@ test('cluster - post - two goes down', async t => { const servers = await createTestServer(3); const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); const postResponses = await Promise.all([ client.send({ @@ -105,13 +106,11 @@ test('cluster - post - two goes down', async t => { servers[2].close() ]); - await sleep(100); - const getResponse = await client.send({ [c.COMMAND]: c.GET, [c.COLLECTION_ID]: 'tests' }); - console.log('here'); + t.equal(getResponse[c.STATUS], 200, 'has status'); t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); From 9f068f9be24c7ed0cb1ee8fd2e6b3f959b732a08 Mon Sep 17 00:00:00 2001 From: Mark Date: Mon, 14 Jun 2021 21:55:32 +1000 Subject: [PATCH 10/73] Implement order and limit in get --- lib/controllers/external/get.js | 13 +++- lib/controllers/internal/get.js | 33 +++++---- lib/driver/index.js | 4 +- lib/index.js | 4 +- lib/utils/orderByFields.js | 19 +++++ test/basic.js | 120 ++++++++++++++++++++++++------- test/helpers/createTestServer.js | 2 +- test/index.js | 3 + 8 files changed, 152 insertions(+), 46 deletions(-) create mode 100644 lib/utils/orderByFields.js diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 289b747..fedd39f 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -1,4 +1,5 @@ import c from '../../constants.js'; +import orderByFields from '../../utils/orderByFields.js'; async function getController (context, socketState, request, response) { const results = await Promise.all( @@ -18,10 +19,20 @@ async function getController (context, socketState, request, response) { }) ); - const documents = results + let documents = results .flatMap(result => result && result[c.DATA]) .filter(item => !!item); + const orders = request.data[c.ORDER] || []; + orders.forEach(order => { + orderByFields(order, documents); + }); + + const limit = request.data[c.LIMIT]; + if (limit) { + documents = documents.slice(0, limit); + } + response.reply({ [c.STATUS]: 200, [c.DATA]: documents diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index c97f95e..94c6a40 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -1,5 +1,21 @@ import c from '../../constants.js'; +// Logic: Only return the document if we are +// the first replica that's available +function isFirstConnectedReplica (connectedNodes, nodeName) { + return document => { + const availableReplicatedNodes = document._replicatedNodes.filter(nodeName => { + return !!connectedNodes.find(cnode => cnode.name === nodeName); + }); + + if (availableReplicatedNodes[0] === nodeName) { + return true; + } + + return false; + }; +} + async function internalGetController (context, socketState, request, response) { const collectionId = request.data[c.COLLECTION_ID]; const query = request.data[c.QUERY]; @@ -9,24 +25,15 @@ async function internalGetController (context, socketState, request, response) { const documents = await context.driver.get(collectionId, query, fields, order, limit); - // Logic: Only return the document if we are - // the first replica that's available const connectedNodes = context.nodes.filter(node => node.connected); - const documentsWhereFirstReplica = documents.filter(document => { - const availableReplicatedNodes = document._replicatedNodes.filter(nodeName => { - return !!connectedNodes.find(cnode => cnode.name === nodeName); - }); - if (availableReplicatedNodes[0] === context.thisNode.name) { - return true; - } - - return false; - }); + const filteredDocuments = documents.filter( + isFirstConnectedReplica(connectedNodes, context.thisNode.name) + ); response.reply({ [c.STATUS]: 200, - [c.DATA]: documentsWhereFirstReplica + [c.DATA]: filteredDocuments }); } diff --git a/lib/driver/index.js b/lib/driver/index.js index a3522d8..29999ee 100644 --- a/lib/driver/index.js +++ b/lib/driver/index.js @@ -6,11 +6,11 @@ import mqlToJql from 'mql-to-jql'; const convert = mqlToJql.convert; const createQuery = mqlToJql.createQuery; -function createEjdbDriver (state) { +async function createEjdbDriver (state) { let connections = {}; let closing; - fs.mkdir(state.options.dataDirectory, { recursive: true }) + await fs.mkdir(state.options.dataDirectory, { recursive: true }) .catch(error => { console.log('could not make dataDirectory', state.options.dataDirectory); throw error; diff --git a/lib/index.js b/lib/index.js index fd1cb39..ed71fc4 100644 --- a/lib/index.js +++ b/lib/index.js @@ -115,7 +115,7 @@ async function canhazdb (rawOptions) { options }; - context.driver = (await import('./driver/index.js')).default(context); + context.driver = await (await import('./driver/index.js')).default(context); context.locks = lockbase(); @@ -185,7 +185,7 @@ async function canhazdb (rawOptions) { })); await context.driver.close(); - await tcpServer.close(); + await new Promise(resolve => tcpServer.close(resolve)); }; context.clientConfig = { diff --git a/lib/utils/orderByFields.js b/lib/utils/orderByFields.js new file mode 100644 index 0000000..883551f --- /dev/null +++ b/lib/utils/orderByFields.js @@ -0,0 +1,19 @@ +const matcher = /(desc|asc)\((.*?)\)/g; + +function dynamicSort (property, direction = 1) { + return function (a, b) { + const result = (a[property] < b[property]) ? -1 : (a[property] > b[property]) ? 1 : 0; + return result * direction; + }; +} + +function orderByFields (order, results) { + [...order.matchAll(matcher)] + .forEach(field => { + const fieldName = field[2]; + const fieldDirection = field[1]; + results.sort(dynamicSort(fieldName, fieldDirection === 'asc' ? 1 : -1)); + }); +} + +export default orderByFields; diff --git a/test/basic.js b/test/basic.js index 050d717..40534f6 100644 --- a/test/basic.js +++ b/test/basic.js @@ -4,7 +4,23 @@ import createTestServer from './helpers/createTestServer.js'; import c from '../lib/constants.js'; import tcpocket from 'tcpocket'; -test('info - single server', async t => { +function createExampleDocuments (client, count) { + const counts = Array(count).fill('').map((_, index) => index); + + return Promise.all( + counts.map(count => { + return client.send({ + [c.COMMAND]: c.POST, + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + (count + 1) + } + }); + }) + ); +} + +test('info', async t => { t.plan(5); const servers = await createTestServer(1); @@ -28,38 +44,14 @@ test('info - single server', async t => { ]); }); -test('post - single server', async t => { +test('post', async t => { t.plan(11); const servers = await createTestServer(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); - const postResponses = await Promise.all([ - client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar1' - } - }), - - client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar2' - } - }), - - client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar3' - } - }) - ]); + const postResponses = await createExampleDocuments(client, 3); t.equal(postResponses[0][c.STATUS], 201, 'has status'); t.ok(postResponses[0][c.DATA].id, 'has id'); @@ -86,3 +78,77 @@ test('post - single server', async t => { await client.close(); await servers.close(); }); + +test('get - with order (ascending)', async t => { + t.plan(5); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests', + [c.ORDER]: ['asc(foo)'] + }); + + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + t.equal(getResponse[c.DATA][0].foo, 'bar1', 'has foo property'); + t.equal(getResponse[c.DATA][1].foo, 'bar2', 'has foo property'); + t.equal(getResponse[c.DATA][2].foo, 'bar3', 'has foo property'); + + await client.close(); + await servers.close(); +}); + +test('get - with order (descending)', async t => { + t.plan(5); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests', + [c.ORDER]: ['desc(foo)'] + }); + + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + t.equal(getResponse[c.DATA][0].foo, 'bar3', 'has foo property'); + t.equal(getResponse[c.DATA][1].foo, 'bar2', 'has foo property'); + t.equal(getResponse[c.DATA][2].foo, 'bar1', 'has foo property'); + + await client.close(); + await servers.close(); +}); + +test('get - with limit', async t => { + t.plan(2); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 5); + + const getResponse = await client.send({ + [c.COMMAND]: c.GET, + [c.COLLECTION_ID]: 'tests', + [c.LIMIT]: 3 + }); + + t.equal(getResponse[c.STATUS], 200, 'has status'); + t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + + await client.close(); + await servers.close(); +}); diff --git a/test/helpers/createTestServer.js b/test/helpers/createTestServer.js index 8ab45d7..7e6b3e3 100644 --- a/test/helpers/createTestServer.js +++ b/test/helpers/createTestServer.js @@ -3,7 +3,7 @@ import { v4 as uuid } from 'uuid'; import canhazdb from '../../lib/index.js'; try { - fs.rmdirSync('./canhazdata', { recursive: true }); + fs.rmSync('./canhazdata', { recursive: true }); } catch (error) {} fs.mkdirSync('./canhazdata'); diff --git a/test/index.js b/test/index.js index 6d7f07a..b46832d 100644 --- a/test/index.js +++ b/test/index.js @@ -1,2 +1,5 @@ import './basic.js'; import './cluster.js'; + +// import basictap from 'basictap'; +// basictap.maximumConcurrentTests = Infinity; From 805104a925dc6320f17160a542ba7514fb896b14 Mon Sep 17 00:00:00 2001 From: Mark Date: Mon, 14 Jun 2021 21:56:21 +1000 Subject: [PATCH 11/73] Pass order and limit to internal --- lib/controllers/external/get.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index fedd39f..62b775b 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -9,6 +9,8 @@ async function getController (context, socketState, request, response) { return node.client.send({ [c.COMMAND]: c.GET, [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], + [c.ORDER]: request.data[c.ORDER], + [c.LIMIT]: request.data[c.LIMIT], [c.INTERNAL]: true }, false).catch(error => { if (error.message === 'client disconnected') { From d055d64005ba3649705813dc97150e0609551210 Mon Sep 17 00:00:00 2001 From: Mark Date: Mon, 14 Jun 2021 21:57:53 +1000 Subject: [PATCH 12/73] Run tests with correct environment variable --- lib/constants.js | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/constants.js b/lib/constants.js index 1d10026..1c62539 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -34,7 +34,7 @@ const constants = { LOCK_STRATEGY_WAIT: 25 }; -if (process.env.NODE_ENV === 'development') { +if (['development', 'test'].includes(process.env.NODE_ENV)) { Object.keys(constants).forEach(key => { constants[key] = key; }); diff --git a/package.json b/package.json index c89bbd2..00b7d37 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "index.js", "scripts": { - "test": "./makeCerts.sh && c8 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 node test" }, "keywords": [], "author": "", From 04441cf5439530fa2a9661b159477c4dc66eced0 Mon Sep 17 00:00:00 2001 From: Mark Date: Mon, 14 Jun 2021 22:56:33 +1000 Subject: [PATCH 13/73] Improve test coverage --- _tmpTestData/tests.db | Bin 0 -> 32768 bytes _tmpTestData/tests.db-wal | 0 lib/controllers/external/get.js | 9 +- lib/createHandler.js | 5 +- lib/driver/index.js | 41 +----- lib/index.js | 23 +-- lib/prepareOptions.js | 8 +- lib/utils/selectRandomItemsFromArray.js | 4 - package.json | 2 +- test/{ => features}/basic.js | 40 +++++- test/{ => features}/cluster.js | 23 ++- test/index.js | 7 +- test/lib/driver/index.js | 184 ++++++++++++++++++++++++ test/lib/prepareOptions.js | 36 +++++ 14 files changed, 302 insertions(+), 80 deletions(-) create mode 100644 _tmpTestData/tests.db create mode 100644 _tmpTestData/tests.db-wal rename test/{ => features}/basic.js (82%) rename test/{ => features}/cluster.js (87%) create mode 100644 test/lib/driver/index.js create mode 100644 test/lib/prepareOptions.js diff --git a/_tmpTestData/tests.db b/_tmpTestData/tests.db new file mode 100644 index 0000000000000000000000000000000000000000..d0854e6ed04557b177b3260b7a0867c0e814ca1f GIT binary patch literal 32768 zcmeI*%}(1u5Ww;MauJpgjZ_Y~P`4Lusc71}ABDJ1E32ZdNCe`>gY=L`;l_oBsPZD| zjAPRaLIP#6Y5pUPH&|x9^Rtbx)|lIy-*(5mHtT5H=F7)4SJs&G?-!M}8gAXNd|03; zFDj#CiDcfSG|{3tJkk1pWXD>6rsv9zeJ~S^aYT4+ifC zv8tut=M=Dhx$o>GbGBIc%jwKmw_f4zR@n6l+pdt~pCoB}0X*km*;gk5K~Id}bYW#7 z$3IQqq=#uIgJGxf1*~sx1#P(dl(e7X@1H$9B(Peo-b&sZ`YRcM00IagfB*srAb2v-ElHK3`>)(tK2q1s}0tg_0 z00IagfB*srAh2lxng93t_LZS_-0=jw { - if (error.message === 'client disconnected') { - return null; - } - throw error; + log.warn('node send failed', error); }); }) ); diff --git a/lib/createHandler.js b/lib/createHandler.js index ef3d9aa..84cf23d 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -38,10 +38,7 @@ function createHandler (context) { return; } - return controller(context, socketState, request, response) - .catch(error => { - log.error('controller error', error); - }); + return controller(context, socketState, request, response); }); } diff --git a/lib/driver/index.js b/lib/driver/index.js index 29999ee..395cc0d 100644 --- a/lib/driver/index.js +++ b/lib/driver/index.js @@ -8,19 +8,10 @@ const createQuery = mqlToJql.createQuery; async function createEjdbDriver (state) { let connections = {}; - let closing; - await fs.mkdir(state.options.dataDirectory, { recursive: true }) - .catch(error => { - console.log('could not make dataDirectory', state.options.dataDirectory); - throw error; - }); + await fs.mkdir(state.options.dataDirectory, { recursive: true }); async function getDatabaseConnection (collectionId) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - if (connections[collectionId]) { return connections[collectionId]; } @@ -31,10 +22,6 @@ async function createEjdbDriver (state) { } async function count (collectionId, query) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - const ejdbQuery = convert({ query }); const queryWithCount = { @@ -51,10 +38,6 @@ async function createEjdbDriver (state) { } async function get (collectionId, query, fields, order, limit) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - if (fields && !fields.includes('id')) { fields.push('id'); } @@ -69,10 +52,6 @@ async function createEjdbDriver (state) { } async function post (collectionId, document) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - const db = await getDatabaseConnection(collectionId); const insertableRecord = { @@ -89,10 +68,6 @@ async function createEjdbDriver (state) { } async function put (collectionId, document, query) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -118,10 +93,6 @@ async function createEjdbDriver (state) { } async function patch (collectionId, document, query) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -150,10 +121,6 @@ async function createEjdbDriver (state) { } async function del (collectionId, query) { - if (closing) { - throw new Error('canhazdb-driver-ejdb: getDatabaseConnection failed as client is closing'); - } - const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -168,12 +135,7 @@ async function createEjdbDriver (state) { return { changes: promises.length }; } - function open () { - closing = false; - } - async function close () { - closing = true; for (const connection in connections) { if (connections[connection]) { await (await connections[connection]).close(); @@ -190,7 +152,6 @@ async function createEjdbDriver (state) { patch, del, - open, close }; } diff --git a/lib/index.js b/lib/index.js index ed71fc4..407844c 100644 --- a/lib/index.js +++ b/lib/index.js @@ -27,10 +27,6 @@ async function persistNode (context, node) { } function join (context, host, port) { - if (!port) { - throw new Error('could not join node without a port'); - } - port = parseInt(port); const servername = context.options.joinFromDns; @@ -57,20 +53,13 @@ function join (context, host, port) { function handleError (error) { node.connected = false; - if (['CLOSED', 'EPIPE', 'ECONNREFUSED', 'EHOSTUNREACH', 'ECONNRESET'].includes(error.code)) { - if (node.closing) { - return; - } - - if (context.closed) { - return; - } - - join(context, host, port); + if (node.closing || context.closed) { return; } - throw error; + log.warn('node closed without cause, will reconnect'); + log.debug('node closed', error); + join(context, host, port); } // node.client.on('message', data => { @@ -149,9 +138,7 @@ async function canhazdb (rawOptions) { }, [c.INTERNAL]: true }).catch(error => { - if (error.message !== 'client disconnected') { - throw error; - } + log.warn('syncNodesInfo: client disconnected', error); return null; }); diff --git a/lib/prepareOptions.js b/lib/prepareOptions.js index 9d0f616..91a4fe3 100644 --- a/lib/prepareOptions.js +++ b/lib/prepareOptions.js @@ -3,6 +3,9 @@ import os from 'os'; import fs from 'fs'; import path from 'path'; +import logslot from 'logslot'; +const log = logslot('canhazdb.prepareOptions'); + async function prepareOptions (rawOptions) { const options = { ...rawOptions, @@ -14,7 +17,7 @@ async function prepareOptions (rawOptions) { if (rawOptions.joinFromDns) { const dnsLookupResults = await dns.promises.lookup(rawOptions.joinFromDns, { all: true }); - console.log('joining from dns:', { dnsLookupResults }); + log.info('joining from dns:', { dnsLookupResults }); options.join = dnsLookupResults.map(item => `${item.address}:${options.port}`); } else { options.join.push(`${rawOptions.host}:${options.port}`); @@ -22,8 +25,7 @@ async function prepareOptions (rawOptions) { if (rawOptions.tlsCa || rawOptions.tlsCert || rawOptions.tlsKey) { if (!rawOptions.tlsCa || !rawOptions.tlsCert || !rawOptions.tlsKey) { - console.log('You must specifiy either all [tls-key, tls-cert, tls-ca] or none of them'); - return; + throw new Error('You must specifiy either all [tls-key, tls-cert, tls-ca] or none of them'); } options.tls = { diff --git a/lib/utils/selectRandomItemsFromArray.js b/lib/utils/selectRandomItemsFromArray.js index cda2f9a..215b6fc 100644 --- a/lib/utils/selectRandomItemsFromArray.js +++ b/lib/utils/selectRandomItemsFromArray.js @@ -1,8 +1,4 @@ function selectRandomItemFromArray (array, count) { - if (!array || array.length === 0) { - return; - } - const randomArray = [...array].sort(() => 0.5 - Math.random()); return randomArray.slice(0, count); } diff --git a/package.json b/package.json index 00b7d37..2fd0bd9 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "index.js", "scripts": { - "test": "./makeCerts.sh && NODE_ENV=test c8 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 97.43 node test" }, "keywords": [], "author": "", diff --git a/test/basic.js b/test/features/basic.js similarity index 82% rename from test/basic.js rename to test/features/basic.js index 40534f6..4e66156 100644 --- a/test/basic.js +++ b/test/features/basic.js @@ -1,7 +1,7 @@ import test from 'basictap'; -import createTestServer from './helpers/createTestServer.js'; +import createTestServer from '../helpers/createTestServer.js'; -import c from '../lib/constants.js'; +import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; function createExampleDocuments (client, count) { @@ -20,6 +20,42 @@ function createExampleDocuments (client, count) { ); } +test('invalid data', async t => { + t.plan(1); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 1); + + const getResponse = await client.send(''); + + t.equal(getResponse[c.STATUS], 400, 'has status'); + + await client.close(); + await servers.close(); +}); + +test('invalid command', async t => { + t.plan(1); + + const servers = await createTestServer(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 1); + + const getResponse = await client.send({ + [c.COMMAND]: -1 + }); + + t.equal(getResponse[c.STATUS], 404, 'has status'); + + await client.close(); + await servers.close(); +}); + test('info', async t => { t.plan(5); diff --git a/test/cluster.js b/test/features/cluster.js similarity index 87% rename from test/cluster.js rename to test/features/cluster.js index 41d7f11..a881621 100644 --- a/test/cluster.js +++ b/test/features/cluster.js @@ -1,9 +1,11 @@ import test from 'basictap'; -import createTestServer from './helpers/createTestServer.js'; +import createTestServer from '../helpers/createTestServer.js'; -import c from '../lib/constants.js'; +import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + test('cluster - post', async t => { t.plan(11); @@ -127,3 +129,20 @@ test('cluster - post - two goes down', async t => { await client.close(); await servers.close(); }); + +test('cluster - syncing - node goes down', async t => { + t.plan(1); + + const servers = await createTestServer(2); + await sleep(50); + + await Promise.all([ + servers[1].close() + ]); + + await sleep(500); + + t.pass('completed at least one sync without crashing'); + + await servers.close(); +}); diff --git a/test/index.js b/test/index.js index b46832d..37e9b77 100644 --- a/test/index.js +++ b/test/index.js @@ -1,5 +1,8 @@ -import './basic.js'; -import './cluster.js'; +import './features/basic.js'; +import './features/cluster.js'; + +import './lib/driver/index.js'; +import './lib/prepareOptions.js'; // import basictap from 'basictap'; // basictap.maximumConcurrentTests = Infinity; diff --git a/test/lib/driver/index.js b/test/lib/driver/index.js new file mode 100644 index 0000000..e48a1bb --- /dev/null +++ b/test/lib/driver/index.js @@ -0,0 +1,184 @@ +import fs from 'fs'; +import test from 'basictap'; + +import createDriver from '../../../lib/driver/index.js'; + +test('count: no records', async t => { + t.plan(1); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + const result = await driver.count('tests'); + + await driver.close(); + + t.deepEqual(result, 0); +}); + +test('get: no records', async t => { + t.plan(1); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + const result = await driver.get('tests'); + + await driver.close(); + + t.deepEqual(result, []); +}); + +test('post: records', async t => { + t.plan(2); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + const postResult = await driver.post('tests', { a: 1 }); + const getResult = await driver.get('tests'); + + await driver.close(); + + t.deepEqual(postResult.a, 1); + t.deepEqual(getResult, [postResult]); +}); + +test('get: records - with projection', async t => { + t.plan(1); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + await Promise.all([ + driver.post('tests', { a: 1, b: 'yes' }), + driver.post('tests', { a: 2, b: 'yes' }), + driver.post('tests', { a: 3, b: 'yes' }) + ]); + + let result = await driver.get('tests', null, ['a']); + result = result.sort((a, b) => a.a >= b.a ? 1 : -1); + + await driver.close(); + + t.deepEqual(result, [ + { a: 1 }, + { a: 2 }, + { a: 3 } + ]); +}); + +test('put: record', async t => { + t.plan(2); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + await Promise.all([ + driver.post('tests', { a: 1, b: 'yes' }), + driver.post('tests', { a: 2, b: 'yes' }), + driver.post('tests', { a: 3, b: 'yes' }) + ]); + + const { changes } = await driver.put('tests', { b: 'no' }, {}); + + let result = await driver.get('tests'); + result = result.sort((a, b) => a.a >= b.a ? 1 : -1); + + await driver.close(); + + t.equal(changes, 3); + t.deepEqual(result, [ + { b: 'no' }, + { b: 'no' }, + { b: 'no' } + ]); +}); + +test('patch: record', async t => { + t.plan(2); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + await Promise.all([ + driver.post('tests', { a: 1, b: 'yes' }), + driver.post('tests', { a: 2, b: 'yes' }), + driver.post('tests', { a: 3, b: 'yes' }) + ]); + + const { changes } = await driver.patch('tests', { b: 'no' }, {}); + + let result = await driver.get('tests'); + result = result.sort((a, b) => a.a >= b.a ? 1 : -1); + + await driver.close(); + + t.equal(changes, 3); + t.deepEqual(result, [ + { a: 1, b: 'no' }, + { a: 2, b: 'no' }, + { a: 3, b: 'no' } + ]); +}); + +test('del: record', async t => { + t.plan(2); + + await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + + const driver = await createDriver({ + options: { + dataDirectory: './_tmpTestData' + } + }); + + await Promise.all([ + driver.post('tests', { a: 1, b: 'yes' }), + driver.post('tests', { a: 2, b: 'yes' }), + driver.post('tests', { a: 3, b: 'yes' }) + ]); + + const { changes } = await driver.del('tests', { a: 2 }); + + let result = await driver.get('tests'); + result = result.sort((a, b) => a.a >= b.a ? 1 : -1); + + await driver.close(); + + t.equal(changes, 1); + t.deepEqual(result, [ + { a: 1, b: 'yes' }, + { a: 3, b: 'yes' } + ]); +}); \ No newline at end of file diff --git a/test/lib/prepareOptions.js b/test/lib/prepareOptions.js new file mode 100644 index 0000000..2fd7e66 --- /dev/null +++ b/test/lib/prepareOptions.js @@ -0,0 +1,36 @@ +import test from 'basictap'; +import prepareOptions from '../../lib/prepareOptions.js'; + +test('prepareOptions.js - all tls arguments must be passed', async t => { + t.plan(1); + + prepareOptions({ + tlsKey: 'a' + }).catch(error => { + t.equal(error.message, 'You must specifiy either all [tls-key, tls-cert, tls-ca] or none of them'); + }); +}); + +test('prepareOptions.js - with tls', async t => { + t.plan(3); + + prepareOptions({ + tlsKey: './certs/localhost.privkey.pem', + tlsCert: './certs/localhost.cert.pem', + tlsCa: './certs/ca.cert.pem' + }).then(result => { + t.equal(result.tls.key.constructor.name, 'Buffer', 'tls key was read'); + t.equal(result.tls.cert.constructor.name, 'Buffer', 'tls cert was read'); + t.equal(result.tls.ca.constructor.name, 'Array', 'tls ca was read'); + }); +}); + +test('prepareOptions.js - join from dns', async t => { + t.plan(1); + + prepareOptions({ + joinFromDns: 'localhost' + }).then(result => { + t.ok(result.join.length > 0, 'at least one item in join'); + }); +}); From 4ba9b00c2aaf548042375b1abab37dbe1e4fc8e9 Mon Sep 17 00:00:00 2001 From: Mark Date: Tue, 15 Jun 2021 21:51:50 +1000 Subject: [PATCH 14/73] Implement new slim communication protocol from tcpocket --- _tmpTestData/tests.db | Bin 32768 -> 0 bytes _tmpTestData/tests.db-wal | 0 lib/constants.js | 15 +- lib/controllers/external/get.js | 20 +- lib/controllers/external/info.js | 8 +- lib/controllers/external/post.js | 12 +- lib/controllers/internal/get.js | 15 +- lib/controllers/internal/info.js | 8 +- lib/controllers/internal/post.js | 15 +- lib/createHandler.js | 28 +- lib/index.js | 12 +- package-lock.json | 2958 +++++++++++------------------- package.json | 9 +- test/features/basic.js | 87 +- test/features/cluster.js | 48 +- test/lib/driver/index.js | 30 +- 16 files changed, 1162 insertions(+), 2103 deletions(-) delete mode 100644 _tmpTestData/tests.db delete mode 100644 _tmpTestData/tests.db-wal diff --git a/_tmpTestData/tests.db b/_tmpTestData/tests.db deleted file mode 100644 index d0854e6ed04557b177b3260b7a0867c0e814ca1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI*%}(1u5Ww;MauJpgjZ_Y~P`4Lusc71}ABDJ1E32ZdNCe`>gY=L`;l_oBsPZD| zjAPRaLIP#6Y5pUPH&|x9^Rtbx)|lIy-*(5mHtT5H=F7)4SJs&G?-!M}8gAXNd|03; zFDj#CiDcfSG|{3tJkk1pWXD>6rsv9zeJ~S^aYT4+ifC zv8tut=M=Dhx$o>GbGBIc%jwKmw_f4zR@n6l+pdt~pCoB}0X*km*;gk5K~Id}bYW#7 z$3IQqq=#uIgJGxf1*~sx1#P(dl(e7X@1H$9B(Peo-b&sZ`YRcM00IagfB*srAb2v-ElHK3`>)(tK2q1s}0tg_0 z00IagfB*srAh2lxng93t_LZS_-0=jw { - constants[key] = key; - }); -} - export default constants; diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index b363562..7e8302c 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -6,15 +6,16 @@ import orderByFields from '../../utils/orderByFields.js'; const log = logslot('canhazdb.controllers.external.get'); async function getController (context, socketState, request, response) { + const requestData = request.json(); + const results = await Promise.all( context.nodes .filter(node => node.connected) .map(node => { - return node.client.send({ - [c.COMMAND]: c.GET, - [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], - [c.ORDER]: request.data[c.ORDER], - [c.LIMIT]: request.data[c.LIMIT], + return node.client.send(c.GET, { + [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.ORDER]: requestData[c.ORDER], + [c.LIMIT]: requestData[c.LIMIT], [c.INTERNAL]: true }, false).catch(error => { log.warn('node send failed', error); @@ -23,21 +24,20 @@ async function getController (context, socketState, request, response) { ); let documents = results - .flatMap(result => result && result[c.DATA]) + .flatMap(result => result && result.json()[c.DATA]) .filter(item => !!item); - const orders = request.data[c.ORDER] || []; + const orders = requestData[c.ORDER] || []; orders.forEach(order => { orderByFields(order, documents); }); - const limit = request.data[c.LIMIT]; + const limit = requestData[c.LIMIT]; if (limit) { documents = documents.slice(0, limit); } - response.reply({ - [c.STATUS]: 200, + response.reply(c.STATUS_OK, { [c.DATA]: documents }); } diff --git a/lib/controllers/external/info.js b/lib/controllers/external/info.js index bbdd34c..87186c7 100644 --- a/lib/controllers/external/info.js +++ b/lib/controllers/external/info.js @@ -1,8 +1,7 @@ import c from '../../constants.js'; async function infoController (context, socketState, request, response) { - response.reply({ - [c.STATUS]: 200, + response.reply(c.STATUS_OK, { [c.DATA]: { nodeName: context.options.nodeName, nodes: context.nodes.map(node => ({ @@ -12,8 +11,9 @@ async function infoController (context, socketState, request, response) { } }); - if (request.data[c.DATA] && request.data[c.DATA].nodes) { - request.data[c.DATA].nodes.forEach(node => { + const requestData = request.data.json(); + if (requestData[c.DATA] && request.data[c.DATA].nodes) { + requestData[c.DATA].nodes.forEach(node => { context.join(context, node.host, node.port); }); } diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index a7eaa81..e8cce26 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -8,16 +8,17 @@ async function postController (context, socketState, request, response) { Math.min(context.settings.replicas, context.nodes.length) ); + const requestData = request.json(); + const document = { - ...request.data[c.DATA], + ...requestData[c.DATA], id: uuid() }; const results = await Promise.all( nodes.map(node => { - return node.client.send({ - [c.COMMAND]: c.POST, - [c.COLLECTION_ID]: request.data[c.COLLECTION_ID], + return node.client.send(c.POST, { + [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], [c.REPLICATED_NODES]: nodes.map(node => node.name), [c.DATA]: document, [c.INTERNAL]: true @@ -25,8 +26,7 @@ async function postController (context, socketState, request, response) { }) ); - response.reply({ - [c.STATUS]: 201, + response.reply(c.STATUS_CREATED, { [c.DATA]: document }); } diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index 94c6a40..edf4e1f 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -17,11 +17,13 @@ function isFirstConnectedReplica (connectedNodes, nodeName) { } async function internalGetController (context, socketState, request, response) { - const collectionId = request.data[c.COLLECTION_ID]; - const query = request.data[c.QUERY]; - const fields = request.data[c.FIELDS]; - const order = request.data[c.ORDER]; - const limit = request.data[c.LIMIT]; + const requestData = request.json(); + + const collectionId = requestData[c.COLLECTION_ID]; + const query = requestData[c.QUERY]; + const fields = requestData[c.FIELDS]; + const order = requestData[c.ORDER]; + const limit = requestData[c.LIMIT]; const documents = await context.driver.get(collectionId, query, fields, order, limit); @@ -31,8 +33,7 @@ async function internalGetController (context, socketState, request, response) { isFirstConnectedReplica(connectedNodes, context.thisNode.name) ); - response.reply({ - [c.STATUS]: 200, + response.reply(c.STATUS_OK, { [c.DATA]: filteredDocuments }); } diff --git a/lib/controllers/internal/info.js b/lib/controllers/internal/info.js index bbdd34c..5be5c0a 100644 --- a/lib/controllers/internal/info.js +++ b/lib/controllers/internal/info.js @@ -1,8 +1,7 @@ import c from '../../constants.js'; async function infoController (context, socketState, request, response) { - response.reply({ - [c.STATUS]: 200, + response.reply(c.STATUS_OK, { [c.DATA]: { nodeName: context.options.nodeName, nodes: context.nodes.map(node => ({ @@ -12,8 +11,9 @@ async function infoController (context, socketState, request, response) { } }); - if (request.data[c.DATA] && request.data[c.DATA].nodes) { - request.data[c.DATA].nodes.forEach(node => { + const requestData = request.json(); + if (requestData[c.DATA] && requestData[c.DATA].nodes) { + requestData[c.DATA].nodes.forEach(node => { context.join(context, node.host, node.port); }); } diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index fe03fb4..0a57562 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -2,11 +2,13 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; async function postController (context, socketState, request, response) { - const data = request.data[c.DATA]; - const collectionId = request.data[c.COLLECTION_ID]; - const replicatedNodes = request.data[c.REPLICATED_NODES]; - const lockId = request.data[c.LOCK_ID]; - const waitForUnlock = request.data[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; + const requestData = request.json(); + + const data = requestData[c.DATA]; + const collectionId = requestData[c.COLLECTION_ID]; + const replicatedNodes = requestData[c.REPLICATED_NODES]; + const lockId = requestData[c.LOCK_ID]; + const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { throw Object.assign(new Error('lock prevented change'), { status: 409 }); @@ -19,8 +21,7 @@ async function postController (context, socketState, request, response) { // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply({ - [c.STATUS]: 201, + response.reply(c.STATUS_CREATED, { [c.DATA]: document }); } diff --git a/lib/createHandler.js b/lib/createHandler.js index 84cf23d..01ba390 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -1,16 +1,15 @@ import logslot from 'logslot'; - import tcpocket from 'tcpocket'; import getController from './controllers/index.js'; import c from './constants.js'; -const log = logslot('canhazdb.handler'); +const log = logslot('canhazdb.createHandler'); function createHandler (context) { const { port, tls } = context.options; - return tcpocket.createServer({ port, ...tls }, async function (request, response) { + const tcpServer = tcpocket.createServer({ port, ...tls }, async function (request, response) { // const remoteString = request.socket.remoteAddress + ':' + request.socket.remotePort; // logslot('canhazdb.comms').debug('received request ' + remoteString, { // data: request.data @@ -21,25 +20,26 @@ function createHandler (context) { notifiers: [] }; - if (!request.data) { - response.reply({ - [c.STATUS]: 400 - }); - return; - } + const requestData = request.data ? request.json() : {}; - const origin = request.data[c.INTERNAL] ? 'internal' : 'external'; - const controller = await getController(origin, request.data[c.COMMAND]); + const origin = requestData[c.INTERNAL] ? 'internal' : 'external'; + const controller = await getController(origin, request.command); if (!controller) { - response.reply({ - [c.STATUS]: 404 - }); + response.reply(c.STATUS_NOT_FOUND); return; } return controller(context, socketState, request, response); }); + + tcpServer.on('connection', (socket) => { + socket.on('error', error => { + log.warn('a client disconnected from the server', { code: error.code }); + }); + }); + + return tcpServer; } export default createHandler; diff --git a/lib/index.js b/lib/index.js index 407844c..7ac79dd 100644 --- a/lib/index.js +++ b/lib/index.js @@ -128,8 +128,7 @@ async function canhazdb (rawOptions) { await Promise.all( context.nodes.map(async node => { - node.info = await node.client.send({ - [c.COMMAND]: c.INFO, + const result = await node.client.send(c.INFO, { [c.DATA]: { nodes: context.nodes.map(node => ({ host: node.host, @@ -138,15 +137,18 @@ async function canhazdb (rawOptions) { }, [c.INTERNAL]: true }).catch(error => { - log.warn('syncNodesInfo: client disconnected', error); + log.warn('syncNodesInfo: client disconnected', { error: error.code }); return null; }); - if (!node.info || node.info[c.STATUS] !== 200) { + if (!result || result.command !== c.STATUS_OK) { return; } - node.name = node.info[c.DATA].nodeName; + const resultData = result.json(); + + node.info = resultData; + node.name = resultData[c.DATA].nodeName; persistNode(context, node); }) diff --git a/package-lock.json b/package-lock.json index b691073..15092f6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,39 +17,37 @@ "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "tcpocket": "^6.0.0", + "split2": "^3.2.2", + "tcpocket": "^7.2.0", "wtfnode": "^0.8.4" }, "devDependencies": { - "c8": "^7.7.2", + "c8": "^7.7.3", "eslint": "^7.28.0", - "semistandard": "^16.0.0", + "semistandard": "^16.0.1", "uuid": "^8.3.2" } }, "node_modules/@babel/code-frame": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/highlight": "^7.10.4" } }, "node_modules/@babel/helper-validator-identifier": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", @@ -61,9 +59,8 @@ }, "node_modules/@babel/highlight/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^1.9.0" }, @@ -73,9 +70,8 @@ }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -87,42 +83,37 @@ }, "node_modules/@babel/highlight/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "1.1.3" } }, "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.0" } }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/@babel/highlight/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -132,15 +123,13 @@ }, "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@eslint/eslintrc": { "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, + "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -158,35 +147,30 @@ }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/json5": { "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/abbott": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", - "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" + "license": "ISC" }, "node_modules/acorn": { "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -196,18 +180,16 @@ }, "node_modules/acorn-jsx": { "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, + "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/ajv": { "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -221,26 +203,23 @@ }, "node_modules/ansi-colors": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/ansi-regex": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -253,18 +232,16 @@ }, "node_modules/argparse": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, "node_modules/array-includes": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -281,9 +258,8 @@ }, "node_modules/array.prototype.flat": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -298,9 +274,8 @@ }, "node_modules/array.prototype.flatmap": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -316,44 +291,46 @@ }, "node_modules/astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/balanced-match": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/basictap": { "version": "1.1.13", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.1.13.tgz", - "integrity": "sha512-74mw9kmAdmdkHqtP70YFqHMYzO3my92kZA4axHbKI7V7sOUCniiVP1R+0wR7Y5BO4v5wnrt4sMU3nLjlvzTuWw==", + "license": "ISC", "dependencies": { "colorette": "^1.2.2", "concurrun": "^1.1.0", "righto": "^6.1.3" } }, + "node_modules/binary-split": { + "version": "1.0.5", + "license": "BSD-2-Clause", + "dependencies": { + "through2": "^2.0.3" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "node_modules/c8": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.2.tgz", - "integrity": "sha512-8AqNnUMxB3hsgYCYso2GJjlwnaNPlrEEbYbCQb7N76V1nrOgCKXiTcE3gXU18rIj0FeduPywROrIBMC7XAKApg==", + "version": "7.7.3", "dev": true, + "license": "ISC", "dependencies": { "@bcoe/v8-coverage": "^0.2.3", "@istanbuljs/schema": "^0.1.2", @@ -364,7 +341,7 @@ "istanbul-reports": "^3.0.2", "rimraf": "^3.0.0", "test-exclude": "^6.0.0", - "v8-to-istanbul": "^7.1.0", + "v8-to-istanbul": "^8.0.0", "yargs": "^16.2.0", "yargs-parser": "^20.2.7" }, @@ -375,81 +352,10 @@ "node": ">=10.12.0" } }, - "node_modules/c8/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/call-bind": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" @@ -460,17 +366,15 @@ }, "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/chalk": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -484,9 +388,8 @@ }, "node_modules/cliui": { "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -495,8 +398,7 @@ }, "node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -506,48 +408,42 @@ }, "node_modules/color-name": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "license": "MIT" }, "node_modules/colorette": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + "license": "MIT" }, "node_modules/concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/concurrun": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", - "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" - }, - "node_modules/contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, "node_modules/convert-source-map": { "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "~5.1.1" } }, + "node_modules/convert-source-map/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "license": "MIT" + }, "node_modules/cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -559,9 +455,8 @@ }, "node_modules/debug": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.1.2" }, @@ -576,15 +471,13 @@ }, "node_modules/deep-is": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/define-properties": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, + "license": "MIT", "dependencies": { "object-keys": "^1.0.12" }, @@ -594,9 +487,8 @@ }, "node_modules/doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -606,15 +498,13 @@ }, "node_modules/emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/enquirer": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-colors": "^4.1.1" }, @@ -624,18 +514,16 @@ }, "node_modules/error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, + "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/es-abstract": { "version": "1.18.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", - "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", @@ -663,9 +551,8 @@ }, "node_modules/es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "license": "MIT", "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -680,18 +567,16 @@ }, "node_modules/escalade": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -701,9 +586,8 @@ }, "node_modules/eslint": { "version": "7.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", - "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", "dev": true, + "license": "MIT", "dependencies": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.2", @@ -756,23 +640,19 @@ } }, "node_modules/eslint-config-semistandard": { - "version": "15.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-15.0.1.tgz", - "integrity": "sha512-sfV+qNBWKOmF0kZJll1VH5XqOAdTmLlhbOl9WKI11d2eMEe+Kicxnpm24PQWHOqAfk5pAWU2An0LjNCXKa4Usg==", + "version": "16.0.0", "dev": true, + "license": "ISC", "peerDependencies": { - "eslint": ">=6.0.1", - "eslint-config-standard": ">=14.1.0", - "eslint-plugin-import": ">=2.18.0", - "eslint-plugin-node": ">=9.1.0", - "eslint-plugin-promise": ">=4.2.1", - "eslint-plugin-standard": ">=4.0.0" + "eslint": ">=7.12.1", + "eslint-config-standard": ">=16.0.3", + "eslint-plugin-import": ">=2.22.1", + "eslint-plugin-node": ">=11.1.0", + "eslint-plugin-promise": ">=4.2.1" } }, "node_modules/eslint-config-standard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.0.tgz", - "integrity": "sha512-kMCehB9yXIG+LNsu9uXfm06o6Pt63TFAOzn9tUOzw4r/hFIxHhNR1Xomxy+B5zMrXhqyfHVEcmanzttEjGei9w==", + "version": "16.0.3", "dev": true, "funding": [ { @@ -788,17 +668,16 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "peerDependencies": { "eslint": "^7.12.1", "eslint-plugin-import": "^2.22.1", "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^4.2.1" + "eslint-plugin-promise": "^4.2.1 || ^5.0.0" } }, "node_modules/eslint-config-standard-jsx": { "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", - "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", "dev": true, "funding": [ { @@ -814,6 +693,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "peerDependencies": { "eslint": "^7.12.1", "eslint-plugin-react": "^7.21.5" @@ -821,9 +701,8 @@ }, "node_modules/eslint-import-resolver-node": { "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^2.6.9", "resolve": "^1.13.1" @@ -831,24 +710,21 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-import-resolver-node/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eslint-module-utils": { "version": "2.6.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", - "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.7", "pkg-dir": "^2.0.0" @@ -859,18 +735,16 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } }, "node_modules/eslint-plugin-es": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, + "license": "MIT", "dependencies": { "eslint-utils": "^2.0.0", "regexpp": "^3.0.0" @@ -886,23 +760,24 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", - "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", + "version": "2.23.4", "dev": true, + "license": "MIT", "dependencies": { - "array-includes": "^3.1.1", - "array.prototype.flat": "^1.2.3", - "contains-path": "^0.1.0", + "array-includes": "^3.1.3", + "array.prototype.flat": "^1.2.4", "debug": "^2.6.9", - "doctrine": "1.5.0", + "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.0", + "eslint-module-utils": "^2.6.1", + "find-up": "^2.0.0", "has": "^1.0.3", + "is-core-module": "^2.4.0", "minimatch": "^3.0.4", - "object.values": "^1.1.1", - "read-pkg-up": "^2.0.0", - "resolve": "^1.17.0", + "object.values": "^1.1.3", + "pkg-up": "^2.0.0", + "read-pkg-up": "^3.0.0", + "resolve": "^1.20.0", "tsconfig-paths": "^3.9.0" }, "engines": { @@ -914,37 +789,85 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "version": "2.1.0", "dev": true, + "license": "Apache-2.0", "dependencies": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" + "esutils": "^2.0.2" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-import/node_modules/find-up": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/locate-path": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/eslint-plugin-import/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/eslint-plugin-import/node_modules/p-limit": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/p-locate": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/path-exists": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, "node_modules/eslint-plugin-node": { "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, + "license": "MIT", "dependencies": { "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", @@ -962,36 +885,35 @@ }, "node_modules/eslint-plugin-node/node_modules/ignore": { "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/eslint-plugin-node/node_modules/semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/eslint-plugin-promise": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz", - "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==", + "version": "5.1.0", "dev": true, + "license": "ISC", "engines": { - "node": ">=6" + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.0.0" } }, "node_modules/eslint-plugin-react": { "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.1", "array.prototype.flatmap": "^1.2.3", @@ -1014,9 +936,8 @@ }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -1024,34 +945,10 @@ "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-standard": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.2.tgz", - "integrity": "sha512-nKptN8l7jksXkwFk++PhJB3cCDTcXOEyhISIN86Ue2feJ1LFyY3PrY3/xT2keXlJSY5bpmbiTG0f885/YKAvTA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": ">=5.0.0" - } - }, "node_modules/eslint-scope": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -1062,9 +959,8 @@ }, "node_modules/eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -1077,27 +973,24 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/eslint-visitor-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=10" } }, "node_modules/espree": { "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", @@ -1109,18 +1002,16 @@ }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, + "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -1131,9 +1022,8 @@ }, "node_modules/esquery": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -1143,18 +1033,16 @@ }, "node_modules/esquery/node_modules/estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esrecurse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -1164,54 +1052,47 @@ }, "node_modules/esrecurse/node_modules/estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/estraverse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esutils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/fast-deep-equal": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, + "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" }, @@ -1220,22 +1101,24 @@ } }, "node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "version": "5.0.0", "dev": true, + "license": "MIT", "dependencies": { - "locate-path": "^2.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/flat-cache": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, + "license": "MIT", "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -1246,15 +1129,13 @@ }, "node_modules/flatted": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/foreground-child": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, + "license": "ISC", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^3.0.2" @@ -1265,36 +1146,31 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, + "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } }, "node_modules/get-intrinsic": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -1306,9 +1182,8 @@ }, "node_modules/get-stdin": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -1318,9 +1193,8 @@ }, "node_modules/glob": { "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -1338,9 +1212,8 @@ }, "node_modules/glob-parent": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -1350,9 +1223,8 @@ }, "node_modules/globals": { "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.20.2" }, @@ -1365,15 +1237,13 @@ }, "node_modules/graceful-fs": { "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1" }, @@ -1383,26 +1253,23 @@ }, "node_modules/has-bigints": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/has-symbols": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1412,30 +1279,26 @@ }, "node_modules/hosted-git-info": { "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/html-escaper": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ignore": { "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/import-fresh": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, + "license": "MIT", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -1449,18 +1312,16 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } }, "node_modules/inflight": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -1468,15 +1329,12 @@ }, "node_modules/inherits": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "license": "ISC" }, "node_modules/internal-slot": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, + "license": "MIT", "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", @@ -1488,24 +1346,21 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-bigint": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", - "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-boolean-object": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", - "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2" }, @@ -1518,9 +1373,8 @@ }, "node_modules/is-callable": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1530,9 +1384,8 @@ }, "node_modules/is-core-module": { "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, + "license": "MIT", "dependencies": { "has": "^1.0.3" }, @@ -1542,9 +1395,8 @@ }, "node_modules/is-date-object": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1554,27 +1406,24 @@ }, "node_modules/is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/is-glob": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -1584,9 +1433,8 @@ }, "node_modules/is-negative-zero": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1596,9 +1444,8 @@ }, "node_modules/is-number-object": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", - "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1608,9 +1455,8 @@ }, "node_modules/is-regex": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-symbols": "^1.0.2" @@ -1624,9 +1470,8 @@ }, "node_modules/is-string": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", - "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1636,9 +1481,8 @@ }, "node_modules/is-symbol": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.2" }, @@ -1651,30 +1495,25 @@ }, "node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/istanbul-lib-coverage": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=8" } }, "node_modules/istanbul-lib-report": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^3.0.0", @@ -1686,9 +1525,8 @@ }, "node_modules/istanbul-reports": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -1699,15 +1537,13 @@ }, "node_modules/js-tokens": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/js-yaml": { "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -1718,27 +1554,23 @@ }, "node_modules/json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-schema-traverse": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json5": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, + "license": "MIT", "dependencies": { "minimist": "^1.2.0" }, @@ -1748,9 +1580,8 @@ }, "node_modules/jsx-ast-utils": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.2", "object.assign": "^4.1.2" @@ -1761,9 +1592,8 @@ }, "node_modules/levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -1773,14 +1603,13 @@ } }, "node_modules/load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "version": "4.0.0", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", + "parse-json": "^4.0.0", + "pify": "^3.0.0", "strip-bom": "^3.0.0" }, "engines": { @@ -1788,63 +1617,52 @@ } }, "node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "version": "6.0.0", "dev": true, + "license": "MIT", "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/lockbase": { "version": "1.0.9", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.0.9.tgz", - "integrity": "sha512-6UYmTjzPSZcoAj2DNlmz6J8uXYD5UcIlu3JXcx6FJoFCZbjQ5n78WfQ4CVQebRpL704MXCIOV00Kn1QzuS2zyQ==", + "license": "AGPL-3.0", "dependencies": { "uuid": "^8.3.1" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "node_modules/lodash.clonedeep": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.truncate": { "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/logslot": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", - "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "license": "MIT", "dependencies": { "chalk": "^4.1.1" } }, "node_modules/loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, + "license": "MIT", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -1854,8 +1672,7 @@ }, "node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -1865,9 +1682,8 @@ }, "node_modules/make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^6.0.0" }, @@ -1880,18 +1696,16 @@ }, "node_modules/make-dir/node_modules/semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/minimatch": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -1901,50 +1715,31 @@ }, "node_modules/minimist": { "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } + "license": "MIT" }, "node_modules/mql-to-jql": { "version": "1.1.9", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.1.9.tgz", - "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" + "license": "MIT" }, "node_modules/ms": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ndjson-fe": { "version": "1.2.10", - "resolved": "https://registry.npmjs.org/ndjson-fe/-/ndjson-fe-1.2.10.tgz", - "integrity": "sha512-KUnVQdm+kWJt/2HhiBmZ4EhzliHWXH6GglJDVZrrF8vr8ps2sBVFzijcz/jsXm7P9ji4lWWU3X1D1RZp0F6lWA==", + "license": "MIT", "engines": { "node": ">=10" } }, "node_modules/node-ejdb-lite": { "version": "3.4.2", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", - "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", "cpu": [ "x64", "x32", @@ -1952,6 +1747,7 @@ "arm64" ], "hasInstallScript": true, + "license": "MIT", "os": [ "darwin", "linux", @@ -1968,9 +1764,8 @@ }, "node_modules/normalize-package-data": { "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -1980,45 +1775,40 @@ }, "node_modules/normalize-package-data/node_modules/semver": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } }, "node_modules/object-assign": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { "version": "1.10.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -2034,9 +1824,8 @@ }, "node_modules/object.entries": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -2048,9 +1837,8 @@ }, "node_modules/object.fromentries": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -2066,9 +1854,8 @@ }, "node_modules/object.values": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -2083,18 +1870,16 @@ }, "node_modules/once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, + "license": "ISC", "dependencies": { "wrappy": "1" } }, "node_modules/optionator": { "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, + "license": "MIT", "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -2108,43 +1893,45 @@ } }, "node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "version": "3.1.0", "dev": true, + "license": "MIT", "dependencies": { - "p-try": "^1.0.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "version": "5.0.0", "dev": true, + "license": "MIT", "dependencies": { - "p-limit": "^1.1.0" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-try": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/parent-module": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, + "license": "MIT", "dependencies": { "callsites": "^3.0.0" }, @@ -2153,76 +1940,69 @@ } }, "node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "version": "4.0.0", "dev": true, + "license": "MIT", "dependencies": { - "error-ex": "^1.2.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "version": "4.0.0", "dev": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/path-parse": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "version": "3.0.0", "dev": true, + "license": "MIT", "dependencies": { - "pify": "^2.0.0" + "pify": "^3.0.0" }, "engines": { "node": ">=4" } }, "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "version": "3.0.0", "dev": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/pkg-conf": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^3.0.0", "load-json-file": "^5.2.0" @@ -2233,9 +2013,8 @@ }, "node_modules/pkg-conf/node_modules/find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^3.0.0" }, @@ -2245,9 +2024,8 @@ }, "node_modules/pkg-conf/node_modules/load-json-file": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", @@ -2261,9 +2039,8 @@ }, "node_modules/pkg-conf/node_modules/locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^3.0.0", "path-exists": "^3.0.0" @@ -2274,9 +2051,8 @@ }, "node_modules/pkg-conf/node_modules/p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -2289,9 +2065,8 @@ }, "node_modules/pkg-conf/node_modules/p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.0.0" }, @@ -2301,49 +2076,40 @@ }, "node_modules/pkg-conf/node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/pkg-conf/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "3.0.0", "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/pkg-conf/node_modules/pify": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/pkg-conf/node_modules/type-fest": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=6" } }, "node_modules/pkg-dir": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^2.1.0" }, @@ -2351,475 +2117,397 @@ "node": ">=4" } }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "2.1.0", "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^2.0.0" + }, "engines": { - "node": ">= 0.8.0" + "node": ">=4" } }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "2.0.0", "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">=4" } }, - "node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "1.3.0", "dev": true, + "license": "MIT", "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "2.0.0", "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^1.1.0" + }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "node_modules/read-pkg": { + "node_modules/pkg-up": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, + "license": "MIT", "dependencies": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "find-up": "^2.1.0" }, "engines": { "node": ">=4" } }, - "node_modules/read-pkg-up": { + "node_modules/pkg-up/node_modules/find-up": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "dev": true, + "license": "MIT", "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "node_modules/pkg-up/node_modules/p-limit": { + "version": "1.3.0", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "p-try": "^1.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^1.1.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=4" } }, - "node_modules/regexpp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", "dev": true, + "license": "MIT", "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": ">=4" } }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "node_modules/prelude-ls": { + "version": "1.2.1", "dev": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.8.0" } }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "node_modules/process-nextick-args": { + "version": "2.0.1", + "license": "MIT" + }, + "node_modules/progress": { + "version": "2.0.3", "dev": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=0.4.0" } }, - "node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "node_modules/prop-types": { + "version": "15.7.2", "dev": true, + "license": "MIT", "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" } }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/punycode": { + "version": "2.1.1", "dev": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/righto": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", - "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", + "node_modules/react-is": { + "version": "16.13.1", + "dev": true, + "license": "MIT" + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "abbott": "^1.1.3", - "setimmediate": "^1.0.5" + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/read-pkg-up": { + "version": "3.0.0", "dev": true, + "license": "MIT", "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">=4" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/semistandard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.0.tgz", - "integrity": "sha512-pLETGjFyl0ETMDAEZxkC1OJBmNmPIMpMkayStGTgHMMh/5FM7Rbk5NWc1t7yfQ4PrRURQH8MUg3ZxvojJJifcw==", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "license": "MIT", "dependencies": { - "eslint": "~7.12.1", - "eslint-config-semistandard": "15.0.1", - "eslint-config-standard": "16.0.0", - "eslint-config-standard-jsx": "10.0.0", - "eslint-plugin-import": "~2.22.1", - "eslint-plugin-node": "~11.1.0", - "eslint-plugin-promise": "~4.2.1", - "eslint-plugin-react": "~7.21.5", - "eslint-plugin-standard": "~4.0.2", - "standard-engine": "^14.0.0" - }, - "bin": { - "semistandard": "bin/cmd.js" + "locate-path": "^2.0.0" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/semistandard/node_modules/@eslint/eslintrc": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", - "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", "dev": true, + "license": "MIT", "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=4" } }, - "node_modules/semistandard/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "1.3.0", "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/semistandard/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "p-limit": "^1.1.0" }, "engines": { "node": ">=4" } }, - "node_modules/semistandard/node_modules/astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, - "node_modules/semistandard/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, + "node_modules/readable-stream": { + "version": "3.6.0", + "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/semistandard/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/semistandard/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/semistandard/node_modules/eslint": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", - "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.1", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.0", - "esquery": "^1.2.0", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/semistandard/node_modules/file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "node_modules/regexpp": { + "version": "3.2.0", "dev": true, - "dependencies": { - "flat-cache": "^2.0.1" + "license": "MIT", + "engines": { + "node": ">=8" }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "dev": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/semistandard/node_modules/flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "node_modules/require-from-string": { + "version": "2.0.2", "dev": true, - "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/semistandard/node_modules/flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "node_modules/semistandard/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "node_modules/resolve": { + "version": "1.20.0", "dev": true, + "license": "MIT", "dependencies": { - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/semistandard/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "node_modules/resolve-from": { + "version": "4.0.0", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, - "node_modules/semistandard/node_modules/rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "node_modules/righto": { + "version": "6.1.3", + "license": "ISC", + "dependencies": { + "abbott": "^1.1.3", + "setimmediate": "^1.0.5" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, "bin": { "rimraf": "bin.js" - } - }, - "node_modules/semistandard/node_modules/slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/semistandard/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } + "node_modules/safe-buffer": { + "version": "5.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "node_modules/semistandard/node_modules/string-width/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "node_modules/semistandard": { + "version": "16.0.1", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", "dependencies": { - "ansi-regex": "^4.1.0" + "eslint": "^7.27.0", + "eslint-config-semistandard": "16.0.0", + "eslint-config-standard": "16.0.3", + "eslint-config-standard-jsx": "10.0.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^5.1.0", + "eslint-plugin-react": "~7.21.5", + "standard-engine": "^14.0.0" }, - "engines": { - "node": ">=6" - } - }, - "node_modules/semistandard/node_modules/table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "dev": true, - "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" + "bin": { + "semistandard": "bin/cmd.js" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/semistandard/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=10.12.0" } }, "node_modules/semver": { "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -2832,19 +2520,16 @@ }, "node_modules/server-destroy": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + "license": "ISC" }, "node_modules/setimmediate": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + "license": "MIT" }, "node_modules/shebang-command": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -2854,18 +2539,16 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/side-channel": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", @@ -2877,15 +2560,13 @@ }, "node_modules/signal-exit": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -2900,18 +2581,16 @@ }, "node_modules/source-map": { "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">= 8" } }, "node_modules/spdx-correct": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -2919,15 +2598,13 @@ }, "node_modules/spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true + "dev": true, + "license": "CC-BY-3.0" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, + "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -2935,20 +2612,23 @@ }, "node_modules/spdx-license-ids": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", - "dev": true + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/split2": { + "version": "3.2.2", + "license": "ISC", + "dependencies": { + "readable-stream": "^3.0.0" + } }, "node_modules/sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/standard-engine": { "version": "14.0.1", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", - "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "funding": [ { @@ -2964,6 +2644,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "get-stdin": "^8.0.0", "minimist": "^1.2.5", @@ -2974,11 +2655,17 @@ "node": ">=8.10" } }, + "node_modules/string_decoder": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, "node_modules/string-width": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -2990,9 +2677,8 @@ }, "node_modules/string.prototype.matchall": { "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -3009,9 +2695,8 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -3022,9 +2707,8 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -3035,9 +2719,8 @@ }, "node_modules/strip-ansi": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.0" }, @@ -3047,18 +2730,16 @@ }, "node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -3068,8 +2749,7 @@ }, "node_modules/supports-color": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -3079,9 +2759,8 @@ }, "node_modules/table": { "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", @@ -3096,9 +2775,8 @@ }, "node_modules/table/node_modules/ajv": { "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -3112,23 +2790,21 @@ }, "node_modules/table/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/tcpocket": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-6.0.0.tgz", - "integrity": "sha512-z0SsrMa4hg0FIYUvm+28jvMsJBTC9QCSKbqotazv0+6zkIeCi7xajXadTkDt9KwbU7RDzuZue9CsSxzsBKzu8Q==", + "version": "7.2.0", + "license": "MIT", "dependencies": { + "binary-split": "^1.0.5", "ndjson-fe": "^1.2.10" } }, "node_modules/test-exclude": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, + "license": "ISC", "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -3140,15 +2816,45 @@ }, "node_modules/text-table": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/through2": { + "version": "2.0.5", + "license": "MIT", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.7", + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT" + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } }, "node_modules/tsconfig-paths": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, + "license": "MIT", "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.1", @@ -3158,9 +2864,8 @@ }, "node_modules/type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" }, @@ -3170,9 +2875,8 @@ }, "node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -3182,9 +2886,8 @@ }, "node_modules/unbox-primitive": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has-bigints": "^1.0.1", @@ -3197,46 +2900,45 @@ }, "node_modules/uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" } }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "license": "MIT" + }, "node_modules/uuid": { "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } }, "node_modules/v8-compile-cache": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/v8-to-istanbul": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", - "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", + "version": "8.0.0", "dev": true, + "license": "ISC", "dependencies": { "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0", "source-map": "^0.7.3" }, "engines": { - "node": ">=10.10.0" + "node": ">=10.12.0" } }, "node_modules/validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -3244,9 +2946,8 @@ }, "node_modules/which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -3259,9 +2960,8 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, + "license": "MIT", "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -3275,18 +2975,16 @@ }, "node_modules/word-wrap": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/wrap-ansi": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -3301,58 +2999,47 @@ }, "node_modules/wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", "dev": true, - "dependencies": { - "mkdirp": "^0.5.1" - }, - "engines": { - "node": ">=4" - } + "license": "ISC" }, "node_modules/wtfnode": { "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", + "license": "ISC", "bin": { "wtfnode": "proxy.js" } }, "node_modules/xdg-basedir": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, + "node_modules/xtend": { + "version": "4.0.2", + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, "node_modules/y18n": { "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } }, "node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "license": "ISC" }, "node_modules/yargs": { "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, + "license": "MIT", "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -3368,18 +3055,16 @@ }, "node_modules/yargs-parser": { "version": "20.2.7", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", - "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } }, "node_modules/yocto-queue": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -3391,8 +3076,6 @@ "dependencies": { "@babel/code-frame": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, "requires": { "@babel/highlight": "^7.10.4" @@ -3400,14 +3083,10 @@ }, "@babel/helper-validator-identifier": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true }, "@babel/highlight": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.5", @@ -3417,8 +3096,6 @@ "dependencies": { "ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { "color-convert": "^1.9.0" @@ -3426,8 +3103,6 @@ }, "chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -3437,8 +3112,6 @@ }, "color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { "color-name": "1.1.3" @@ -3446,26 +3119,18 @@ }, "color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "escape-string-regexp": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -3475,14 +3140,10 @@ }, "@bcoe/v8-coverage": { "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, "@eslint/eslintrc": { "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -3498,44 +3159,30 @@ }, "@istanbuljs/schema": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, "@types/istanbul-lib-coverage": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, "@types/json5": { "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, "abbott": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", - "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" + "version": "1.1.3" }, "acorn": { "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, "acorn-jsx": { "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, "requires": {} }, "ajv": { "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -3546,28 +3193,20 @@ }, "ansi-colors": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true }, "ansi-regex": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { "color-convert": "^2.0.1" } }, "argparse": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { "sprintf-js": "~1.0.2" @@ -3575,8 +3214,6 @@ }, "array-includes": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3588,8 +3225,6 @@ }, "array.prototype.flat": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -3599,8 +3234,6 @@ }, "array.prototype.flatmap": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -3611,30 +3244,28 @@ }, "astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, "balanced-match": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, "basictap": { "version": "1.1.13", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.1.13.tgz", - "integrity": "sha512-74mw9kmAdmdkHqtP70YFqHMYzO3my92kZA4axHbKI7V7sOUCniiVP1R+0wR7Y5BO4v5wnrt4sMU3nLjlvzTuWw==", "requires": { "colorette": "^1.2.2", "concurrun": "^1.1.0", "righto": "^6.1.3" } }, + "binary-split": { + "version": "1.0.5", + "requires": { + "through2": "^2.0.3" + } + }, "brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { "balanced-match": "^1.0.0", @@ -3642,9 +3273,7 @@ } }, "c8": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.2.tgz", - "integrity": "sha512-8AqNnUMxB3hsgYCYso2GJjlwnaNPlrEEbYbCQb7N76V1nrOgCKXiTcE3gXU18rIj0FeduPywROrIBMC7XAKApg==", + "version": "7.7.3", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", @@ -3656,60 +3285,13 @@ "istanbul-reports": "^3.0.2", "rimraf": "^3.0.0", "test-exclude": "^6.0.0", - "v8-to-istanbul": "^7.1.0", + "v8-to-istanbul": "^8.0.0", "yargs": "^16.2.0", "yargs-parser": "^20.2.7" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - } } }, "call-bind": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -3718,14 +3300,10 @@ }, "callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, "chalk": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3733,8 +3311,6 @@ }, "cliui": { "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "requires": { "string-width": "^4.2.0", @@ -3744,52 +3320,41 @@ }, "color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { "color-name": "~1.1.4" } }, "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "version": "1.1.4" }, "colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + "version": "1.2.2" }, "concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "concurrun": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", - "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" - }, - "contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true + "version": "1.1.0" }, "convert-source-map": { "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, "requires": { "safe-buffer": "~5.1.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "dev": true + } } }, + "core-util-is": { + "version": "1.0.2" + }, "cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -3799,8 +3364,6 @@ }, "debug": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -3808,14 +3371,10 @@ }, "deep-is": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, "define-properties": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "requires": { "object-keys": "^1.0.12" @@ -3823,8 +3382,6 @@ }, "doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -3832,14 +3389,10 @@ }, "emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "enquirer": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "requires": { "ansi-colors": "^4.1.1" @@ -3847,8 +3400,6 @@ }, "error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { "is-arrayish": "^0.2.1" @@ -3856,8 +3407,6 @@ }, "es-abstract": { "version": "1.18.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", - "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3880,8 +3429,6 @@ }, "es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -3891,20 +3438,14 @@ }, "escalade": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, "escape-string-regexp": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, "eslint": { "version": "7.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", - "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -3949,30 +3490,22 @@ } }, "eslint-config-semistandard": { - "version": "15.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-15.0.1.tgz", - "integrity": "sha512-sfV+qNBWKOmF0kZJll1VH5XqOAdTmLlhbOl9WKI11d2eMEe+Kicxnpm24PQWHOqAfk5pAWU2An0LjNCXKa4Usg==", + "version": "16.0.0", "dev": true, "requires": {} }, "eslint-config-standard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.0.tgz", - "integrity": "sha512-kMCehB9yXIG+LNsu9uXfm06o6Pt63TFAOzn9tUOzw4r/hFIxHhNR1Xomxy+B5zMrXhqyfHVEcmanzttEjGei9w==", + "version": "16.0.3", "dev": true, "requires": {} }, "eslint-config-standard-jsx": { "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", - "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", "dev": true, "requires": {} }, "eslint-import-resolver-node": { "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, "requires": { "debug": "^2.6.9", @@ -3981,8 +3514,6 @@ "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -3990,16 +3521,12 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, "eslint-module-utils": { "version": "2.6.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", - "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, "requires": { "debug": "^3.2.7", @@ -4008,8 +3535,6 @@ "dependencies": { "debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" @@ -4019,8 +3544,6 @@ }, "eslint-plugin-es": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, "requires": { "eslint-utils": "^2.0.0", @@ -4028,57 +3551,81 @@ } }, "eslint-plugin-import": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", - "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", + "version": "2.23.4", "dev": true, "requires": { - "array-includes": "^3.1.1", - "array.prototype.flat": "^1.2.3", - "contains-path": "^0.1.0", + "array-includes": "^3.1.3", + "array.prototype.flat": "^1.2.4", "debug": "^2.6.9", - "doctrine": "1.5.0", + "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.0", + "eslint-module-utils": "^2.6.1", + "find-up": "^2.0.0", "has": "^1.0.3", + "is-core-module": "^2.4.0", "minimatch": "^3.0.4", - "object.values": "^1.1.1", - "read-pkg-up": "^2.0.0", - "resolve": "^1.17.0", + "object.values": "^1.1.3", + "pkg-up": "^2.0.0", + "read-pkg-up": "^3.0.0", + "resolve": "^1.20.0", "tsconfig-paths": "^3.9.0" }, "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" } }, "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "version": "2.1.0", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "find-up": { + "version": "2.1.0", "dev": true, "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", "dev": true } } }, "eslint-plugin-node": { "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, "requires": { "eslint-plugin-es": "^3.0.0", @@ -4091,28 +3638,21 @@ "dependencies": { "ignore": { "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, "semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } }, "eslint-plugin-promise": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz", - "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==", - "dev": true + "version": "5.1.0", + "dev": true, + "requires": {} }, "eslint-plugin-react": { "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, "requires": { "array-includes": "^3.1.1", @@ -4130,8 +3670,6 @@ "dependencies": { "doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -4139,17 +3677,8 @@ } } }, - "eslint-plugin-standard": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.2.tgz", - "integrity": "sha512-nKptN8l7jksXkwFk++PhJB3cCDTcXOEyhISIN86Ue2feJ1LFyY3PrY3/xT2keXlJSY5bpmbiTG0f885/YKAvTA==", - "dev": true, - "requires": {} - }, "eslint-scope": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -4158,8 +3687,6 @@ }, "eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" @@ -4167,22 +3694,16 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "eslint-visitor-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true }, "espree": { "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "requires": { "acorn": "^7.4.0", @@ -4192,22 +3713,16 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, "esquery": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -4215,16 +3730,12 @@ "dependencies": { "estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } }, "esrecurse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { "estraverse": "^5.2.0" @@ -4232,64 +3743,47 @@ "dependencies": { "estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } }, "estraverse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true }, "esutils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, "fast-deep-equal": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, "fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, "file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "requires": { "flat-cache": "^3.0.4" } }, "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "version": "5.0.0", "dev": true, "requires": { - "locate-path": "^2.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" } }, "flat-cache": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "requires": { "flatted": "^3.1.0", @@ -4298,14 +3792,10 @@ }, "flatted": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, "foreground-child": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, "requires": { "cross-spawn": "^7.0.0", @@ -4314,32 +3804,22 @@ }, "fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, "function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, "functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, "get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-intrinsic": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -4349,14 +3829,10 @@ }, "get-stdin": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true }, "glob": { "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -4369,8 +3845,6 @@ }, "glob-parent": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -4378,8 +3852,6 @@ }, "globals": { "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -4387,14 +3859,10 @@ }, "graceful-fs": { "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, "has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { "function-bind": "^1.1.1" @@ -4402,43 +3870,29 @@ }, "has-bigints": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true }, "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "version": "4.0.0" }, "has-symbols": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true }, "hosted-git-info": { "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "html-escaper": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "ignore": { "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, "import-fresh": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -4447,14 +3901,10 @@ }, "imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, "inflight": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { "once": "^1.3.0", @@ -4462,15 +3912,10 @@ } }, "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "version": "2.0.4" }, "internal-slot": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "requires": { "get-intrinsic": "^1.1.0", @@ -4480,20 +3925,14 @@ }, "is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-bigint": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", - "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", "dev": true }, "is-boolean-object": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", - "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, "requires": { "call-bind": "^1.0.2" @@ -4501,14 +3940,10 @@ }, "is-callable": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true }, "is-core-module": { "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, "requires": { "has": "^1.0.3" @@ -4516,26 +3951,18 @@ }, "is-date-object": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", "dev": true }, "is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "is-glob": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -4543,20 +3970,14 @@ }, "is-negative-zero": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true }, "is-number-object": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", - "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", "dev": true }, "is-regex": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4565,41 +3986,28 @@ }, "is-string": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", - "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", "dev": true }, "is-symbol": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "requires": { "has-symbols": "^1.0.2" } }, "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "version": "1.0.0" }, "isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, "istanbul-lib-coverage": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true }, "istanbul-lib-report": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, "requires": { "istanbul-lib-coverage": "^3.0.0", @@ -4609,8 +4017,6 @@ }, "istanbul-reports": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4619,14 +4025,10 @@ }, "js-tokens": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -4635,26 +4037,18 @@ }, "json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "json-schema-traverse": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, "json5": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { "minimist": "^1.2.0" @@ -4662,8 +4056,6 @@ }, "jsx-ast-utils": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, "requires": { "array-includes": "^3.1.2", @@ -4672,8 +4064,6 @@ }, "levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "requires": { "prelude-ls": "^1.2.1", @@ -4681,71 +4071,48 @@ } }, "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "version": "4.0.0", "dev": true, "requires": { "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", + "parse-json": "^4.0.0", + "pify": "^3.0.0", "strip-bom": "^3.0.0" } }, "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "version": "6.0.0", "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "requires": { + "p-locate": "^5.0.0" } }, "lockbase": { "version": "1.0.9", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.0.9.tgz", - "integrity": "sha512-6UYmTjzPSZcoAj2DNlmz6J8uXYD5UcIlu3JXcx6FJoFCZbjQ5n78WfQ4CVQebRpL704MXCIOV00Kn1QzuS2zyQ==", "requires": { "uuid": "^8.3.1" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "lodash.clonedeep": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, "lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "lodash.truncate": { "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", "dev": true }, "logslot": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", - "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", "requires": { "chalk": "^4.1.1" } }, "loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" @@ -4753,16 +4120,12 @@ }, "lru-cache": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "requires": { "yallist": "^4.0.0" } }, "make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { "semver": "^6.0.0" @@ -4770,69 +4133,42 @@ "dependencies": { "semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } }, "minimatch": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "1.2.5" }, "mql-to-jql": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.1.9.tgz", - "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" + "version": "1.1.9" }, "ms": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, "ndjson-fe": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/ndjson-fe/-/ndjson-fe-1.2.10.tgz", - "integrity": "sha512-KUnVQdm+kWJt/2HhiBmZ4EhzliHWXH6GglJDVZrrF8vr8ps2sBVFzijcz/jsXm7P9ji4lWWU3X1D1RZp0F6lWA==" + "version": "1.2.10" }, "node-ejdb-lite": { "version": "3.4.2", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", - "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", "requires": { "semver": "^7.3.5" } }, "normalize-package-data": { "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { "hosted-git-info": "^2.1.4", @@ -4843,34 +4179,24 @@ "dependencies": { "semver": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } }, "object-assign": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true }, "object-inspect": { "version": "1.10.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, "object.assign": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -4881,8 +4207,6 @@ }, "object.entries": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4892,8 +4216,6 @@ }, "object.fromentries": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4904,8 +4226,6 @@ }, "object.values": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4915,8 +4235,6 @@ }, "once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { "wrappy": "1" @@ -4924,8 +4242,6 @@ }, "optionator": { "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "requires": { "deep-is": "^0.1.3", @@ -4937,90 +4253,67 @@ } }, "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "version": "3.1.0", "dev": true, "requires": { - "p-try": "^1.0.0" + "yocto-queue": "^0.1.0" } }, "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "version": "5.0.0", "dev": true, "requires": { - "p-limit": "^1.1.0" + "p-limit": "^3.0.2" } }, "p-try": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, "parent-module": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { "callsites": "^3.0.0" } }, "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "version": "4.0.0", "dev": true, "requires": { - "error-ex": "^1.2.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "version": "4.0.0", "dev": true }, "path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, "path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "path-parse": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "version": "3.0.0", "dev": true, "requires": { - "pify": "^2.0.0" + "pify": "^3.0.0" } }, "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "version": "3.0.0", "dev": true }, "pkg-conf": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { "find-up": "^3.0.0", @@ -5029,8 +4322,6 @@ "dependencies": { "find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" @@ -5038,8 +4329,6 @@ }, "load-json-file": { "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { "graceful-fs": "^4.1.15", @@ -5051,8 +4340,6 @@ }, "locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -5061,8 +4348,6 @@ }, "p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -5070,8 +4355,6 @@ }, "p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -5079,59 +4362,119 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } + "path-exists": { + "version": "3.0.0", + "dev": true }, "pify": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "type-fest": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true } } }, "pkg-dir": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "dev": true + } + } + }, + "pkg-up": { + "version": "2.0.0", + "dev": true, + "requires": { + "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "dev": true + } } }, "prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, + "process-nextick-args": { + "version": "2.0.1" + }, "progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "prop-types": { "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", "dev": true, "requires": { "loose-envify": "^1.4.0", @@ -5141,41 +4484,74 @@ }, "punycode": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "version": "3.0.0", "dev": true, "requires": { - "load-json-file": "^2.0.0", + "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "path-type": "^3.0.0" } }, "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "version": "3.0.0", "dev": true, "requires": { "find-up": "^2.0.0", - "read-pkg": "^2.0.0" + "read-pkg": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "dev": true + } + } + }, + "readable-stream": { + "version": "3.6.0", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, "regexp.prototype.flags": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5183,27 +4559,19 @@ } }, "regexpp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "version": "3.2.0", "dev": true }, "require-directory": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, "require-from-string": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "resolve": { "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "requires": { "is-core-module": "^2.2.0", @@ -5212,14 +4580,10 @@ }, "resolve-from": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, "righto": { "version": "6.1.3", - "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", - "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", "requires": { "abbott": "^1.1.3", "setimmediate": "^1.0.5" @@ -5227,267 +4591,43 @@ }, "rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { "glob": "^7.1.3" } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "version": "5.2.1" }, "semistandard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.0.tgz", - "integrity": "sha512-pLETGjFyl0ETMDAEZxkC1OJBmNmPIMpMkayStGTgHMMh/5FM7Rbk5NWc1t7yfQ4PrRURQH8MUg3ZxvojJJifcw==", + "version": "16.0.1", "dev": true, "requires": { - "eslint": "~7.12.1", - "eslint-config-semistandard": "15.0.1", - "eslint-config-standard": "16.0.0", + "eslint": "^7.27.0", + "eslint-config-semistandard": "16.0.0", + "eslint-config-standard": "16.0.3", "eslint-config-standard-jsx": "10.0.0", - "eslint-plugin-import": "~2.22.1", - "eslint-plugin-node": "~11.1.0", - "eslint-plugin-promise": "~4.2.1", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^5.1.0", "eslint-plugin-react": "~7.21.5", - "eslint-plugin-standard": "~4.0.2", "standard-engine": "^14.0.0" - }, - "dependencies": { - "@eslint/eslintrc": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", - "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - } - }, - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "eslint": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", - "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.1", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.0", - "esquery": "^1.2.0", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "dependencies": { - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } } }, "semver": { "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } }, "server-destroy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + "version": "1.0.1" }, "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + "version": "1.0.5" }, "shebang-command": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { "shebang-regex": "^3.0.0" @@ -5495,14 +4635,10 @@ }, "shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, "side-channel": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -5512,14 +4648,10 @@ }, "signal-exit": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -5529,14 +4661,10 @@ }, "source-map": { "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true }, "spdx-correct": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -5545,14 +4673,10 @@ }, "spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -5561,20 +4685,20 @@ }, "spdx-license-ids": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", "dev": true }, + "split2": { + "version": "3.2.2", + "requires": { + "readable-stream": "^3.0.0" + } + }, "sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "standard-engine": { "version": "14.0.1", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", - "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "requires": { "get-stdin": "^8.0.0", @@ -5583,10 +4707,14 @@ "xdg-basedir": "^4.0.0" } }, + "string_decoder": { + "version": "1.3.0", + "requires": { + "safe-buffer": "~5.2.0" + } + }, "string-width": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -5596,8 +4724,6 @@ }, "string.prototype.matchall": { "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5612,8 +4738,6 @@ }, "string.prototype.trimend": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5622,8 +4746,6 @@ }, "string.prototype.trimstart": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5632,8 +4754,6 @@ }, "strip-ansi": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { "ansi-regex": "^5.0.0" @@ -5641,28 +4761,20 @@ }, "strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, "strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, "supports-color": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "requires": { "has-flag": "^4.0.0" } }, "table": { "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -5675,8 +4787,6 @@ "dependencies": { "ajv": { "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -5687,24 +4797,19 @@ }, "json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true } } }, "tcpocket": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-6.0.0.tgz", - "integrity": "sha512-z0SsrMa4hg0FIYUvm+28jvMsJBTC9QCSKbqotazv0+6zkIeCi7xajXadTkDt9KwbU7RDzuZue9CsSxzsBKzu8Q==", + "version": "7.2.0", "requires": { + "binary-split": "^1.0.5", "ndjson-fe": "^1.2.10" } }, "test-exclude": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "requires": { "@istanbuljs/schema": "^0.1.2", @@ -5714,14 +4819,40 @@ }, "text-table": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "through2": { + "version": "2.0.5", + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2" + }, + "string_decoder": { + "version": "1.1.1", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, "tsconfig-paths": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, "requires": { "@types/json5": "^0.0.29", @@ -5732,8 +4863,6 @@ }, "type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { "prelude-ls": "^1.2.1" @@ -5741,14 +4870,10 @@ }, "type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, "unbox-primitive": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -5759,28 +4884,23 @@ }, "uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" } }, + "util-deprecate": { + "version": "1.0.2" + }, "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + "version": "8.3.2" }, "v8-compile-cache": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "v8-to-istanbul": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", - "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", + "version": "8.0.0", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.1", @@ -5790,8 +4910,6 @@ }, "validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -5800,8 +4918,6 @@ }, "which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { "isexe": "^2.0.0" @@ -5809,8 +4925,6 @@ }, "which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "requires": { "is-bigint": "^1.0.1", @@ -5822,14 +4936,10 @@ }, "word-wrap": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, "wrap-ansi": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -5839,45 +4949,27 @@ }, "wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - } - }, "wtfnode": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==" + "version": "0.8.4" }, "xdg-basedir": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, + "xtend": { + "version": "4.0.2" + }, "y18n": { "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "version": "4.0.0" }, "yargs": { "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { "cliui": "^7.0.2", @@ -5891,14 +4983,10 @@ }, "yargs-parser": { "version": "20.2.7", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", - "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true }, "yocto-queue": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true } } diff --git a/package.json b/package.json index 2fd0bd9..6266c46 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "index.js", "scripts": { - "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 97.43 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 97 node test" }, "keywords": [], "author": "", @@ -19,13 +19,14 @@ "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "tcpocket": "^6.0.0", + "split2": "^3.2.2", + "tcpocket": "^7.2.0", "wtfnode": "^0.8.4" }, "devDependencies": { - "c8": "^7.7.2", + "c8": "^7.7.3", "eslint": "^7.28.0", - "semistandard": "^16.0.0", + "semistandard": "^16.0.1", "uuid": "^8.3.2" } } diff --git a/test/features/basic.js b/test/features/basic.js index 4e66156..a4f31e5 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -9,8 +9,7 @@ function createExampleDocuments (client, count) { return Promise.all( counts.map(count => { - return client.send({ - [c.COMMAND]: c.POST, + return client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar' + (count + 1) @@ -20,23 +19,6 @@ function createExampleDocuments (client, count) { ); } -test('invalid data', async t => { - t.plan(1); - - const servers = await createTestServer(1); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); - - await createExampleDocuments(client, 1); - - const getResponse = await client.send(''); - - t.equal(getResponse[c.STATUS], 400, 'has status'); - - await client.close(); - await servers.close(); -}); - test('invalid command', async t => { t.plan(1); @@ -46,11 +28,9 @@ test('invalid command', async t => { await createExampleDocuments(client, 1); - const getResponse = await client.send({ - [c.COMMAND]: -1 - }); + const getResponse = await client.send(255); - t.equal(getResponse[c.STATUS], 404, 'has status'); + t.equal(getResponse.command, c.STATUS_NOT_FOUND, 'has status'); await client.close(); await servers.close(); @@ -63,16 +43,15 @@ test('info', async t => { const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); - const result = await client.send({ - [c.COMMAND]: c.INFO, + const result = await client.send(c.INFO, { [c.INTERNAL]: true }); - t.equal(result[c.STATUS], 200, 'response had 200 status'); - t.equal(result[c.DATA].nodeName.length, 36, 'nodeName has correct length'); - t.equal(result[c.DATA].nodes.length, 1, 'one node was returned'); - t.equal(result[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); - t.equal(result[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); + t.equal(result.command, c.STATUS_OK, 'response had 200 status'); + t.equal(result.json()[c.DATA].nodeName.length, 36, 'nodeName has correct length'); + t.equal(result.json()[c.DATA].nodes.length, 1, 'one node was returned'); + t.equal(result.json()[c.DATA].nodes[0].host, servers[0].options.host, 'first node had correct host'); + t.equal(result.json()[c.DATA].nodes[0].port, servers[0].options.port, 'first node had correct port'); await Promise.all([ client.close(), @@ -89,19 +68,18 @@ test('post', async t => { const postResponses = await createExampleDocuments(client, 3); - t.equal(postResponses[0][c.STATUS], 201, 'has status'); - t.ok(postResponses[0][c.DATA].id, 'has id'); - t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + t.equal(postResponses[0].command, c.STATUS_CREATED, 'has status'); + t.ok(postResponses[0].json()[c.DATA].id, 'has id'); + t.equal(postResponses[0].json()[c.DATA].foo, 'bar1', 'has foo property'); - const getResponse = await client.send({ - [c.COMMAND]: c.GET, + const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests' }); - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); - const sortedDocuments = getResponse[c.DATA] + const sortedDocuments = getResponse.json()[c.DATA] .sort((a, b) => a.foo > b.foo ? 1 : -1); t.ok(sortedDocuments[0].id, 'has id property'); @@ -124,18 +102,17 @@ test('get - with order (ascending)', async t => { await createExampleDocuments(client, 3); - const getResponse = await client.send({ - [c.COMMAND]: c.GET, + const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests', [c.ORDER]: ['asc(foo)'] }); - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); - t.equal(getResponse[c.DATA][0].foo, 'bar1', 'has foo property'); - t.equal(getResponse[c.DATA][1].foo, 'bar2', 'has foo property'); - t.equal(getResponse[c.DATA][2].foo, 'bar3', 'has foo property'); + t.equal(getResponse.json()[c.DATA][0].foo, 'bar1', 'has foo property'); + t.equal(getResponse.json()[c.DATA][1].foo, 'bar2', 'has foo property'); + t.equal(getResponse.json()[c.DATA][2].foo, 'bar3', 'has foo property'); await client.close(); await servers.close(); @@ -150,18 +127,17 @@ test('get - with order (descending)', async t => { await createExampleDocuments(client, 3); - const getResponse = await client.send({ - [c.COMMAND]: c.GET, + const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests', [c.ORDER]: ['desc(foo)'] }); - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); - t.equal(getResponse[c.DATA][0].foo, 'bar3', 'has foo property'); - t.equal(getResponse[c.DATA][1].foo, 'bar2', 'has foo property'); - t.equal(getResponse[c.DATA][2].foo, 'bar1', 'has foo property'); + t.equal(getResponse.json()[c.DATA][0].foo, 'bar3', 'has foo property'); + t.equal(getResponse.json()[c.DATA][1].foo, 'bar2', 'has foo property'); + t.equal(getResponse.json()[c.DATA][2].foo, 'bar1', 'has foo property'); await client.close(); await servers.close(); @@ -176,14 +152,13 @@ test('get - with limit', async t => { await createExampleDocuments(client, 5); - const getResponse = await client.send({ - [c.COMMAND]: c.GET, + const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests', [c.LIMIT]: 3 }); - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); await client.close(); await servers.close(); diff --git a/test/features/cluster.js b/test/features/cluster.js index a881621..be5d1b1 100644 --- a/test/features/cluster.js +++ b/test/features/cluster.js @@ -15,24 +15,21 @@ test('cluster - post', async t => { await client.waitUntilConnected(); const postResponses = await Promise.all([ - client.send({ - [c.COMMAND]: c.POST, + client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar1' } }), - client.send({ - [c.COMMAND]: c.POST, + client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar2' } }), - client.send({ - [c.COMMAND]: c.POST, + client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar3' @@ -40,19 +37,18 @@ test('cluster - post', async t => { }) ]); - t.equal(postResponses[0][c.STATUS], 201, 'has status'); - t.ok(postResponses[0][c.DATA].id, 'has id'); - t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + t.equal(postResponses[0].command, c.STATUS_CREATED, 'has status'); + t.ok(postResponses[0].json()[c.DATA].id, 'has id'); + t.equal(postResponses[0].json()[c.DATA].foo, 'bar1', 'has foo property'); - const getResponse = await client.send({ - [c.COMMAND]: c.GET, + const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests' }); - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); - const sortedDocuments = getResponse[c.DATA] + const sortedDocuments = getResponse.json()[c.DATA] .sort((a, b) => a.foo > b.foo ? 1 : -1); t.ok(sortedDocuments[0].id, 'has id property'); @@ -74,24 +70,21 @@ test('cluster - post - two goes down', async t => { await client.waitUntilConnected(); const postResponses = await Promise.all([ - client.send({ - [c.COMMAND]: c.POST, + client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar1' } }), - client.send({ - [c.COMMAND]: c.POST, + client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar2' } }), - client.send({ - [c.COMMAND]: c.POST, + client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar3' @@ -99,24 +92,23 @@ test('cluster - post - two goes down', async t => { }) ]); - t.equal(postResponses[0][c.STATUS], 201, 'has status'); - t.ok(postResponses[0][c.DATA].id, 'has id'); - t.equal(postResponses[0][c.DATA].foo, 'bar1', 'has foo property'); + t.equal(postResponses[0].command, c.STATUS_CREATED, 'has status'); + t.ok(postResponses[0].json()[c.DATA].id, 'has id'); + t.equal(postResponses[0].json()[c.DATA].foo, 'bar1', 'has foo property'); await Promise.all([ servers[1].close(), servers[2].close() ]); - const getResponse = await client.send({ - [c.COMMAND]: c.GET, + const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests' }); - t.equal(getResponse[c.STATUS], 200, 'has status'); - t.equal(getResponse[c.DATA].length, 3, 'returned 1 document'); + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); - const sortedDocuments = getResponse[c.DATA] + const sortedDocuments = getResponse.json()[c.DATA] .sort((a, b) => a.foo > b.foo ? 1 : -1); t.ok(sortedDocuments[0].id, 'has id property'); diff --git a/test/lib/driver/index.js b/test/lib/driver/index.js index e48a1bb..4ab3693 100644 --- a/test/lib/driver/index.js +++ b/test/lib/driver/index.js @@ -6,11 +6,11 @@ import createDriver from '../../../lib/driver/index.js'; test('count: no records', async t => { t.plan(1); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -24,11 +24,11 @@ test('count: no records', async t => { test('get: no records', async t => { t.plan(1); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -42,11 +42,11 @@ test('get: no records', async t => { test('post: records', async t => { t.plan(2); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -62,11 +62,11 @@ test('post: records', async t => { test('get: records - with projection', async t => { t.plan(1); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -91,11 +91,11 @@ test('get: records - with projection', async t => { test('put: record', async t => { t.plan(2); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -123,11 +123,11 @@ test('put: record', async t => { test('patch: record', async t => { t.plan(2); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -155,11 +155,11 @@ test('patch: record', async t => { test('del: record', async t => { t.plan(2); - await fs.promises.rmdir('./_tmpTestData', { recursive: true }).catch(_ => {}); + await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { - dataDirectory: './_tmpTestData' + dataDirectory: './canhazdata/tmptest' } }); @@ -181,4 +181,4 @@ test('del: record', async t => { { a: 1, b: 'yes' }, { a: 3, b: 'yes' } ]); -}); \ No newline at end of file +}); From 4600012eb6b6a60c224ab2a64755b885aff1b403 Mon Sep 17 00:00:00 2001 From: Mark Date: Wed, 16 Jun 2021 23:33:05 +1000 Subject: [PATCH 15/73] Fix bugs with binary comms logic --- lib/controllers/index.js | 30 ++- lib/createHandler.js | 4 +- package-lock.json | 215 +----------------- package.json | 6 +- stress/index.js | 86 +++++++ stress/server.js | 8 + test/features/basic.js | 14 +- test/features/cluster.js | 8 +- ...eateTestServer.js => createTestServers.js} | 0 9 files changed, 132 insertions(+), 239 deletions(-) create mode 100644 stress/index.js create mode 100644 stress/server.js rename test/helpers/{createTestServer.js => createTestServers.js} (100%) diff --git a/lib/controllers/index.js b/lib/controllers/index.js index c563b18..4ed0c86 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -1,26 +1,22 @@ import c from '../constants.js'; +import internalInfo from './internal/info.js'; +import internalPost from './internal/post.js'; +import internalGet from './internal/get.js'; +import externalInfo from './external/info.js'; +import externalPost from './external/post.js'; +import externalGet from './external/get.js'; const controllers = { internal: { - [c.INFO]: './internal/info.js', - [c.POST]: './internal/post.js', - [c.GET]: './internal/get.js' + [c.INFO]: internalInfo, + [c.POST]: internalPost, + [c.GET]: internalGet }, external: { - [c.INFO]: './external/info.js', - [c.POST]: './external/post.js', - [c.GET]: './external/get.js' + [c.INFO]: externalInfo, + [c.POST]: externalPost, + [c.GET]: externalGet } }; -async function getController (origin, command) { - const controllerFile = controllers[origin][command]; - if (!controllerFile) { - return; - } - - const controllerModule = await import(controllerFile); - return controllerModule.default; -} - -export default getController; +export default controllers; diff --git a/lib/createHandler.js b/lib/createHandler.js index 01ba390..8f45175 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -1,7 +1,7 @@ import logslot from 'logslot'; import tcpocket from 'tcpocket'; -import getController from './controllers/index.js'; +import controllers from './controllers/index.js'; import c from './constants.js'; const log = logslot('canhazdb.createHandler'); @@ -23,7 +23,7 @@ function createHandler (context) { const requestData = request.data ? request.json() : {}; const origin = requestData[c.INTERNAL] ? 'internal' : 'external'; - const controller = await getController(origin, request.command); + const controller = await controllers[origin][request.command]; if (!controller) { response.reply(c.STATUS_NOT_FOUND); diff --git a/package-lock.json b/package-lock.json index 15092f6..da763e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,9 +17,7 @@ "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "split2": "^3.2.2", - "tcpocket": "^7.2.0", - "wtfnode": "^0.8.4" + "tcpocket": "^7.3.0" }, "devDependencies": { "c8": "^7.7.3", @@ -311,13 +309,6 @@ "righto": "^6.1.3" } }, - "node_modules/binary-split": { - "version": "1.0.5", - "license": "BSD-2-Clause", - "dependencies": { - "through2": "^2.0.3" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -436,10 +427,6 @@ "dev": true, "license": "MIT" }, - "node_modules/core-util-is": { - "version": "1.0.2", - "license": "MIT" - }, "node_modules/cross-spawn": { "version": "7.0.3", "dev": true, @@ -1329,6 +1316,7 @@ }, "node_modules/inherits": { "version": "2.0.4", + "dev": true, "license": "ISC" }, "node_modules/internal-slot": { @@ -1493,10 +1481,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/isarray": { - "version": "1.0.0", - "license": "MIT" - }, "node_modules/isexe": { "version": "2.0.0", "dev": true, @@ -1731,13 +1715,6 @@ "dev": true, "license": "MIT" }, - "node_modules/ndjson-fe": { - "version": "1.2.10", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, "node_modules/node-ejdb-lite": { "version": "3.4.2", "cpu": [ @@ -2242,10 +2219,6 @@ "node": ">= 0.8.0" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "license": "MIT" - }, "node_modules/progress": { "version": "2.0.3", "dev": true, @@ -2355,18 +2328,6 @@ "node": ">=4" } }, - "node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/regexp.prototype.flags": { "version": "1.3.1", "dev": true, @@ -2451,24 +2412,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, "node_modules/semistandard": { "version": "16.0.1", "dev": true, @@ -2615,13 +2558,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/split2": { - "version": "3.2.2", - "license": "ISC", - "dependencies": { - "readable-stream": "^3.0.0" - } - }, "node_modules/sprintf-js": { "version": "1.0.3", "dev": true, @@ -2655,13 +2591,6 @@ "node": ">=8.10" } }, - "node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/string-width": { "version": "4.2.2", "dev": true, @@ -2794,12 +2723,9 @@ "license": "MIT" }, "node_modules/tcpocket": { - "version": "7.2.0", - "license": "MIT", - "dependencies": { - "binary-split": "^1.0.5", - "ndjson-fe": "^1.2.10" - } + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.0.tgz", + "integrity": "sha512-wJu79jE87QD2Mmh7T4zMPibvrMo4Rcm6PzYvDg+mvm3MUdJ8MXbDVUdggL+q+bN4MyN1c6S/R+MBb7U7Z1Cxzw==" }, "node_modules/test-exclude": { "version": "6.0.0", @@ -2819,38 +2745,6 @@ "dev": true, "license": "MIT" }, - "node_modules/through2": { - "version": "2.0.5", - "license": "MIT", - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/through2/node_modules/readable-stream": { - "version": "2.3.7", - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/through2/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT" - }, - "node_modules/through2/node_modules/string_decoder": { - "version": "1.1.1", - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/tsconfig-paths": { "version": "3.9.0", "dev": true, @@ -2906,10 +2800,6 @@ "punycode": "^2.1.0" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "license": "MIT" - }, "node_modules/uuid": { "version": "8.3.2", "license": "MIT", @@ -3017,13 +2907,6 @@ "node": ">=8" } }, - "node_modules/xtend": { - "version": "4.0.2", - "license": "MIT", - "engines": { - "node": ">=0.4" - } - }, "node_modules/y18n": { "version": "5.0.8", "dev": true, @@ -3258,12 +3141,6 @@ "righto": "^6.1.3" } }, - "binary-split": { - "version": "1.0.5", - "requires": { - "through2": "^2.0.3" - } - }, "brace-expansion": { "version": "1.1.11", "dev": true, @@ -3350,9 +3227,6 @@ } } }, - "core-util-is": { - "version": "1.0.2" - }, "cross-spawn": { "version": "7.0.3", "dev": true, @@ -3912,7 +3786,8 @@ } }, "inherits": { - "version": "2.0.4" + "version": "2.0.4", + "dev": true }, "internal-slot": { "version": "1.0.3", @@ -3995,9 +3870,6 @@ "has-symbols": "^1.0.2" } }, - "isarray": { - "version": "1.0.0" - }, "isexe": { "version": "2.0.0", "dev": true @@ -4158,9 +4030,6 @@ "version": "1.4.0", "dev": true }, - "ndjson-fe": { - "version": "1.2.10" - }, "node-ejdb-lite": { "version": "3.4.2", "requires": { @@ -4466,9 +4335,6 @@ "version": "1.2.1", "dev": true }, - "process-nextick-args": { - "version": "2.0.1" - }, "progress": { "version": "2.0.3", "dev": true @@ -4542,14 +4408,6 @@ } } }, - "readable-stream": { - "version": "3.6.0", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "regexp.prototype.flags": { "version": "1.3.1", "dev": true, @@ -4596,9 +4454,6 @@ "glob": "^7.1.3" } }, - "safe-buffer": { - "version": "5.2.1" - }, "semistandard": { "version": "16.0.1", "dev": true, @@ -4687,12 +4542,6 @@ "version": "3.0.9", "dev": true }, - "split2": { - "version": "3.2.2", - "requires": { - "readable-stream": "^3.0.0" - } - }, "sprintf-js": { "version": "1.0.3", "dev": true @@ -4707,12 +4556,6 @@ "xdg-basedir": "^4.0.0" } }, - "string_decoder": { - "version": "1.3.0", - "requires": { - "safe-buffer": "~5.2.0" - } - }, "string-width": { "version": "4.2.2", "dev": true, @@ -4802,11 +4645,9 @@ } }, "tcpocket": { - "version": "7.2.0", - "requires": { - "binary-split": "^1.0.5", - "ndjson-fe": "^1.2.10" - } + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.0.tgz", + "integrity": "sha512-wJu79jE87QD2Mmh7T4zMPibvrMo4Rcm6PzYvDg+mvm3MUdJ8MXbDVUdggL+q+bN4MyN1c6S/R+MBb7U7Z1Cxzw==" }, "test-exclude": { "version": "6.0.0", @@ -4821,36 +4662,6 @@ "version": "0.2.0", "dev": true }, - "through2": { - "version": "2.0.5", - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2" - }, - "string_decoder": { - "version": "1.1.1", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "tsconfig-paths": { "version": "3.9.0", "dev": true, @@ -4889,9 +4700,6 @@ "punycode": "^2.1.0" } }, - "util-deprecate": { - "version": "1.0.2" - }, "uuid": { "version": "8.3.2" }, @@ -4958,9 +4766,6 @@ "version": "4.0.0", "dev": true }, - "xtend": { - "version": "4.0.2" - }, "y18n": { "version": "5.0.8", "dev": true diff --git a/package.json b/package.json index 6266c46..220b449 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "index.js", "scripts": { - "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 97 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 94 node test" }, "keywords": [], "author": "", @@ -19,9 +19,7 @@ "mql-to-jql": "^1.1.9", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", - "split2": "^3.2.2", - "tcpocket": "^7.2.0", - "wtfnode": "^0.8.4" + "tcpocket": "^7.3.0" }, "devDependencies": { "c8": "^7.7.3", diff --git a/stress/index.js b/stress/index.js new file mode 100644 index 0000000..3f7a960 --- /dev/null +++ b/stress/index.js @@ -0,0 +1,86 @@ +import tcpocket from 'tcpocket'; +import fs from 'fs'; +import c from '../lib/constants.js'; + +const tls = { + key: fs.readFileSync('./certs/localhost.privkey.pem'), + cert: fs.readFileSync('./certs/localhost.cert.pem'), + ca: [fs.readFileSync('./certs/ca.cert.pem')], + requestCert: true +}; + +const metrics = {}; +setInterval(() => { + console.log(metrics); +}, 500); + +async function main () { + let count = 0; + const client = tcpocket.createClient({ + host: 'localhost', + port: 11001, + ...tls + }); + await client.waitUntilConnected(); + + await Promise.all([ + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar1' + } + }), + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar2' + } + }), + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar3' + } + }) + ]); + + async function run () { + const promises = []; + for (let x = 0; x < 2000; x++) { + promises.push( + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + x + } + }).then((r) => { + count = count + 1; + const seconds = Math.floor(Date.now() / 1000); + metrics[seconds] = metrics[seconds] || 0; + metrics[seconds] = metrics[seconds] + 1; + }) + + // client.send(c.GET, { + // [c.COLLECTION_ID]: 'tests' + // }).then((r) => { + // count = count + 1; + // const seconds = Math.floor(Date.now() / 1000); + // metrics[seconds] = metrics[seconds] || 0; + // metrics[seconds] = metrics[seconds] + 1; + // }) + ); + } + + await Promise.all(promises); + + setTimeout(run); + } + run(); + // client.close(); + + // setTimeout(function () { + // log() // logs out active handles that are keeping node running + // }, 100) +} + +main(); diff --git a/stress/server.js b/stress/server.js new file mode 100644 index 0000000..32763c1 --- /dev/null +++ b/stress/server.js @@ -0,0 +1,8 @@ +import createTestServers from '../test/helpers/createTestServers.js'; + +async function main () { + const servers = await createTestServers(1); + console.log('server started', servers[0].clientConfig); +} + +main(); diff --git a/test/features/basic.js b/test/features/basic.js index a4f31e5..effca87 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -1,5 +1,5 @@ import test from 'basictap'; -import createTestServer from '../helpers/createTestServer.js'; +import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; @@ -22,7 +22,7 @@ function createExampleDocuments (client, count) { test('invalid command', async t => { t.plan(1); - const servers = await createTestServer(1); + const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -39,7 +39,7 @@ test('invalid command', async t => { test('info', async t => { t.plan(5); - const servers = await createTestServer(1); + const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -62,7 +62,7 @@ test('info', async t => { test('post', async t => { t.plan(11); - const servers = await createTestServer(1); + const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -96,7 +96,7 @@ test('post', async t => { test('get - with order (ascending)', async t => { t.plan(5); - const servers = await createTestServer(1); + const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -121,7 +121,7 @@ test('get - with order (ascending)', async t => { test('get - with order (descending)', async t => { t.plan(5); - const servers = await createTestServer(1); + const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -146,7 +146,7 @@ test('get - with order (descending)', async t => { test('get - with limit', async t => { t.plan(2); - const servers = await createTestServer(1); + const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); diff --git a/test/features/cluster.js b/test/features/cluster.js index be5d1b1..163aaeb 100644 --- a/test/features/cluster.js +++ b/test/features/cluster.js @@ -1,5 +1,5 @@ import test from 'basictap'; -import createTestServer from '../helpers/createTestServer.js'; +import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; @@ -9,7 +9,7 @@ const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); test('cluster - post', async t => { t.plan(11); - const servers = await createTestServer(5); + const servers = await createTestServers(5); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -65,7 +65,7 @@ test('cluster - post', async t => { test('cluster - post - two goes down', async t => { t.plan(11); - const servers = await createTestServer(3); + const servers = await createTestServers(3); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -125,7 +125,7 @@ test('cluster - post - two goes down', async t => { test('cluster - syncing - node goes down', async t => { t.plan(1); - const servers = await createTestServer(2); + const servers = await createTestServers(2); await sleep(50); await Promise.all([ diff --git a/test/helpers/createTestServer.js b/test/helpers/createTestServers.js similarity index 100% rename from test/helpers/createTestServer.js rename to test/helpers/createTestServers.js From def81c8d6fd9e4f3976d818f9b4d4958af559bf9 Mon Sep 17 00:00:00 2001 From: Mark Date: Mon, 28 Jun 2021 22:51:58 +1000 Subject: [PATCH 16/73] Update dependencies --- package-lock.json | 980 +++++++++++++++++++++++++++++----------------- package.json | 6 +- 2 files changed, 630 insertions(+), 356 deletions(-) diff --git a/package-lock.json b/package-lock.json index da763e9..7bc99f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,9 +9,9 @@ "version": "8.0.0", "license": "ISC", "dependencies": { - "basictap": "^1.1.13", + "basictap": "^1.3.1", "chalk": "^4.1.1", - "lockbase": "^1.0.9", + "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.1.9", @@ -21,31 +21,31 @@ }, "devDependencies": { "c8": "^7.7.3", - "eslint": "^7.28.0", + "eslint": "^7.29.0", "semistandard": "^16.0.1", "uuid": "^8.3.2" } }, "node_modules/@babel/code-frame": { "version": "7.12.11", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, - "license": "MIT", "dependencies": { "@babel/highlight": "^7.10.4" } }, "node_modules/@babel/helper-validator-identifier": { "version": "7.14.5", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true, - "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { "version": "7.14.5", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, - "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", @@ -57,8 +57,8 @@ }, "node_modules/@babel/highlight/node_modules/ansi-styles": { "version": "3.2.1", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, - "license": "MIT", "dependencies": { "color-convert": "^1.9.0" }, @@ -68,8 +68,8 @@ }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -81,37 +81,37 @@ }, "node_modules/@babel/highlight/node_modules/color-convert": { "version": "1.9.3", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, - "license": "MIT", "dependencies": { "color-name": "1.1.3" } }, "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", - "dev": true, - "license": "MIT" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true, - "license": "MIT", "engines": { "node": ">=0.8.0" } }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/@babel/highlight/node_modules/supports-color": { "version": "5.5.0", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, - "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -121,13 +121,13 @@ }, "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", - "dev": true, - "license": "MIT" + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true }, "node_modules/@eslint/eslintrc": { "version": "0.4.2", + "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, - "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -145,30 +145,30 @@ }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.3", - "dev": true, - "license": "MIT" + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "dev": true }, "node_modules/@types/json5": { "version": "0.0.29", - "dev": true, - "license": "MIT" + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true }, "node_modules/abbott": { "version": "1.1.3", - "license": "ISC" + "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" }, "node_modules/acorn": { "version": "7.4.1", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, - "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -178,16 +178,16 @@ }, "node_modules/acorn-jsx": { "version": "5.3.1", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, - "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/ajv": { "version": "6.12.6", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -201,23 +201,23 @@ }, "node_modules/ansi-colors": { "version": "4.1.1", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/ansi-regex": { "version": "5.0.0", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/ansi-styles": { "version": "4.3.0", - "license": "MIT", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { "color-convert": "^2.0.1" }, @@ -230,16 +230,16 @@ }, "node_modules/argparse": { "version": "1.0.10", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, "node_modules/array-includes": { "version": "3.1.3", + "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -256,8 +256,8 @@ }, "node_modules/array.prototype.flat": { "version": "1.2.4", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -272,8 +272,8 @@ }, "node_modules/array.prototype.flatmap": { "version": "1.2.4", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -289,20 +289,21 @@ }, "node_modules/astral-regex": { "version": "2.0.0", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/balanced-match": { "version": "1.0.2", - "dev": true, - "license": "MIT" + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, "node_modules/basictap": { - "version": "1.1.13", - "license": "ISC", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.3.1.tgz", + "integrity": "sha512-hw4OFQb/DWpWdM5hCfh2nQfOTFxpGgRZMTWclOAyIa1k2YhRSTb7RJ8FK5b2AjmvzJ3epIgG838/KoblbjS0Xw==", "dependencies": { "colorette": "^1.2.2", "concurrun": "^1.1.0", @@ -311,8 +312,8 @@ }, "node_modules/brace-expansion": { "version": "1.1.11", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -320,8 +321,8 @@ }, "node_modules/c8": { "version": "7.7.3", + "integrity": "sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==", "dev": true, - "license": "ISC", "dependencies": { "@bcoe/v8-coverage": "^0.2.3", "@istanbuljs/schema": "^0.1.2", @@ -345,8 +346,8 @@ }, "node_modules/call-bind": { "version": "1.0.2", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, - "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" @@ -357,15 +358,15 @@ }, "node_modules/callsites": { "version": "3.1.0", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/chalk": { "version": "4.1.1", - "license": "MIT", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -379,8 +380,8 @@ }, "node_modules/cliui": { "version": "7.0.4", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, - "license": "ISC", "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -389,7 +390,7 @@ }, "node_modules/color-convert": { "version": "2.0.1", - "license": "MIT", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { "color-name": "~1.1.4" }, @@ -399,38 +400,38 @@ }, "node_modules/color-name": { "version": "1.1.4", - "license": "MIT" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/colorette": { "version": "1.2.2", - "license": "MIT" + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" }, "node_modules/concat-map": { "version": "0.0.1", - "dev": true, - "license": "MIT" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true }, "node_modules/concurrun": { "version": "1.1.0", - "license": "ISC" + "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" }, "node_modules/convert-source-map": { "version": "1.7.0", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, - "license": "MIT", "dependencies": { "safe-buffer": "~5.1.1" } }, "node_modules/convert-source-map/node_modules/safe-buffer": { "version": "5.1.2", - "dev": true, - "license": "MIT" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "node_modules/cross-spawn": { "version": "7.0.3", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, - "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -442,8 +443,8 @@ }, "node_modules/debug": { "version": "4.3.1", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, - "license": "MIT", "dependencies": { "ms": "2.1.2" }, @@ -458,13 +459,13 @@ }, "node_modules/deep-is": { "version": "0.1.3", - "dev": true, - "license": "MIT" + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true }, "node_modules/define-properties": { "version": "1.1.3", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, - "license": "MIT", "dependencies": { "object-keys": "^1.0.12" }, @@ -474,8 +475,8 @@ }, "node_modules/doctrine": { "version": "3.0.0", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, - "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -485,13 +486,13 @@ }, "node_modules/emoji-regex": { "version": "8.0.0", - "dev": true, - "license": "MIT" + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "node_modules/enquirer": { "version": "2.3.6", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, - "license": "MIT", "dependencies": { "ansi-colors": "^4.1.1" }, @@ -501,16 +502,16 @@ }, "node_modules/error-ex": { "version": "1.3.2", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/es-abstract": { "version": "1.18.3", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", @@ -538,8 +539,8 @@ }, "node_modules/es-to-primitive": { "version": "1.2.1", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, - "license": "MIT", "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -554,16 +555,16 @@ }, "node_modules/escalade": { "version": "3.1.1", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { "version": "4.0.0", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, - "license": "MIT", "engines": { "node": ">=10" }, @@ -572,9 +573,10 @@ } }, "node_modules/eslint": { - "version": "7.28.0", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", "dev": true, - "license": "MIT", "dependencies": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.2", @@ -628,8 +630,8 @@ }, "node_modules/eslint-config-semistandard": { "version": "16.0.0", + "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", "dev": true, - "license": "ISC", "peerDependencies": { "eslint": ">=7.12.1", "eslint-config-standard": ">=16.0.3", @@ -640,6 +642,7 @@ }, "node_modules/eslint-config-standard": { "version": "16.0.3", + "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", "dev": true, "funding": [ { @@ -655,7 +658,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "peerDependencies": { "eslint": "^7.12.1", "eslint-plugin-import": "^2.22.1", @@ -665,6 +667,7 @@ }, "node_modules/eslint-config-standard-jsx": { "version": "10.0.0", + "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", "dev": true, "funding": [ { @@ -680,7 +683,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "peerDependencies": { "eslint": "^7.12.1", "eslint-plugin-react": "^7.21.5" @@ -688,8 +690,8 @@ }, "node_modules/eslint-import-resolver-node": { "version": "0.3.4", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, - "license": "MIT", "dependencies": { "debug": "^2.6.9", "resolve": "^1.13.1" @@ -697,21 +699,21 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "2.6.9", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-import-resolver-node/node_modules/ms": { "version": "2.0.0", - "dev": true, - "license": "MIT" + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true }, "node_modules/eslint-module-utils": { "version": "2.6.1", + "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, - "license": "MIT", "dependencies": { "debug": "^3.2.7", "pkg-dir": "^2.0.0" @@ -722,16 +724,16 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "3.2.7", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "license": "MIT", "dependencies": { "ms": "^2.1.1" } }, "node_modules/eslint-plugin-es": { "version": "3.0.1", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, - "license": "MIT", "dependencies": { "eslint-utils": "^2.0.0", "regexpp": "^3.0.0" @@ -748,8 +750,8 @@ }, "node_modules/eslint-plugin-import": { "version": "2.23.4", + "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", "dev": true, - "license": "MIT", "dependencies": { "array-includes": "^3.1.3", "array.prototype.flat": "^1.2.4", @@ -776,16 +778,16 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "2.6.9", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-plugin-import/node_modules/doctrine": { "version": "2.1.0", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, - "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -795,8 +797,8 @@ }, "node_modules/eslint-plugin-import/node_modules/find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, - "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -806,8 +808,8 @@ }, "node_modules/eslint-plugin-import/node_modules/locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, - "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -818,13 +820,13 @@ }, "node_modules/eslint-plugin-import/node_modules/ms": { "version": "2.0.0", - "dev": true, - "license": "MIT" + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true }, "node_modules/eslint-plugin-import/node_modules/p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -834,8 +836,8 @@ }, "node_modules/eslint-plugin-import/node_modules/p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, - "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -845,16 +847,16 @@ }, "node_modules/eslint-plugin-import/node_modules/path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/eslint-plugin-node": { "version": "11.1.0", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, - "license": "MIT", "dependencies": { "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", @@ -872,24 +874,24 @@ }, "node_modules/eslint-plugin-node/node_modules/ignore": { "version": "5.1.8", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/eslint-plugin-node/node_modules/semver": { "version": "6.3.0", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/eslint-plugin-promise": { "version": "5.1.0", + "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", "dev": true, - "license": "ISC", "engines": { "node": "^10.12.0 || >=12.0.0" }, @@ -899,8 +901,8 @@ }, "node_modules/eslint-plugin-react": { "version": "7.21.5", + "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, - "license": "MIT", "dependencies": { "array-includes": "^3.1.1", "array.prototype.flatmap": "^1.2.3", @@ -923,8 +925,8 @@ }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, - "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -934,8 +936,8 @@ }, "node_modules/eslint-scope": { "version": "5.1.1", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -946,8 +948,8 @@ }, "node_modules/eslint-utils": { "version": "2.1.0", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, - "license": "MIT", "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -960,24 +962,24 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, - "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/eslint-visitor-keys": { "version": "2.1.0", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, - "license": "Apache-2.0", "engines": { "node": ">=10" } }, "node_modules/espree": { "version": "7.3.1", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", @@ -989,16 +991,16 @@ }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "1.3.0", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, - "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/esprima": { "version": "4.0.1", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -1009,8 +1011,8 @@ }, "node_modules/esquery": { "version": "1.4.0", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -1020,16 +1022,16 @@ }, "node_modules/esquery/node_modules/estraverse": { "version": "5.2.0", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esrecurse": { "version": "4.3.0", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -1039,47 +1041,47 @@ }, "node_modules/esrecurse/node_modules/estraverse": { "version": "5.2.0", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/estraverse": { "version": "4.3.0", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esutils": { "version": "2.0.3", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, - "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/fast-deep-equal": { "version": "3.1.3", - "dev": true, - "license": "MIT" + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", - "dev": true, - "license": "MIT" + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true }, "node_modules/fast-levenshtein": { "version": "2.0.6", - "dev": true, - "license": "MIT" + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true }, "node_modules/file-entry-cache": { "version": "6.0.1", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, - "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" }, @@ -1089,8 +1091,8 @@ }, "node_modules/find-up": { "version": "5.0.0", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, - "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -1104,8 +1106,8 @@ }, "node_modules/flat-cache": { "version": "3.0.4", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, - "license": "MIT", "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -1116,13 +1118,13 @@ }, "node_modules/flatted": { "version": "3.1.1", - "dev": true, - "license": "ISC" + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "dev": true }, "node_modules/foreground-child": { "version": "2.0.0", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, - "license": "ISC", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^3.0.2" @@ -1133,31 +1135,31 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", - "dev": true, - "license": "ISC" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true }, "node_modules/function-bind": { "version": "1.1.1", - "dev": true, - "license": "MIT" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "node_modules/functional-red-black-tree": { "version": "1.0.1", - "dev": true, - "license": "MIT" + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true }, "node_modules/get-caller-file": { "version": "2.0.5", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, - "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } }, "node_modules/get-intrinsic": { "version": "1.1.1", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, - "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -1169,8 +1171,8 @@ }, "node_modules/get-stdin": { "version": "8.0.0", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true, - "license": "MIT", "engines": { "node": ">=10" }, @@ -1180,8 +1182,8 @@ }, "node_modules/glob": { "version": "7.1.7", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, - "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -1199,8 +1201,8 @@ }, "node_modules/glob-parent": { "version": "5.1.2", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, - "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -1210,8 +1212,8 @@ }, "node_modules/globals": { "version": "13.9.0", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, - "license": "MIT", "dependencies": { "type-fest": "^0.20.2" }, @@ -1224,13 +1226,13 @@ }, "node_modules/graceful-fs": { "version": "4.2.6", - "dev": true, - "license": "ISC" + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true }, "node_modules/has": { "version": "1.0.3", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, - "license": "MIT", "dependencies": { "function-bind": "^1.1.1" }, @@ -1240,23 +1242,23 @@ }, "node_modules/has-bigints": { "version": "1.0.1", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { "version": "4.0.0", - "license": "MIT", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { "node": ">=8" } }, "node_modules/has-symbols": { "version": "1.0.2", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1266,26 +1268,26 @@ }, "node_modules/hosted-git-info": { "version": "2.8.9", - "dev": true, - "license": "ISC" + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true }, "node_modules/html-escaper": { "version": "2.0.2", - "dev": true, - "license": "MIT" + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true }, "node_modules/ignore": { "version": "4.0.6", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/import-fresh": { "version": "3.3.0", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, - "license": "MIT", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -1299,16 +1301,16 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true, - "license": "MIT", "engines": { "node": ">=0.8.19" } }, "node_modules/inflight": { "version": "1.0.6", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, - "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -1316,13 +1318,13 @@ }, "node_modules/inherits": { "version": "2.0.4", - "dev": true, - "license": "ISC" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "node_modules/internal-slot": { "version": "1.0.3", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, - "license": "MIT", "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", @@ -1334,21 +1336,21 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", - "dev": true, - "license": "MIT" + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true }, "node_modules/is-bigint": { "version": "1.0.2", + "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-boolean-object": { "version": "1.1.1", + "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2" }, @@ -1361,8 +1363,8 @@ }, "node_modules/is-callable": { "version": "1.2.3", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1372,8 +1374,8 @@ }, "node_modules/is-core-module": { "version": "2.4.0", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, - "license": "MIT", "dependencies": { "has": "^1.0.3" }, @@ -1383,8 +1385,8 @@ }, "node_modules/is-date-object": { "version": "1.0.4", + "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1394,24 +1396,24 @@ }, "node_modules/is-extglob": { "version": "2.1.1", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/is-glob": { "version": "4.0.1", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, - "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -1421,8 +1423,8 @@ }, "node_modules/is-negative-zero": { "version": "2.0.1", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1432,8 +1434,8 @@ }, "node_modules/is-number-object": { "version": "1.0.5", + "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1443,8 +1445,8 @@ }, "node_modules/is-regex": { "version": "1.1.3", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-symbols": "^1.0.2" @@ -1458,8 +1460,8 @@ }, "node_modules/is-string": { "version": "1.0.6", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1469,8 +1471,8 @@ }, "node_modules/is-symbol": { "version": "1.0.4", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, - "license": "MIT", "dependencies": { "has-symbols": "^1.0.2" }, @@ -1483,21 +1485,21 @@ }, "node_modules/isexe": { "version": "2.0.0", - "dev": true, - "license": "ISC" + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true }, "node_modules/istanbul-lib-coverage": { "version": "3.0.0", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true, - "license": "BSD-3-Clause", "engines": { "node": ">=8" } }, "node_modules/istanbul-lib-report": { "version": "3.0.0", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^3.0.0", @@ -1509,8 +1511,8 @@ }, "node_modules/istanbul-reports": { "version": "3.0.2", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -1521,13 +1523,13 @@ }, "node_modules/js-tokens": { "version": "4.0.0", - "dev": true, - "license": "MIT" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true }, "node_modules/js-yaml": { "version": "3.14.1", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, - "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -1538,23 +1540,23 @@ }, "node_modules/json-parse-better-errors": { "version": "1.0.2", - "dev": true, - "license": "MIT" + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", - "dev": true, - "license": "MIT" + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "dev": true, - "license": "MIT" + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true }, "node_modules/json5": { "version": "1.0.1", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, - "license": "MIT", "dependencies": { "minimist": "^1.2.0" }, @@ -1564,8 +1566,8 @@ }, "node_modules/jsx-ast-utils": { "version": "3.2.0", + "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, - "license": "MIT", "dependencies": { "array-includes": "^3.1.2", "object.assign": "^4.1.2" @@ -1576,8 +1578,8 @@ }, "node_modules/levn": { "version": "0.4.1", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, - "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -1588,8 +1590,8 @@ }, "node_modules/load-json-file": { "version": "4.0.0", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, - "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", @@ -1602,8 +1604,8 @@ }, "node_modules/locate-path": { "version": "6.0.0", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, - "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -1615,38 +1617,39 @@ } }, "node_modules/lockbase": { - "version": "1.0.9", - "license": "AGPL-3.0", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.1.0.tgz", + "integrity": "sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw==", "dependencies": { - "uuid": "^8.3.1" + "uuid": "^8.3.2" } }, "node_modules/lodash.clonedeep": { "version": "4.5.0", - "dev": true, - "license": "MIT" + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true }, "node_modules/lodash.merge": { "version": "4.6.2", - "dev": true, - "license": "MIT" + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true }, "node_modules/lodash.truncate": { "version": "4.4.2", - "dev": true, - "license": "MIT" + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true }, "node_modules/logslot": { "version": "2.1.0", - "license": "MIT", + "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", "dependencies": { "chalk": "^4.1.1" } }, "node_modules/loose-envify": { "version": "1.4.0", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, - "license": "MIT", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -1656,7 +1659,7 @@ }, "node_modules/lru-cache": { "version": "6.0.0", - "license": "ISC", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dependencies": { "yallist": "^4.0.0" }, @@ -1666,8 +1669,8 @@ }, "node_modules/make-dir": { "version": "3.1.0", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, - "license": "MIT", "dependencies": { "semver": "^6.0.0" }, @@ -1680,16 +1683,16 @@ }, "node_modules/make-dir/node_modules/semver": { "version": "6.3.0", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/minimatch": { "version": "3.0.4", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, - "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -1699,24 +1702,25 @@ }, "node_modules/minimist": { "version": "1.2.5", - "license": "MIT" + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "node_modules/mql-to-jql": { "version": "1.1.9", - "license": "MIT" + "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" }, "node_modules/ms": { "version": "2.1.2", - "dev": true, - "license": "MIT" + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true }, "node_modules/natural-compare": { "version": "1.4.0", - "dev": true, - "license": "MIT" + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true }, "node_modules/node-ejdb-lite": { "version": "3.4.2", + "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", "cpu": [ "x64", "x32", @@ -1724,7 +1728,6 @@ "arm64" ], "hasInstallScript": true, - "license": "MIT", "os": [ "darwin", "linux", @@ -1741,8 +1744,8 @@ }, "node_modules/normalize-package-data": { "version": "2.5.0", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -1752,40 +1755,40 @@ }, "node_modules/normalize-package-data/node_modules/semver": { "version": "5.7.1", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver" } }, "node_modules/object-assign": { "version": "4.1.1", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { "version": "1.10.3", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { "version": "4.1.2", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -1801,8 +1804,8 @@ }, "node_modules/object.entries": { "version": "1.1.4", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -1814,8 +1817,8 @@ }, "node_modules/object.fromentries": { "version": "2.0.4", + "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -1831,8 +1834,8 @@ }, "node_modules/object.values": { "version": "1.1.4", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -1847,16 +1850,16 @@ }, "node_modules/once": { "version": "1.4.0", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, - "license": "ISC", "dependencies": { "wrappy": "1" } }, "node_modules/optionator": { "version": "0.9.1", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, - "license": "MIT", "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -1871,8 +1874,8 @@ }, "node_modules/p-limit": { "version": "3.1.0", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, - "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -1885,8 +1888,8 @@ }, "node_modules/p-locate": { "version": "5.0.0", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, - "license": "MIT", "dependencies": { "p-limit": "^3.0.2" }, @@ -1899,16 +1902,16 @@ }, "node_modules/p-try": { "version": "1.0.0", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/parent-module": { "version": "1.0.1", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, - "license": "MIT", "dependencies": { "callsites": "^3.0.0" }, @@ -1918,8 +1921,8 @@ }, "node_modules/parse-json": { "version": "4.0.0", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, - "license": "MIT", "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -1930,37 +1933,37 @@ }, "node_modules/path-exists": { "version": "4.0.0", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/path-is-absolute": { "version": "1.0.1", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/path-key": { "version": "3.1.1", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/path-parse": { "version": "1.0.7", - "dev": true, - "license": "MIT" + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "node_modules/path-type": { "version": "3.0.0", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, - "license": "MIT", "dependencies": { "pify": "^3.0.0" }, @@ -1970,16 +1973,16 @@ }, "node_modules/pify": { "version": "3.0.0", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/pkg-conf": { "version": "3.1.0", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, - "license": "MIT", "dependencies": { "find-up": "^3.0.0", "load-json-file": "^5.2.0" @@ -1990,8 +1993,8 @@ }, "node_modules/pkg-conf/node_modules/find-up": { "version": "3.0.0", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, - "license": "MIT", "dependencies": { "locate-path": "^3.0.0" }, @@ -2001,8 +2004,8 @@ }, "node_modules/pkg-conf/node_modules/load-json-file": { "version": "5.3.0", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, - "license": "MIT", "dependencies": { "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", @@ -2016,8 +2019,8 @@ }, "node_modules/pkg-conf/node_modules/locate-path": { "version": "3.0.0", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, - "license": "MIT", "dependencies": { "p-locate": "^3.0.0", "path-exists": "^3.0.0" @@ -2028,8 +2031,8 @@ }, "node_modules/pkg-conf/node_modules/p-limit": { "version": "2.3.0", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -2042,8 +2045,8 @@ }, "node_modules/pkg-conf/node_modules/p-locate": { "version": "3.0.0", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, - "license": "MIT", "dependencies": { "p-limit": "^2.0.0" }, @@ -2053,40 +2056,40 @@ }, "node_modules/pkg-conf/node_modules/p-try": { "version": "2.2.0", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/pkg-conf/node_modules/path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/pkg-conf/node_modules/pify": { "version": "4.0.1", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/pkg-conf/node_modules/type-fest": { "version": "0.3.1", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=6" } }, "node_modules/pkg-dir": { "version": "2.0.0", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, - "license": "MIT", "dependencies": { "find-up": "^2.1.0" }, @@ -2096,8 +2099,8 @@ }, "node_modules/pkg-dir/node_modules/find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, - "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -2107,8 +2110,8 @@ }, "node_modules/pkg-dir/node_modules/locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, - "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -2119,8 +2122,8 @@ }, "node_modules/pkg-dir/node_modules/p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -2130,8 +2133,8 @@ }, "node_modules/pkg-dir/node_modules/p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, - "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -2141,16 +2144,16 @@ }, "node_modules/pkg-dir/node_modules/path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/pkg-up": { "version": "2.0.0", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, - "license": "MIT", "dependencies": { "find-up": "^2.1.0" }, @@ -2160,8 +2163,8 @@ }, "node_modules/pkg-up/node_modules/find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, - "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -2171,8 +2174,8 @@ }, "node_modules/pkg-up/node_modules/locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, - "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -2183,8 +2186,8 @@ }, "node_modules/pkg-up/node_modules/p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -2194,8 +2197,8 @@ }, "node_modules/pkg-up/node_modules/p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, - "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -2205,32 +2208,32 @@ }, "node_modules/pkg-up/node_modules/path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/prelude-ls": { "version": "1.2.1", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8.0" } }, "node_modules/progress": { "version": "2.0.3", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.4.0" } }, "node_modules/prop-types": { "version": "15.7.2", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", "dev": true, - "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", @@ -2239,21 +2242,21 @@ }, "node_modules/punycode": { "version": "2.1.1", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true, - "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/react-is": { "version": "16.13.1", - "dev": true, - "license": "MIT" + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true }, "node_modules/read-pkg": { "version": "3.0.0", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, - "license": "MIT", "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", @@ -2265,8 +2268,8 @@ }, "node_modules/read-pkg-up": { "version": "3.0.0", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "dev": true, - "license": "MIT", "dependencies": { "find-up": "^2.0.0", "read-pkg": "^3.0.0" @@ -2277,8 +2280,8 @@ }, "node_modules/read-pkg-up/node_modules/find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, - "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -2288,8 +2291,8 @@ }, "node_modules/read-pkg-up/node_modules/locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, - "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -2300,8 +2303,8 @@ }, "node_modules/read-pkg-up/node_modules/p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -2311,8 +2314,8 @@ }, "node_modules/read-pkg-up/node_modules/p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, - "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -2322,16 +2325,16 @@ }, "node_modules/read-pkg-up/node_modules/path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/regexp.prototype.flags": { "version": "1.3.1", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -2345,8 +2348,8 @@ }, "node_modules/regexpp": { "version": "3.2.0", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" }, @@ -2356,24 +2359,24 @@ }, "node_modules/require-directory": { "version": "2.1.1", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/require-from-string": { "version": "2.0.2", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/resolve": { "version": "1.20.0", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, - "license": "MIT", "dependencies": { "is-core-module": "^2.2.0", "path-parse": "^1.0.6" @@ -2384,15 +2387,15 @@ }, "node_modules/resolve-from": { "version": "4.0.0", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/righto": { "version": "6.1.3", - "license": "ISC", + "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", "dependencies": { "abbott": "^1.1.3", "setimmediate": "^1.0.5" @@ -2400,8 +2403,8 @@ }, "node_modules/rimraf": { "version": "3.0.2", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, - "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -2414,6 +2417,7 @@ }, "node_modules/semistandard": { "version": "16.0.1", + "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", "dev": true, "funding": [ { @@ -2429,7 +2433,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "dependencies": { "eslint": "^7.27.0", "eslint-config-semistandard": "16.0.0", @@ -2450,7 +2453,7 @@ }, "node_modules/semver": { "version": "7.3.5", - "license": "ISC", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -2463,16 +2466,16 @@ }, "node_modules/server-destroy": { "version": "1.0.1", - "license": "ISC" + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" }, "node_modules/setimmediate": { "version": "1.0.5", - "license": "MIT" + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "node_modules/shebang-command": { "version": "2.0.0", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, - "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -2482,16 +2485,16 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/side-channel": { "version": "1.0.4", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", @@ -2503,13 +2506,13 @@ }, "node_modules/signal-exit": { "version": "3.0.3", - "dev": true, - "license": "ISC" + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true }, "node_modules/slice-ansi": { "version": "4.0.0", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -2524,16 +2527,16 @@ }, "node_modules/source-map": { "version": "0.7.3", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true, - "license": "BSD-3-Clause", "engines": { "node": ">= 8" } }, "node_modules/spdx-correct": { "version": "3.1.1", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, - "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -2541,13 +2544,13 @@ }, "node_modules/spdx-exceptions": { "version": "2.3.0", - "dev": true, - "license": "CC-BY-3.0" + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true }, "node_modules/spdx-expression-parse": { "version": "3.0.1", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -2555,16 +2558,17 @@ }, "node_modules/spdx-license-ids": { "version": "3.0.9", - "dev": true, - "license": "CC0-1.0" + "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", + "dev": true }, "node_modules/sprintf-js": { "version": "1.0.3", - "dev": true, - "license": "BSD-3-Clause" + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true }, "node_modules/standard-engine": { "version": "14.0.1", + "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "funding": [ { @@ -2580,7 +2584,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "dependencies": { "get-stdin": "^8.0.0", "minimist": "^1.2.5", @@ -2593,8 +2596,8 @@ }, "node_modules/string-width": { "version": "4.2.2", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, - "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -2606,8 +2609,8 @@ }, "node_modules/string.prototype.matchall": { "version": "4.0.5", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -2624,8 +2627,8 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.4", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -2636,8 +2639,8 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.4", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -2648,8 +2651,8 @@ }, "node_modules/strip-ansi": { "version": "6.0.0", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, - "license": "MIT", "dependencies": { "ansi-regex": "^5.0.0" }, @@ -2659,16 +2662,16 @@ }, "node_modules/strip-bom": { "version": "3.0.0", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/strip-json-comments": { "version": "3.1.1", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" }, @@ -2678,7 +2681,7 @@ }, "node_modules/supports-color": { "version": "7.2.0", - "license": "MIT", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { "has-flag": "^4.0.0" }, @@ -2688,8 +2691,8 @@ }, "node_modules/table": { "version": "6.7.1", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", @@ -2704,8 +2707,8 @@ }, "node_modules/table/node_modules/ajv": { "version": "8.6.0", + "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -2719,8 +2722,8 @@ }, "node_modules/table/node_modules/json-schema-traverse": { "version": "1.0.0", - "dev": true, - "license": "MIT" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true }, "node_modules/tcpocket": { "version": "7.3.0", @@ -2729,8 +2732,8 @@ }, "node_modules/test-exclude": { "version": "6.0.0", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "license": "ISC", "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -2742,13 +2745,13 @@ }, "node_modules/text-table": { "version": "0.2.0", - "dev": true, - "license": "MIT" + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true }, "node_modules/tsconfig-paths": { "version": "3.9.0", + "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, - "license": "MIT", "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.1", @@ -2758,8 +2761,8 @@ }, "node_modules/type-check": { "version": "0.4.0", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, - "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" }, @@ -2769,8 +2772,8 @@ }, "node_modules/type-fest": { "version": "0.20.2", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -2780,8 +2783,8 @@ }, "node_modules/unbox-primitive": { "version": "1.0.1", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", "dev": true, - "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has-bigints": "^1.0.1", @@ -2794,28 +2797,28 @@ }, "node_modules/uri-js": { "version": "4.4.1", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" } }, "node_modules/uuid": { "version": "8.3.2", - "license": "MIT", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "bin": { "uuid": "dist/bin/uuid" } }, "node_modules/v8-compile-cache": { "version": "2.3.0", - "dev": true, - "license": "MIT" + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true }, "node_modules/v8-to-istanbul": { "version": "8.0.0", + "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", "dev": true, - "license": "ISC", "dependencies": { "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0", @@ -2827,8 +2830,8 @@ }, "node_modules/validate-npm-package-license": { "version": "3.0.4", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -2836,8 +2839,8 @@ }, "node_modules/which": { "version": "2.0.2", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -2850,8 +2853,8 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "license": "MIT", "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -2865,16 +2868,16 @@ }, "node_modules/word-wrap": { "version": "1.2.3", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/wrap-ansi": { "version": "7.0.0", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -2889,40 +2892,33 @@ }, "node_modules/wrappy": { "version": "1.0.2", - "dev": true, - "license": "ISC" - }, - "node_modules/wtfnode": { - "version": "0.8.4", - "license": "ISC", - "bin": { - "wtfnode": "proxy.js" - } + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true }, "node_modules/xdg-basedir": { "version": "4.0.0", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/y18n": { "version": "5.0.8", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, - "license": "ISC", "engines": { "node": ">=10" } }, "node_modules/yallist": { "version": "4.0.0", - "license": "ISC" + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yargs": { "version": "16.2.0", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, - "license": "MIT", "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -2938,16 +2934,16 @@ }, "node_modules/yargs-parser": { "version": "20.2.7", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true, - "license": "ISC", "engines": { "node": ">=10" } }, "node_modules/yocto-queue": { "version": "0.1.0", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, - "license": "MIT", "engines": { "node": ">=10" }, @@ -2959,6 +2955,7 @@ "dependencies": { "@babel/code-frame": { "version": "7.12.11", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, "requires": { "@babel/highlight": "^7.10.4" @@ -2966,10 +2963,12 @@ }, "@babel/helper-validator-identifier": { "version": "7.14.5", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true }, "@babel/highlight": { "version": "7.14.5", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.5", @@ -2979,6 +2978,7 @@ "dependencies": { "ansi-styles": { "version": "3.2.1", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { "color-convert": "^1.9.0" @@ -2986,6 +2986,7 @@ }, "chalk": { "version": "2.4.2", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -2995,6 +2996,7 @@ }, "color-convert": { "version": "1.9.3", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { "color-name": "1.1.3" @@ -3002,18 +3004,22 @@ }, "color-name": { "version": "1.1.3", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "escape-string-regexp": { "version": "1.0.5", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "has-flag": { "version": "3.0.0", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "supports-color": { "version": "5.5.0", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -3023,10 +3029,12 @@ }, "@bcoe/v8-coverage": { "version": "0.2.3", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, "@eslint/eslintrc": { "version": "0.4.2", + "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -3042,30 +3050,37 @@ }, "@istanbuljs/schema": { "version": "0.1.3", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, "@types/istanbul-lib-coverage": { "version": "2.0.3", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, "@types/json5": { "version": "0.0.29", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, "abbott": { - "version": "1.1.3" + "version": "1.1.3", + "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" }, "acorn": { "version": "7.4.1", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, "acorn-jsx": { "version": "5.3.1", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, "requires": {} }, "ajv": { "version": "6.12.6", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -3076,20 +3091,24 @@ }, "ansi-colors": { "version": "4.1.1", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true }, "ansi-regex": { "version": "5.0.0", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "ansi-styles": { "version": "4.3.0", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { "color-convert": "^2.0.1" } }, "argparse": { "version": "1.0.10", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { "sprintf-js": "~1.0.2" @@ -3097,6 +3116,7 @@ }, "array-includes": { "version": "3.1.3", + "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3108,6 +3128,7 @@ }, "array.prototype.flat": { "version": "1.2.4", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -3117,6 +3138,7 @@ }, "array.prototype.flatmap": { "version": "1.2.4", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -3127,14 +3149,18 @@ }, "astral-regex": { "version": "2.0.0", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, "balanced-match": { "version": "1.0.2", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, "basictap": { - "version": "1.1.13", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.3.1.tgz", + "integrity": "sha512-hw4OFQb/DWpWdM5hCfh2nQfOTFxpGgRZMTWclOAyIa1k2YhRSTb7RJ8FK5b2AjmvzJ3epIgG838/KoblbjS0Xw==", "requires": { "colorette": "^1.2.2", "concurrun": "^1.1.0", @@ -3143,6 +3169,7 @@ }, "brace-expansion": { "version": "1.1.11", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { "balanced-match": "^1.0.0", @@ -3151,6 +3178,7 @@ }, "c8": { "version": "7.7.3", + "integrity": "sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", @@ -3169,6 +3197,7 @@ }, "call-bind": { "version": "1.0.2", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -3177,10 +3206,12 @@ }, "callsites": { "version": "3.1.0", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, "chalk": { "version": "4.1.1", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3188,6 +3219,7 @@ }, "cliui": { "version": "7.0.4", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "requires": { "string-width": "^4.2.0", @@ -3197,25 +3229,31 @@ }, "color-convert": { "version": "2.0.1", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { "color-name": "~1.1.4" } }, "color-name": { - "version": "1.1.4" + "version": "1.1.4", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { - "version": "1.2.2" + "version": "1.2.2", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" }, "concat-map": { "version": "0.0.1", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "concurrun": { - "version": "1.1.0" + "version": "1.1.0", + "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" }, "convert-source-map": { "version": "1.7.0", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, "requires": { "safe-buffer": "~5.1.1" @@ -3223,12 +3261,14 @@ "dependencies": { "safe-buffer": { "version": "5.1.2", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true } } }, "cross-spawn": { "version": "7.0.3", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -3238,6 +3278,7 @@ }, "debug": { "version": "4.3.1", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -3245,10 +3286,12 @@ }, "deep-is": { "version": "0.1.3", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, "define-properties": { "version": "1.1.3", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "requires": { "object-keys": "^1.0.12" @@ -3256,6 +3299,7 @@ }, "doctrine": { "version": "3.0.0", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -3263,10 +3307,12 @@ }, "emoji-regex": { "version": "8.0.0", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "enquirer": { "version": "2.3.6", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "requires": { "ansi-colors": "^4.1.1" @@ -3274,6 +3320,7 @@ }, "error-ex": { "version": "1.3.2", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { "is-arrayish": "^0.2.1" @@ -3281,6 +3328,7 @@ }, "es-abstract": { "version": "1.18.3", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3303,6 +3351,7 @@ }, "es-to-primitive": { "version": "1.2.1", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -3312,14 +3361,18 @@ }, "escalade": { "version": "3.1.1", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, "escape-string-regexp": { "version": "4.0.0", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, "eslint": { - "version": "7.28.0", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -3365,21 +3418,25 @@ }, "eslint-config-semistandard": { "version": "16.0.0", + "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", "dev": true, "requires": {} }, "eslint-config-standard": { "version": "16.0.3", + "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", "dev": true, "requires": {} }, "eslint-config-standard-jsx": { "version": "10.0.0", + "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", "dev": true, "requires": {} }, "eslint-import-resolver-node": { "version": "0.3.4", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, "requires": { "debug": "^2.6.9", @@ -3388,6 +3445,7 @@ "dependencies": { "debug": { "version": "2.6.9", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -3395,12 +3453,14 @@ }, "ms": { "version": "2.0.0", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, "eslint-module-utils": { "version": "2.6.1", + "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, "requires": { "debug": "^3.2.7", @@ -3409,6 +3469,7 @@ "dependencies": { "debug": { "version": "3.2.7", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" @@ -3418,6 +3479,7 @@ }, "eslint-plugin-es": { "version": "3.0.1", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, "requires": { "eslint-utils": "^2.0.0", @@ -3426,6 +3488,7 @@ }, "eslint-plugin-import": { "version": "2.23.4", + "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", "dev": true, "requires": { "array-includes": "^3.1.3", @@ -3447,6 +3510,7 @@ "dependencies": { "debug": { "version": "2.6.9", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -3454,6 +3518,7 @@ }, "doctrine": { "version": "2.1.0", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -3461,6 +3526,7 @@ }, "find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -3468,6 +3534,7 @@ }, "locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -3476,10 +3543,12 @@ }, "ms": { "version": "2.0.0", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, "p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -3487,6 +3556,7 @@ }, "p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -3494,12 +3564,14 @@ }, "path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } } }, "eslint-plugin-node": { "version": "11.1.0", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, "requires": { "eslint-plugin-es": "^3.0.0", @@ -3512,21 +3584,25 @@ "dependencies": { "ignore": { "version": "5.1.8", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, "semver": { "version": "6.3.0", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } }, "eslint-plugin-promise": { "version": "5.1.0", + "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", "dev": true, "requires": {} }, "eslint-plugin-react": { "version": "7.21.5", + "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, "requires": { "array-includes": "^3.1.1", @@ -3544,6 +3620,7 @@ "dependencies": { "doctrine": { "version": "2.1.0", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -3553,6 +3630,7 @@ }, "eslint-scope": { "version": "5.1.1", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -3561,6 +3639,7 @@ }, "eslint-utils": { "version": "2.1.0", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" @@ -3568,16 +3647,19 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "eslint-visitor-keys": { "version": "2.1.0", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true }, "espree": { "version": "7.3.1", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "requires": { "acorn": "^7.4.0", @@ -3587,16 +3669,19 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "esprima": { "version": "4.0.1", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, "esquery": { "version": "1.4.0", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -3604,12 +3689,14 @@ "dependencies": { "estraverse": { "version": "5.2.0", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } }, "esrecurse": { "version": "4.3.0", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { "estraverse": "^5.2.0" @@ -3617,32 +3704,39 @@ "dependencies": { "estraverse": { "version": "5.2.0", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } }, "estraverse": { "version": "4.3.0", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true }, "esutils": { "version": "2.0.3", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, "fast-deep-equal": { "version": "3.1.3", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, "fast-json-stable-stringify": { "version": "2.1.0", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { "version": "2.0.6", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, "file-entry-cache": { "version": "6.0.1", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "requires": { "flat-cache": "^3.0.4" @@ -3650,6 +3744,7 @@ }, "find-up": { "version": "5.0.0", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "requires": { "locate-path": "^6.0.0", @@ -3658,6 +3753,7 @@ }, "flat-cache": { "version": "3.0.4", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "requires": { "flatted": "^3.1.0", @@ -3666,10 +3762,12 @@ }, "flatted": { "version": "3.1.1", + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, "foreground-child": { "version": "2.0.0", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, "requires": { "cross-spawn": "^7.0.0", @@ -3678,22 +3776,27 @@ }, "fs.realpath": { "version": "1.0.0", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, "function-bind": { "version": "1.1.1", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, "functional-red-black-tree": { "version": "1.0.1", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, "get-caller-file": { "version": "2.0.5", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-intrinsic": { "version": "1.1.1", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -3703,10 +3806,12 @@ }, "get-stdin": { "version": "8.0.0", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true }, "glob": { "version": "7.1.7", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -3719,6 +3824,7 @@ }, "glob-parent": { "version": "5.1.2", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -3726,6 +3832,7 @@ }, "globals": { "version": "13.9.0", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -3733,10 +3840,12 @@ }, "graceful-fs": { "version": "4.2.6", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, "has": { "version": "1.0.3", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { "function-bind": "^1.1.1" @@ -3744,29 +3853,36 @@ }, "has-bigints": { "version": "1.0.1", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true }, "has-flag": { - "version": "4.0.0" + "version": "4.0.0", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "has-symbols": { "version": "1.0.2", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true }, "hosted-git-info": { "version": "2.8.9", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "html-escaper": { "version": "2.0.2", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "ignore": { "version": "4.0.6", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, "import-fresh": { "version": "3.3.0", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -3775,10 +3891,12 @@ }, "imurmurhash": { "version": "0.1.4", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, "inflight": { "version": "1.0.6", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { "once": "^1.3.0", @@ -3787,10 +3905,12 @@ }, "inherits": { "version": "2.0.4", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "internal-slot": { "version": "1.0.3", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "requires": { "get-intrinsic": "^1.1.0", @@ -3800,14 +3920,17 @@ }, "is-arrayish": { "version": "0.2.1", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-bigint": { "version": "1.0.2", + "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", "dev": true }, "is-boolean-object": { "version": "1.1.1", + "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, "requires": { "call-bind": "^1.0.2" @@ -3815,10 +3938,12 @@ }, "is-callable": { "version": "1.2.3", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true }, "is-core-module": { "version": "2.4.0", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, "requires": { "has": "^1.0.3" @@ -3826,18 +3951,22 @@ }, "is-date-object": { "version": "1.0.4", + "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", "dev": true }, "is-extglob": { "version": "2.1.1", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "is-glob": { "version": "4.0.1", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -3845,14 +3974,17 @@ }, "is-negative-zero": { "version": "2.0.1", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true }, "is-number-object": { "version": "1.0.5", + "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", "dev": true }, "is-regex": { "version": "1.1.3", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3861,10 +3993,12 @@ }, "is-string": { "version": "1.0.6", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", "dev": true }, "is-symbol": { "version": "1.0.4", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "requires": { "has-symbols": "^1.0.2" @@ -3872,14 +4006,17 @@ }, "isexe": { "version": "2.0.0", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, "istanbul-lib-coverage": { "version": "3.0.0", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true }, "istanbul-lib-report": { "version": "3.0.0", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, "requires": { "istanbul-lib-coverage": "^3.0.0", @@ -3889,6 +4026,7 @@ }, "istanbul-reports": { "version": "3.0.2", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -3897,10 +4035,12 @@ }, "js-tokens": { "version": "4.0.0", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { "version": "3.14.1", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -3909,18 +4049,22 @@ }, "json-parse-better-errors": { "version": "1.0.2", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "json-schema-traverse": { "version": "0.4.1", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, "json5": { "version": "1.0.1", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { "minimist": "^1.2.0" @@ -3928,6 +4072,7 @@ }, "jsx-ast-utils": { "version": "3.2.0", + "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, "requires": { "array-includes": "^3.1.2", @@ -3936,6 +4081,7 @@ }, "levn": { "version": "0.4.1", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "requires": { "prelude-ls": "^1.2.1", @@ -3944,6 +4090,7 @@ }, "load-json-file": { "version": "4.0.0", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -3954,37 +4101,45 @@ }, "locate-path": { "version": "6.0.0", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "requires": { "p-locate": "^5.0.0" } }, "lockbase": { - "version": "1.0.9", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.1.0.tgz", + "integrity": "sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw==", "requires": { - "uuid": "^8.3.1" + "uuid": "^8.3.2" } }, "lodash.clonedeep": { "version": "4.5.0", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, "lodash.merge": { "version": "4.6.2", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "lodash.truncate": { "version": "4.4.2", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", "dev": true }, "logslot": { "version": "2.1.0", + "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", "requires": { "chalk": "^4.1.1" } }, "loose-envify": { "version": "1.4.0", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" @@ -3992,12 +4147,14 @@ }, "lru-cache": { "version": "6.0.0", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "requires": { "yallist": "^4.0.0" } }, "make-dir": { "version": "3.1.0", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { "semver": "^6.0.0" @@ -4005,39 +4162,47 @@ "dependencies": { "semver": { "version": "6.3.0", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } }, "minimatch": { "version": "3.0.4", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "1.2.5" + "version": "1.2.5", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "mql-to-jql": { - "version": "1.1.9" + "version": "1.1.9", + "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" }, "ms": { "version": "2.1.2", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "natural-compare": { "version": "1.4.0", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, "node-ejdb-lite": { "version": "3.4.2", + "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", "requires": { "semver": "^7.3.5" } }, "normalize-package-data": { "version": "2.5.0", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { "hosted-git-info": "^2.1.4", @@ -4048,24 +4213,29 @@ "dependencies": { "semver": { "version": "5.7.1", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } }, "object-assign": { "version": "4.1.1", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true }, "object-inspect": { "version": "1.10.3", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object-keys": { "version": "1.1.1", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, "object.assign": { "version": "4.1.2", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -4076,6 +4246,7 @@ }, "object.entries": { "version": "1.1.4", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4085,6 +4256,7 @@ }, "object.fromentries": { "version": "2.0.4", + "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4095,6 +4267,7 @@ }, "object.values": { "version": "1.1.4", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4104,6 +4277,7 @@ }, "once": { "version": "1.4.0", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { "wrappy": "1" @@ -4111,6 +4285,7 @@ }, "optionator": { "version": "0.9.1", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "requires": { "deep-is": "^0.1.3", @@ -4123,6 +4298,7 @@ }, "p-limit": { "version": "3.1.0", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "requires": { "yocto-queue": "^0.1.0" @@ -4130,6 +4306,7 @@ }, "p-locate": { "version": "5.0.0", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "requires": { "p-limit": "^3.0.2" @@ -4137,10 +4314,12 @@ }, "p-try": { "version": "1.0.0", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, "parent-module": { "version": "1.0.1", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { "callsites": "^3.0.0" @@ -4148,6 +4327,7 @@ }, "parse-json": { "version": "4.0.0", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { "error-ex": "^1.3.1", @@ -4156,22 +4336,27 @@ }, "path-exists": { "version": "4.0.0", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "path-is-absolute": { "version": "1.0.1", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, "path-key": { "version": "3.1.1", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "path-parse": { "version": "1.0.7", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "path-type": { "version": "3.0.0", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "requires": { "pify": "^3.0.0" @@ -4179,10 +4364,12 @@ }, "pify": { "version": "3.0.0", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true }, "pkg-conf": { "version": "3.1.0", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { "find-up": "^3.0.0", @@ -4191,6 +4378,7 @@ "dependencies": { "find-up": { "version": "3.0.0", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" @@ -4198,6 +4386,7 @@ }, "load-json-file": { "version": "5.3.0", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { "graceful-fs": "^4.1.15", @@ -4209,6 +4398,7 @@ }, "locate-path": { "version": "3.0.0", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -4217,6 +4407,7 @@ }, "p-limit": { "version": "2.3.0", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -4224,6 +4415,7 @@ }, "p-locate": { "version": "3.0.0", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -4231,24 +4423,29 @@ }, "p-try": { "version": "2.2.0", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true }, "pify": { "version": "4.0.1", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "type-fest": { "version": "0.3.1", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true } } }, "pkg-dir": { "version": "2.0.0", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { "find-up": "^2.1.0" @@ -4256,6 +4453,7 @@ "dependencies": { "find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -4263,6 +4461,7 @@ }, "locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -4271,6 +4470,7 @@ }, "p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -4278,6 +4478,7 @@ }, "p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -4285,12 +4486,14 @@ }, "path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } } }, "pkg-up": { "version": "2.0.0", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, "requires": { "find-up": "^2.1.0" @@ -4298,6 +4501,7 @@ "dependencies": { "find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -4305,6 +4509,7 @@ }, "locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -4313,6 +4518,7 @@ }, "p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -4320,6 +4526,7 @@ }, "p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -4327,20 +4534,24 @@ }, "path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } } }, "prelude-ls": { "version": "1.2.1", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, "progress": { "version": "2.0.3", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "prop-types": { "version": "15.7.2", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", "dev": true, "requires": { "loose-envify": "^1.4.0", @@ -4350,14 +4561,17 @@ }, "punycode": { "version": "2.1.1", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "react-is": { "version": "16.13.1", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, "read-pkg": { "version": "3.0.0", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, "requires": { "load-json-file": "^4.0.0", @@ -4367,6 +4581,7 @@ }, "read-pkg-up": { "version": "3.0.0", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "dev": true, "requires": { "find-up": "^2.0.0", @@ -4375,6 +4590,7 @@ "dependencies": { "find-up": { "version": "2.1.0", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -4382,6 +4598,7 @@ }, "locate-path": { "version": "2.0.0", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -4390,6 +4607,7 @@ }, "p-limit": { "version": "1.3.0", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -4397,6 +4615,7 @@ }, "p-locate": { "version": "2.0.0", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -4404,12 +4623,14 @@ }, "path-exists": { "version": "3.0.0", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } } }, "regexp.prototype.flags": { "version": "1.3.1", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4418,18 +4639,22 @@ }, "regexpp": { "version": "3.2.0", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, "require-directory": { "version": "2.1.1", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, "require-from-string": { "version": "2.0.2", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "resolve": { "version": "1.20.0", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "requires": { "is-core-module": "^2.2.0", @@ -4438,10 +4663,12 @@ }, "resolve-from": { "version": "4.0.0", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, "righto": { "version": "6.1.3", + "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", "requires": { "abbott": "^1.1.3", "setimmediate": "^1.0.5" @@ -4449,6 +4676,7 @@ }, "rimraf": { "version": "3.0.2", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { "glob": "^7.1.3" @@ -4456,6 +4684,7 @@ }, "semistandard": { "version": "16.0.1", + "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", "dev": true, "requires": { "eslint": "^7.27.0", @@ -4471,18 +4700,22 @@ }, "semver": { "version": "7.3.5", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } }, "server-destroy": { - "version": "1.0.1" + "version": "1.0.1", + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" }, "setimmediate": { - "version": "1.0.5" + "version": "1.0.5", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "shebang-command": { "version": "2.0.0", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { "shebang-regex": "^3.0.0" @@ -4490,10 +4723,12 @@ }, "shebang-regex": { "version": "3.0.0", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, "side-channel": { "version": "1.0.4", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -4503,10 +4738,12 @@ }, "signal-exit": { "version": "3.0.3", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "slice-ansi": { "version": "4.0.0", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -4516,10 +4753,12 @@ }, "source-map": { "version": "0.7.3", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true }, "spdx-correct": { "version": "3.1.1", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -4528,10 +4767,12 @@ }, "spdx-exceptions": { "version": "2.3.0", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { "version": "3.0.1", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -4540,14 +4781,17 @@ }, "spdx-license-ids": { "version": "3.0.9", + "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", "dev": true }, "sprintf-js": { "version": "1.0.3", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "standard-engine": { "version": "14.0.1", + "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "requires": { "get-stdin": "^8.0.0", @@ -4558,6 +4802,7 @@ }, "string-width": { "version": "4.2.2", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -4567,6 +4812,7 @@ }, "string.prototype.matchall": { "version": "4.0.5", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4581,6 +4827,7 @@ }, "string.prototype.trimend": { "version": "1.0.4", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4589,6 +4836,7 @@ }, "string.prototype.trimstart": { "version": "1.0.4", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4597,6 +4845,7 @@ }, "strip-ansi": { "version": "6.0.0", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { "ansi-regex": "^5.0.0" @@ -4604,20 +4853,24 @@ }, "strip-bom": { "version": "3.0.0", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, "strip-json-comments": { "version": "3.1.1", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, "supports-color": { "version": "7.2.0", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "requires": { "has-flag": "^4.0.0" } }, "table": { "version": "6.7.1", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -4630,6 +4883,7 @@ "dependencies": { "ajv": { "version": "8.6.0", + "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -4640,6 +4894,7 @@ }, "json-schema-traverse": { "version": "1.0.0", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true } } @@ -4651,6 +4906,7 @@ }, "test-exclude": { "version": "6.0.0", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "requires": { "@istanbuljs/schema": "^0.1.2", @@ -4660,10 +4916,12 @@ }, "text-table": { "version": "0.2.0", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, "tsconfig-paths": { "version": "3.9.0", + "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, "requires": { "@types/json5": "^0.0.29", @@ -4674,6 +4932,7 @@ }, "type-check": { "version": "0.4.0", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { "prelude-ls": "^1.2.1" @@ -4681,10 +4940,12 @@ }, "type-fest": { "version": "0.20.2", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, "unbox-primitive": { "version": "1.0.1", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -4695,20 +4956,24 @@ }, "uri-js": { "version": "4.4.1", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" } }, "uuid": { - "version": "8.3.2" + "version": "8.3.2", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" }, "v8-compile-cache": { "version": "2.3.0", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "v8-to-istanbul": { "version": "8.0.0", + "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.1", @@ -4718,6 +4983,7 @@ }, "validate-npm-package-license": { "version": "3.0.4", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -4726,6 +4992,7 @@ }, "which": { "version": "2.0.2", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { "isexe": "^2.0.0" @@ -4733,6 +5000,7 @@ }, "which-boxed-primitive": { "version": "1.0.2", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "requires": { "is-bigint": "^1.0.1", @@ -4744,10 +5012,12 @@ }, "word-wrap": { "version": "1.2.3", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, "wrap-ansi": { "version": "7.0.0", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -4757,24 +5027,26 @@ }, "wrappy": { "version": "1.0.2", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, - "wtfnode": { - "version": "0.8.4" - }, "xdg-basedir": { "version": "4.0.0", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, "y18n": { "version": "5.0.8", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, "yallist": { - "version": "4.0.0" + "version": "4.0.0", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { "version": "16.2.0", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { "cliui": "^7.0.2", @@ -4788,10 +5060,12 @@ }, "yargs-parser": { "version": "20.2.7", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true }, "yocto-queue": { "version": "0.1.0", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true } } diff --git a/package.json b/package.json index 220b449..888d93b 100644 --- a/package.json +++ b/package.json @@ -11,9 +11,9 @@ "author": "", "license": "ISC", "dependencies": { - "basictap": "^1.1.13", + "basictap": "^1.3.1", "chalk": "^4.1.1", - "lockbase": "^1.0.9", + "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.1.9", @@ -23,7 +23,7 @@ }, "devDependencies": { "c8": "^7.7.3", - "eslint": "^7.28.0", + "eslint": "^7.29.0", "semistandard": "^16.0.1", "uuid": "^8.3.2" } From c06bcf94d37fbcc7b29c687cf1e5b056457e40ed Mon Sep 17 00:00:00 2001 From: Mark Date: Tue, 29 Jun 2021 22:38:00 +1000 Subject: [PATCH 17/73] Implement patch, put, delete methods; Being lock implementation; --- .eslintrc.cjs | 5 - .eslintrc.json | 5 + lib/constants.js | 3 + lib/controllers/external/count.js | 34 ++ lib/controllers/external/delete.js | 34 ++ lib/controllers/external/get.js | 21 +- lib/controllers/external/lock.js | 41 ++ lib/controllers/external/patch.js | 36 ++ lib/controllers/external/post.js | 2 +- lib/controllers/external/put.js | 34 ++ lib/controllers/index.js | 21 +- lib/controllers/internal/count.js | 40 ++ lib/controllers/internal/delete.js | 33 ++ lib/controllers/internal/get.js | 26 +- lib/controllers/internal/lock.js | 16 + lib/controllers/internal/patch.js | 35 ++ lib/controllers/internal/put.js | 35 ++ lib/driver/index.js | 3 +- lib/prepareOptions.js | 1 + package-lock.json | 602 +++++++++++++++++++++++++++-- package.json | 6 +- test/features/basic.js | 89 ++++- 22 files changed, 1071 insertions(+), 51 deletions(-) delete mode 100644 .eslintrc.cjs create mode 100644 .eslintrc.json create mode 100644 lib/controllers/external/count.js create mode 100644 lib/controllers/external/delete.js create mode 100644 lib/controllers/external/lock.js create mode 100644 lib/controllers/external/patch.js create mode 100644 lib/controllers/external/put.js create mode 100644 lib/controllers/internal/count.js create mode 100644 lib/controllers/internal/delete.js create mode 100644 lib/controllers/internal/lock.js create mode 100644 lib/controllers/internal/patch.js create mode 100644 lib/controllers/internal/put.js diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index 59f25f9..0000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - extends: [ - 'semistandard' - ] -}; diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..9905628 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "extends": [ + "semistandard" + ] +} diff --git a/lib/constants.js b/lib/constants.js index e063102..ca2ccad 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -31,9 +31,12 @@ const constants = { NOTIFY_ON: 18, NOTIFY_OFF: 19, + ERROR: 26, + LOCK: 20, UNLOCK: 21, LOCK_ID: 22, + LOCK_KEYS: 27, LOCK_STRATEGY: 23, LOCK_STRATEGY_FAIL: 24, LOCK_STRATEGY_WAIT: 25 diff --git a/lib/controllers/external/count.js b/lib/controllers/external/count.js new file mode 100644 index 0000000..ed3d803 --- /dev/null +++ b/lib/controllers/external/count.js @@ -0,0 +1,34 @@ +import logslot from 'logslot'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.controllers.external.count'); + +async function countController (context, socketState, request, response) { + const requestData = request.json(); + + const results = await Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(c.COUNT, { + [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.ORDER]: requestData[c.ORDER], + [c.LIMIT]: requestData[c.LIMIT], + [c.INTERNAL]: true + }, false) + .then(result => { + return result.json()[c.DATA]; + }) + .catch(error => { + log.warn('node send failed', error); + }); + }) + ); + + response.reply(c.STATUS_OK, { + [c.DATA]: results.reduce((a, b) => a + b) + }); +} + +export default countController; diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js new file mode 100644 index 0000000..dd271e8 --- /dev/null +++ b/lib/controllers/external/delete.js @@ -0,0 +1,34 @@ +import logslot from 'logslot'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.controllers.external.delete'); + +async function deleteController (context, socketState, request, response) { + const requestData = request.json(); + + const results = await Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(c.DELETE, { + [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.QUERY]: requestData[c.QUERY], + [c.DATA]: requestData[c.DATA], + [c.INTERNAL]: true + }, false) + .then(result => { + return result.json()[c.DATA]; + }) + .catch(error => { + log.warn('node send failed', error); + }); + }) + ); + + response.reply(c.STATUS_OK, { + [c.DATA]: results.reduce((a, b) => a + b) + }); +} + +export default deleteController; diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 7e8302c..3216935 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -14,18 +14,33 @@ async function getController (context, socketState, request, response) { .map(node => { return node.client.send(c.GET, { [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.QUERY]: requestData[c.QUERY], + [c.FIELDS]: requestData[c.FIELDS], [c.ORDER]: requestData[c.ORDER], [c.LIMIT]: requestData[c.LIMIT], [c.INTERNAL]: true - }, false).catch(error => { - log.warn('node send failed', error); + }).catch(error => { + log.warn(error); }); }) ); + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; + }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + let documents = results .flatMap(result => result && result.json()[c.DATA]) - .filter(item => !!item); + .filter(item => !!item) + .map(item => { + delete item._replicatedNodes; + return item; + }); const orders = requestData[c.ORDER] || []; orders.forEach(order => { diff --git a/lib/controllers/external/lock.js b/lib/controllers/external/lock.js new file mode 100644 index 0000000..91d5f85 --- /dev/null +++ b/lib/controllers/external/lock.js @@ -0,0 +1,41 @@ +import logslot from 'logslot'; +import { v4 as uuid } from 'uuid'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.controllers.external.lock'); + +async function lockController (context, socketState, request, response) { + const requestData = request.json(); + + const id = uuid(); + + const results = await Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(c.LOCK, { + [c.LOCK_ID]: id, + [c.LOCK_KEYS]: requestData[c.LOCK_KEYS] + }) + .catch(error => { + log.warn(error); + }); + }) + ); + + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; + }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: id + }); +} + +export default lockController; diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js new file mode 100644 index 0000000..88ee634 --- /dev/null +++ b/lib/controllers/external/patch.js @@ -0,0 +1,36 @@ +import logslot from 'logslot'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.controllers.external.patch'); + +async function patchController (context, socketState, request, response) { + const requestData = request.json(); + + const results = await Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(c.PATCH, { + [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.QUERY]: requestData[c.QUERY], + [c.DATA]: requestData[c.DATA], + [c.INTERNAL]: true + }, false) + .then(result => { + return result.json()[c.DATA]; + }) + .catch(error => { + log.warn('node send failed', error); + console.log('yeah, this really needs to be handled'); + process.exit(1); + }); + }) + ); + + response.reply(c.STATUS_OK, { + [c.DATA]: results.reduce((a, b) => a + b) + }); +} + +export default patchController; diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index e8cce26..7c7a8fd 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -15,7 +15,7 @@ async function postController (context, socketState, request, response) { id: uuid() }; - const results = await Promise.all( + await Promise.all( nodes.map(node => { return node.client.send(c.POST, { [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js new file mode 100644 index 0000000..bbdc275 --- /dev/null +++ b/lib/controllers/external/put.js @@ -0,0 +1,34 @@ +import logslot from 'logslot'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.controllers.external.put'); + +async function putController (context, socketState, request, response) { + const requestData = request.json(); + + const results = await Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(c.PUT, { + [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.QUERY]: requestData[c.QUERY], + [c.DATA]: requestData[c.DATA], + [c.INTERNAL]: true + }, false) + .then(result => { + return result.json()[c.DATA]; + }) + .catch(error => { + log.warn('node send failed', error); + }); + }) + ); + + response.reply(c.STATUS_OK, { + [c.DATA]: results.reduce((a, b) => a + b) + }); +} + +export default putController; diff --git a/lib/controllers/index.js b/lib/controllers/index.js index 4ed0c86..2de9d00 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -1,21 +1,38 @@ import c from '../constants.js'; import internalInfo from './internal/info.js'; import internalPost from './internal/post.js'; +import internalCount from './internal/count.js'; import internalGet from './internal/get.js'; +import internalPut from './internal/put.js'; +import internalPatch from './internal/patch.js'; +import internalDelete from './internal/delete.js'; + import externalInfo from './external/info.js'; import externalPost from './external/post.js'; +import externalCount from './external/count.js'; import externalGet from './external/get.js'; +import externalPut from './external/put.js'; +import externalPatch from './external/patch.js'; +import externalDelete from './external/delete.js'; const controllers = { internal: { [c.INFO]: internalInfo, [c.POST]: internalPost, - [c.GET]: internalGet + [c.COUNT]: internalCount, + [c.GET]: internalGet, + [c.PUT]: internalPut, + [c.PATCH]: internalPatch, + [c.DELETE]: internalDelete }, external: { [c.INFO]: externalInfo, [c.POST]: externalPost, - [c.GET]: externalGet + [c.COUNT]: externalCount, + [c.GET]: externalGet, + [c.PUT]: externalPut, + [c.PATCH]: externalPatch, + [c.DELETE]: externalDelete } }; diff --git a/lib/controllers/internal/count.js b/lib/controllers/internal/count.js new file mode 100644 index 0000000..a6dba1d --- /dev/null +++ b/lib/controllers/internal/count.js @@ -0,0 +1,40 @@ +import c from '../../constants.js'; + +// Logic: Only return the document if we are +// the first replica that's available +function isFirstConnectedReplica (connectedNodes, nodeName) { + return document => { + const availableReplicatedNodes = document._replicatedNodes.filter(nodeName => { + return !!connectedNodes.find(cnode => cnode.name === nodeName); + }); + + if (availableReplicatedNodes[0] === nodeName) { + return true; + } + + return false; + }; +} + +async function internalCountController (context, socketState, request, response) { + const requestData = request.json(); + + const collectionId = requestData[c.COLLECTION_ID]; + const query = requestData[c.QUERY]; + const order = requestData[c.ORDER]; + const limit = requestData[c.LIMIT]; + + const documents = await context.driver.get(collectionId, query, order, limit); + + const connectedNodes = context.nodes.filter(node => node.connected); + + const filteredDocuments = documents.filter( + isFirstConnectedReplica(connectedNodes, context.thisNode.name) + ); + + response.reply(c.STATUS_OK, { + [c.DATA]: filteredDocuments.length + }); +} + +export default internalCountController; diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js new file mode 100644 index 0000000..ee7799e --- /dev/null +++ b/lib/controllers/internal/delete.js @@ -0,0 +1,33 @@ +import c from '../../constants.js'; +import isLockedOrWait from '../../utils/isLockedOrWait.js'; + +async function deleteController (context, socketState, request, response) { + const requestData = request.json(); + + const query = requestData[c.QUERY]; + const collectionId = requestData[c.COLLECTION_ID]; + const lockId = requestData[c.LOCK_ID]; + const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; + + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } + + const count = await context.driver.count(collectionId, { + $and: [{ + '_replicatedNodes.0': context.thisNode.name + }, query] + }); + + await context.driver.del(collectionId, query); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply(c.STATUS_OK, { + [c.DATA]: count + }); +} + +export default deleteController; diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index edf4e1f..48b1ee8 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -25,17 +25,27 @@ async function internalGetController (context, socketState, request, response) { const order = requestData[c.ORDER]; const limit = requestData[c.LIMIT]; - const documents = await context.driver.get(collectionId, query, fields, order, limit); + if (fields) { + fields.push('_replicatedNodes'); + } - const connectedNodes = context.nodes.filter(node => node.connected); + try { + const documents = await context.driver.get(collectionId, query, fields, order, limit); - const filteredDocuments = documents.filter( - isFirstConnectedReplica(connectedNodes, context.thisNode.name) - ); + const connectedNodes = context.nodes.filter(node => node.connected); - response.reply(c.STATUS_OK, { - [c.DATA]: filteredDocuments - }); + const filteredDocuments = documents.filter( + isFirstConnectedReplica(connectedNodes, context.thisNode.name) + ); + + response.reply(c.STATUS_OK, { + [c.DATA]: filteredDocuments + }); + } catch (error) { + response.reply(c.STATUS_BAD_REQUEST, { + [c.ERROR]: error.message + }); + } } export default internalGetController; diff --git a/lib/controllers/internal/lock.js b/lib/controllers/internal/lock.js new file mode 100644 index 0000000..a82ef15 --- /dev/null +++ b/lib/controllers/internal/lock.js @@ -0,0 +1,16 @@ +import c from '../../constants.js'; + +async function lockController (context, socketState, request, response) { + const requestData = request.json(); + + const keys = requestData[c.LOCK_KEYS]; + const id = requestData[c.LOCK_ID]; + + await context.locks.add(keys, id); + + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: id + }); +} + +export default lockController; diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js new file mode 100644 index 0000000..8d2a2a5 --- /dev/null +++ b/lib/controllers/internal/patch.js @@ -0,0 +1,35 @@ +import c from '../../constants.js'; +import isLockedOrWait from '../../utils/isLockedOrWait.js'; + +async function patchController (context, socketState, request, response) { + const requestData = request.json(); + + const data = requestData[c.DATA]; + const query = requestData[c.QUERY]; + const collectionId = requestData[c.COLLECTION_ID]; + const lockId = requestData[c.LOCK_ID]; + const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; + + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } + + const [, count] = await Promise.all([ + context.driver.patch(collectionId, data, query), + context.driver.count(collectionId, { + $and: [{ + '_replicatedNodes.0': context.thisNode.name + }, query] + }) + ]); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply(c.STATUS_OK, { + [c.DATA]: count + }); +} + +export default patchController; diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js new file mode 100644 index 0000000..34a8f95 --- /dev/null +++ b/lib/controllers/internal/put.js @@ -0,0 +1,35 @@ +import c from '../../constants.js'; +import isLockedOrWait from '../../utils/isLockedOrWait.js'; + +async function putController (context, socketState, request, response) { + const requestData = request.json(); + + const data = requestData[c.DATA]; + const query = requestData[c.QUERY]; + const collectionId = requestData[c.COLLECTION_ID]; + const lockId = requestData[c.LOCK_ID]; + const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; + + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } + + const [, count] = await Promise.all([ + context.driver.put(collectionId, data, query), + context.driver.count(collectionId, { + $and: [{ + '_replicatedNodes.0': context.thisNode.name + }, query] + }) + ]); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply(c.STATUS_OK, { + [c.DATA]: count + }); +} + +export default putController; diff --git a/lib/driver/index.js b/lib/driver/index.js index 395cc0d..e0af922 100644 --- a/lib/driver/index.js +++ b/lib/driver/index.js @@ -81,7 +81,8 @@ async function createEjdbDriver (state) { const promises = records.map(async record => { const insertableRecord = { ...document, - id: record.json.id + id: record.json.id, + _replicatedNodes: record.json._replicatedNodes }; return db.put(collectionId, JSON.stringify(insertableRecord), record.id); diff --git a/lib/prepareOptions.js b/lib/prepareOptions.js index 91a4fe3..65b6707 100644 --- a/lib/prepareOptions.js +++ b/lib/prepareOptions.js @@ -9,6 +9,7 @@ const log = logslot('canhazdb.prepareOptions'); async function prepareOptions (rawOptions) { const options = { ...rawOptions, + port: rawOptions.port || 8060, join: rawOptions.join || [] }; diff --git a/package-lock.json b/package-lock.json index 7bc99f4..02a590b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "canhazdb", + "name": "canhazdb-server", "version": "8.0.0", "lockfileVersion": 2, "requires": true, "packages": { "": { - "name": "canhazdb", + "name": "canhazdb-server", "version": "8.0.0", "license": "ISC", "dependencies": { @@ -14,7 +14,7 @@ "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", - "mql-to-jql": "^1.1.9", + "mql-to-jql": "^1.3.0", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", "tcpocket": "^7.3.0" @@ -28,6 +28,7 @@ }, "node_modules/@babel/code-frame": { "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, "dependencies": { @@ -36,6 +37,7 @@ }, "node_modules/@babel/helper-validator-identifier": { "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true, "engines": { @@ -44,6 +46,7 @@ }, "node_modules/@babel/highlight": { "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "dependencies": { @@ -57,6 +60,7 @@ }, "node_modules/@babel/highlight/node_modules/ansi-styles": { "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { @@ -68,6 +72,7 @@ }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { @@ -81,6 +86,7 @@ }, "node_modules/@babel/highlight/node_modules/color-convert": { "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { @@ -89,11 +95,13 @@ }, "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true, "engines": { @@ -102,6 +110,7 @@ }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true, "engines": { @@ -110,6 +119,7 @@ }, "node_modules/@babel/highlight/node_modules/supports-color": { "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { @@ -121,11 +131,13 @@ }, "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, "node_modules/@eslint/eslintrc": { "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, "dependencies": { @@ -145,6 +157,7 @@ }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, "engines": { @@ -153,20 +166,24 @@ }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, "node_modules/@types/json5": { "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, "node_modules/abbott": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" }, "node_modules/acorn": { "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, "bin": { @@ -178,6 +195,7 @@ }, "node_modules/acorn-jsx": { "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, "peerDependencies": { @@ -186,6 +204,7 @@ }, "node_modules/ajv": { "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "dependencies": { @@ -201,6 +220,7 @@ }, "node_modules/ansi-colors": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true, "engines": { @@ -209,6 +229,7 @@ }, "node_modules/ansi-regex": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true, "engines": { @@ -217,6 +238,7 @@ }, "node_modules/ansi-styles": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { "color-convert": "^2.0.1" @@ -230,6 +252,7 @@ }, "node_modules/argparse": { "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { @@ -238,6 +261,7 @@ }, "node_modules/array-includes": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, "dependencies": { @@ -256,6 +280,7 @@ }, "node_modules/array.prototype.flat": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, "dependencies": { @@ -272,6 +297,7 @@ }, "node_modules/array.prototype.flatmap": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, "dependencies": { @@ -289,6 +315,7 @@ }, "node_modules/astral-regex": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, "engines": { @@ -297,6 +324,7 @@ }, "node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, @@ -312,6 +340,7 @@ }, "node_modules/brace-expansion": { "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "dependencies": { @@ -321,6 +350,7 @@ }, "node_modules/c8": { "version": "7.7.3", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.3.tgz", "integrity": "sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==", "dev": true, "dependencies": { @@ -346,6 +376,7 @@ }, "node_modules/call-bind": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, "dependencies": { @@ -358,6 +389,7 @@ }, "node_modules/callsites": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, "engines": { @@ -366,6 +398,7 @@ }, "node_modules/chalk": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dependencies": { "ansi-styles": "^4.1.0", @@ -380,6 +413,7 @@ }, "node_modules/cliui": { "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "dependencies": { @@ -390,6 +424,7 @@ }, "node_modules/color-convert": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { "color-name": "~1.1.4" @@ -400,36 +435,37 @@ }, "node_modules/color-name": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/colorette": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" }, "node_modules/concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "node_modules/concurrun": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" }, "node_modules/convert-source-map": { - "version": "1.7.0", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", "dev": true, "dependencies": { "safe-buffer": "~5.1.1" } }, - "node_modules/convert-source-map/node_modules/safe-buffer": { - "version": "5.1.2", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, "node_modules/cross-spawn": { "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "dependencies": { @@ -443,6 +479,7 @@ }, "node_modules/debug": { "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "dependencies": { @@ -459,11 +496,13 @@ }, "node_modules/deep-is": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, "node_modules/define-properties": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "dependencies": { @@ -475,6 +514,7 @@ }, "node_modules/doctrine": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { @@ -486,11 +526,13 @@ }, "node_modules/emoji-regex": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "node_modules/enquirer": { "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "dependencies": { @@ -502,6 +544,7 @@ }, "node_modules/error-ex": { "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "dependencies": { @@ -510,6 +553,7 @@ }, "node_modules/es-abstract": { "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "dependencies": { @@ -539,6 +583,7 @@ }, "node_modules/es-to-primitive": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "dependencies": { @@ -555,6 +600,7 @@ }, "node_modules/escalade": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, "engines": { @@ -563,6 +609,7 @@ }, "node_modules/escape-string-regexp": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, "engines": { @@ -630,6 +677,7 @@ }, "node_modules/eslint-config-semistandard": { "version": "16.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", "dev": true, "peerDependencies": { @@ -642,6 +690,7 @@ }, "node_modules/eslint-config-standard": { "version": "16.0.3", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", "dev": true, "funding": [ @@ -667,6 +716,7 @@ }, "node_modules/eslint-config-standard-jsx": { "version": "10.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", "dev": true, "funding": [ @@ -690,6 +740,7 @@ }, "node_modules/eslint-import-resolver-node": { "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, "dependencies": { @@ -699,6 +750,7 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { @@ -707,11 +759,13 @@ }, "node_modules/eslint-import-resolver-node/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, "node_modules/eslint-module-utils": { "version": "2.6.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, "dependencies": { @@ -724,6 +778,7 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { @@ -732,6 +787,7 @@ }, "node_modules/eslint-plugin-es": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, "dependencies": { @@ -750,6 +806,7 @@ }, "node_modules/eslint-plugin-import": { "version": "2.23.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz", "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", "dev": true, "dependencies": { @@ -778,6 +835,7 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { @@ -786,6 +844,7 @@ }, "node_modules/eslint-plugin-import/node_modules/doctrine": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { @@ -797,6 +856,7 @@ }, "node_modules/eslint-plugin-import/node_modules/find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "dependencies": { @@ -808,6 +868,7 @@ }, "node_modules/eslint-plugin-import/node_modules/locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "dependencies": { @@ -820,11 +881,13 @@ }, "node_modules/eslint-plugin-import/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, "node_modules/eslint-plugin-import/node_modules/p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "dependencies": { @@ -836,6 +899,7 @@ }, "node_modules/eslint-plugin-import/node_modules/p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "dependencies": { @@ -847,6 +911,7 @@ }, "node_modules/eslint-plugin-import/node_modules/path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, "engines": { @@ -855,6 +920,7 @@ }, "node_modules/eslint-plugin-node": { "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, "dependencies": { @@ -874,6 +940,7 @@ }, "node_modules/eslint-plugin-node/node_modules/ignore": { "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true, "engines": { @@ -882,6 +949,7 @@ }, "node_modules/eslint-plugin-node/node_modules/semver": { "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, "bin": { @@ -890,6 +958,7 @@ }, "node_modules/eslint-plugin-promise": { "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", "dev": true, "engines": { @@ -901,6 +970,7 @@ }, "node_modules/eslint-plugin-react": { "version": "7.21.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, "dependencies": { @@ -925,6 +995,7 @@ }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { @@ -936,6 +1007,7 @@ }, "node_modules/eslint-scope": { "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "dependencies": { @@ -948,6 +1020,7 @@ }, "node_modules/eslint-utils": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "dependencies": { @@ -962,6 +1035,7 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, "engines": { @@ -970,6 +1044,7 @@ }, "node_modules/eslint-visitor-keys": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, "engines": { @@ -978,6 +1053,7 @@ }, "node_modules/espree": { "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "dependencies": { @@ -991,6 +1067,7 @@ }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, "engines": { @@ -999,6 +1076,7 @@ }, "node_modules/esprima": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, "bin": { @@ -1011,6 +1089,7 @@ }, "node_modules/esquery": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "dependencies": { @@ -1022,6 +1101,7 @@ }, "node_modules/esquery/node_modules/estraverse": { "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, "engines": { @@ -1030,6 +1110,7 @@ }, "node_modules/esrecurse": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { @@ -1041,6 +1122,7 @@ }, "node_modules/esrecurse/node_modules/estraverse": { "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, "engines": { @@ -1049,6 +1131,7 @@ }, "node_modules/estraverse": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "engines": { @@ -1057,6 +1140,7 @@ }, "node_modules/esutils": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, "engines": { @@ -1065,21 +1149,25 @@ }, "node_modules/fast-deep-equal": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "node_modules/fast-levenshtein": { "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, "node_modules/file-entry-cache": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "dependencies": { @@ -1091,6 +1179,7 @@ }, "node_modules/find-up": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { @@ -1106,6 +1195,7 @@ }, "node_modules/flat-cache": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "dependencies": { @@ -1118,11 +1208,13 @@ }, "node_modules/flatted": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, "node_modules/foreground-child": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, "dependencies": { @@ -1135,21 +1227,25 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, "node_modules/function-bind": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, "node_modules/functional-red-black-tree": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, "node_modules/get-caller-file": { "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "engines": { @@ -1158,6 +1254,7 @@ }, "node_modules/get-intrinsic": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "dependencies": { @@ -1171,6 +1268,7 @@ }, "node_modules/get-stdin": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true, "engines": { @@ -1182,6 +1280,7 @@ }, "node_modules/glob": { "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "dependencies": { @@ -1201,6 +1300,7 @@ }, "node_modules/glob-parent": { "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "dependencies": { @@ -1212,6 +1312,7 @@ }, "node_modules/globals": { "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "dependencies": { @@ -1226,11 +1327,13 @@ }, "node_modules/graceful-fs": { "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, "node_modules/has": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "dependencies": { @@ -1242,6 +1345,7 @@ }, "node_modules/has-bigints": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true, "funding": { @@ -1250,6 +1354,7 @@ }, "node_modules/has-flag": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { "node": ">=8" @@ -1257,6 +1362,7 @@ }, "node_modules/has-symbols": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true, "engines": { @@ -1268,16 +1374,19 @@ }, "node_modules/hosted-git-info": { "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "node_modules/html-escaper": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "node_modules/ignore": { "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true, "engines": { @@ -1286,6 +1395,7 @@ }, "node_modules/import-fresh": { "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { @@ -1301,6 +1411,7 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true, "engines": { @@ -1309,6 +1420,7 @@ }, "node_modules/inflight": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "dependencies": { @@ -1318,11 +1430,13 @@ }, "node_modules/inherits": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "node_modules/internal-slot": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "dependencies": { @@ -1336,11 +1450,13 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "node_modules/is-bigint": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", "dev": true, "funding": { @@ -1349,6 +1465,7 @@ }, "node_modules/is-boolean-object": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, "dependencies": { @@ -1363,6 +1480,7 @@ }, "node_modules/is-callable": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true, "engines": { @@ -1374,6 +1492,7 @@ }, "node_modules/is-core-module": { "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, "dependencies": { @@ -1385,6 +1504,7 @@ }, "node_modules/is-date-object": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", "dev": true, "engines": { @@ -1396,6 +1516,7 @@ }, "node_modules/is-extglob": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true, "engines": { @@ -1404,6 +1525,7 @@ }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "engines": { @@ -1412,6 +1534,7 @@ }, "node_modules/is-glob": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "dependencies": { @@ -1423,6 +1546,7 @@ }, "node_modules/is-negative-zero": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true, "engines": { @@ -1434,6 +1558,7 @@ }, "node_modules/is-number-object": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", "dev": true, "engines": { @@ -1445,6 +1570,7 @@ }, "node_modules/is-regex": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "dependencies": { @@ -1460,6 +1586,7 @@ }, "node_modules/is-string": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", "dev": true, "engines": { @@ -1471,6 +1598,7 @@ }, "node_modules/is-symbol": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "dependencies": { @@ -1485,11 +1613,13 @@ }, "node_modules/isexe": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, "node_modules/istanbul-lib-coverage": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true, "engines": { @@ -1498,6 +1628,7 @@ }, "node_modules/istanbul-lib-report": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, "dependencies": { @@ -1511,6 +1642,7 @@ }, "node_modules/istanbul-reports": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, "dependencies": { @@ -1523,11 +1655,13 @@ }, "node_modules/js-tokens": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "node_modules/js-yaml": { "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { @@ -1540,21 +1674,25 @@ }, "node_modules/json-parse-better-errors": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, "node_modules/json5": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "dependencies": { @@ -1566,6 +1704,7 @@ }, "node_modules/jsx-ast-utils": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, "dependencies": { @@ -1578,6 +1717,7 @@ }, "node_modules/levn": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { @@ -1590,6 +1730,7 @@ }, "node_modules/load-json-file": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, "dependencies": { @@ -1604,6 +1745,7 @@ }, "node_modules/locate-path": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { @@ -1626,21 +1768,25 @@ }, "node_modules/lodash.clonedeep": { "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, "node_modules/lodash.merge": { "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "node_modules/lodash.truncate": { "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", "dev": true }, "node_modules/logslot": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", "dependencies": { "chalk": "^4.1.1" @@ -1648,6 +1794,7 @@ }, "node_modules/loose-envify": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "dependencies": { @@ -1659,6 +1806,7 @@ }, "node_modules/lru-cache": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dependencies": { "yallist": "^4.0.0" @@ -1669,6 +1817,7 @@ }, "node_modules/make-dir": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { @@ -1683,6 +1832,7 @@ }, "node_modules/make-dir/node_modules/semver": { "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, "bin": { @@ -1691,6 +1841,7 @@ }, "node_modules/minimatch": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "dependencies": { @@ -1702,24 +1853,29 @@ }, "node_modules/minimist": { "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "node_modules/mql-to-jql": { - "version": "1.1.9", - "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.3.0.tgz", + "integrity": "sha512-QSdxn52mb9b1PDW301D85OKhtVO/nweb4x9F+bsGrYla4F9I2SuVR5O4R69vZ3ozHclnR4NL3ucQR+kAl+8ZKg==" }, "node_modules/ms": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "node_modules/natural-compare": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, "node_modules/node-ejdb-lite": { "version": "3.4.2", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", "cpu": [ "x64", @@ -1744,6 +1900,7 @@ }, "node_modules/normalize-package-data": { "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "dependencies": { @@ -1755,6 +1912,7 @@ }, "node_modules/normalize-package-data/node_modules/semver": { "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, "bin": { @@ -1763,6 +1921,7 @@ }, "node_modules/object-assign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true, "engines": { @@ -1771,6 +1930,7 @@ }, "node_modules/object-inspect": { "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true, "funding": { @@ -1779,6 +1939,7 @@ }, "node_modules/object-keys": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, "engines": { @@ -1787,6 +1948,7 @@ }, "node_modules/object.assign": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "dependencies": { @@ -1804,6 +1966,7 @@ }, "node_modules/object.entries": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, "dependencies": { @@ -1817,6 +1980,7 @@ }, "node_modules/object.fromentries": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", "dev": true, "dependencies": { @@ -1834,6 +1998,7 @@ }, "node_modules/object.values": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, "dependencies": { @@ -1850,6 +2015,7 @@ }, "node_modules/once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "dependencies": { @@ -1858,6 +2024,7 @@ }, "node_modules/optionator": { "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "dependencies": { @@ -1874,6 +2041,7 @@ }, "node_modules/p-limit": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "dependencies": { @@ -1888,6 +2056,7 @@ }, "node_modules/p-locate": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { @@ -1902,6 +2071,7 @@ }, "node_modules/p-try": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true, "engines": { @@ -1910,6 +2080,7 @@ }, "node_modules/parent-module": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "dependencies": { @@ -1921,6 +2092,7 @@ }, "node_modules/parse-json": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "dependencies": { @@ -1933,6 +2105,7 @@ }, "node_modules/path-exists": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, "engines": { @@ -1941,6 +2114,7 @@ }, "node_modules/path-is-absolute": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true, "engines": { @@ -1949,6 +2123,7 @@ }, "node_modules/path-key": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "engines": { @@ -1957,11 +2132,13 @@ }, "node_modules/path-parse": { "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "node_modules/path-type": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "dependencies": { @@ -1973,6 +2150,7 @@ }, "node_modules/pify": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true, "engines": { @@ -1981,6 +2159,7 @@ }, "node_modules/pkg-conf": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "dependencies": { @@ -1993,6 +2172,7 @@ }, "node_modules/pkg-conf/node_modules/find-up": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "dependencies": { @@ -2004,6 +2184,7 @@ }, "node_modules/pkg-conf/node_modules/load-json-file": { "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "dependencies": { @@ -2019,6 +2200,7 @@ }, "node_modules/pkg-conf/node_modules/locate-path": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "dependencies": { @@ -2031,6 +2213,7 @@ }, "node_modules/pkg-conf/node_modules/p-limit": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { @@ -2045,6 +2228,7 @@ }, "node_modules/pkg-conf/node_modules/p-locate": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "dependencies": { @@ -2056,6 +2240,7 @@ }, "node_modules/pkg-conf/node_modules/p-try": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, "engines": { @@ -2064,6 +2249,7 @@ }, "node_modules/pkg-conf/node_modules/path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, "engines": { @@ -2072,6 +2258,7 @@ }, "node_modules/pkg-conf/node_modules/pify": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, "engines": { @@ -2080,6 +2267,7 @@ }, "node_modules/pkg-conf/node_modules/type-fest": { "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true, "engines": { @@ -2088,6 +2276,7 @@ }, "node_modules/pkg-dir": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "dependencies": { @@ -2099,6 +2288,7 @@ }, "node_modules/pkg-dir/node_modules/find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "dependencies": { @@ -2110,6 +2300,7 @@ }, "node_modules/pkg-dir/node_modules/locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "dependencies": { @@ -2122,6 +2313,7 @@ }, "node_modules/pkg-dir/node_modules/p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "dependencies": { @@ -2133,6 +2325,7 @@ }, "node_modules/pkg-dir/node_modules/p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "dependencies": { @@ -2144,6 +2337,7 @@ }, "node_modules/pkg-dir/node_modules/path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, "engines": { @@ -2152,6 +2346,7 @@ }, "node_modules/pkg-up": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, "dependencies": { @@ -2163,6 +2358,7 @@ }, "node_modules/pkg-up/node_modules/find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "dependencies": { @@ -2174,6 +2370,7 @@ }, "node_modules/pkg-up/node_modules/locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "dependencies": { @@ -2186,6 +2383,7 @@ }, "node_modules/pkg-up/node_modules/p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "dependencies": { @@ -2197,6 +2395,7 @@ }, "node_modules/pkg-up/node_modules/p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "dependencies": { @@ -2208,6 +2407,7 @@ }, "node_modules/pkg-up/node_modules/path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, "engines": { @@ -2216,6 +2416,7 @@ }, "node_modules/prelude-ls": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, "engines": { @@ -2224,6 +2425,7 @@ }, "node_modules/progress": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, "engines": { @@ -2232,6 +2434,7 @@ }, "node_modules/prop-types": { "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", "dev": true, "dependencies": { @@ -2242,6 +2445,7 @@ }, "node_modules/punycode": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true, "engines": { @@ -2250,11 +2454,13 @@ }, "node_modules/react-is": { "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, "node_modules/read-pkg": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, "dependencies": { @@ -2268,6 +2474,7 @@ }, "node_modules/read-pkg-up": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "dev": true, "dependencies": { @@ -2280,6 +2487,7 @@ }, "node_modules/read-pkg-up/node_modules/find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "dependencies": { @@ -2291,6 +2499,7 @@ }, "node_modules/read-pkg-up/node_modules/locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "dependencies": { @@ -2303,6 +2512,7 @@ }, "node_modules/read-pkg-up/node_modules/p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "dependencies": { @@ -2314,6 +2524,7 @@ }, "node_modules/read-pkg-up/node_modules/p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "dependencies": { @@ -2325,6 +2536,7 @@ }, "node_modules/read-pkg-up/node_modules/path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, "engines": { @@ -2333,6 +2545,7 @@ }, "node_modules/regexp.prototype.flags": { "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", "dev": true, "dependencies": { @@ -2348,6 +2561,7 @@ }, "node_modules/regexpp": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true, "engines": { @@ -2359,6 +2573,7 @@ }, "node_modules/require-directory": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true, "engines": { @@ -2367,6 +2582,7 @@ }, "node_modules/require-from-string": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, "engines": { @@ -2375,6 +2591,7 @@ }, "node_modules/resolve": { "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "dependencies": { @@ -2387,6 +2604,7 @@ }, "node_modules/resolve-from": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, "engines": { @@ -2395,6 +2613,7 @@ }, "node_modules/righto": { "version": "6.1.3", + "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", "dependencies": { "abbott": "^1.1.3", @@ -2403,6 +2622,7 @@ }, "node_modules/rimraf": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "dependencies": { @@ -2415,8 +2635,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "node_modules/semistandard": { "version": "16.0.1", + "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", "dev": true, "funding": [ @@ -2453,6 +2680,7 @@ }, "node_modules/semver": { "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "dependencies": { "lru-cache": "^6.0.0" @@ -2466,14 +2694,17 @@ }, "node_modules/server-destroy": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" }, "node_modules/setimmediate": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "node_modules/shebang-command": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "dependencies": { @@ -2485,6 +2716,7 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "engines": { @@ -2493,6 +2725,7 @@ }, "node_modules/side-channel": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, "dependencies": { @@ -2506,11 +2739,13 @@ }, "node_modules/signal-exit": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "node_modules/slice-ansi": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "dependencies": { @@ -2527,6 +2762,7 @@ }, "node_modules/source-map": { "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true, "engines": { @@ -2535,6 +2771,7 @@ }, "node_modules/spdx-correct": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "dependencies": { @@ -2544,11 +2781,13 @@ }, "node_modules/spdx-exceptions": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "node_modules/spdx-expression-parse": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "dependencies": { @@ -2558,16 +2797,19 @@ }, "node_modules/spdx-license-ids": { "version": "3.0.9", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", "dev": true }, "node_modules/sprintf-js": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "node_modules/standard-engine": { "version": "14.0.1", + "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "funding": [ @@ -2596,6 +2838,7 @@ }, "node_modules/string-width": { "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "dependencies": { @@ -2609,6 +2852,7 @@ }, "node_modules/string.prototype.matchall": { "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, "dependencies": { @@ -2627,6 +2871,7 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, "dependencies": { @@ -2639,6 +2884,7 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, "dependencies": { @@ -2651,6 +2897,7 @@ }, "node_modules/strip-ansi": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "dependencies": { @@ -2662,6 +2909,7 @@ }, "node_modules/strip-bom": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true, "engines": { @@ -2670,6 +2918,7 @@ }, "node_modules/strip-json-comments": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, "engines": { @@ -2681,6 +2930,7 @@ }, "node_modules/supports-color": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { "has-flag": "^4.0.0" @@ -2691,6 +2941,7 @@ }, "node_modules/table": { "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, "dependencies": { @@ -2707,6 +2958,7 @@ }, "node_modules/table/node_modules/ajv": { "version": "8.6.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "dependencies": { @@ -2722,6 +2974,7 @@ }, "node_modules/table/node_modules/json-schema-traverse": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true }, @@ -2732,6 +2985,7 @@ }, "node_modules/test-exclude": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "dependencies": { @@ -2745,11 +2999,13 @@ }, "node_modules/text-table": { "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, "node_modules/tsconfig-paths": { "version": "3.9.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, "dependencies": { @@ -2761,6 +3017,7 @@ }, "node_modules/type-check": { "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "dependencies": { @@ -2772,6 +3029,7 @@ }, "node_modules/type-fest": { "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, "engines": { @@ -2783,6 +3041,7 @@ }, "node_modules/unbox-primitive": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", "dev": true, "dependencies": { @@ -2797,6 +3056,7 @@ }, "node_modules/uri-js": { "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "dependencies": { @@ -2805,6 +3065,7 @@ }, "node_modules/uuid": { "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "bin": { "uuid": "dist/bin/uuid" @@ -2812,11 +3073,13 @@ }, "node_modules/v8-compile-cache": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "node_modules/v8-to-istanbul": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", "dev": true, "dependencies": { @@ -2830,6 +3093,7 @@ }, "node_modules/validate-npm-package-license": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "dependencies": { @@ -2839,6 +3103,7 @@ }, "node_modules/which": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "dependencies": { @@ -2853,6 +3118,7 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "dependencies": { @@ -2868,6 +3134,7 @@ }, "node_modules/word-wrap": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true, "engines": { @@ -2876,6 +3143,7 @@ }, "node_modules/wrap-ansi": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "dependencies": { @@ -2892,11 +3160,13 @@ }, "node_modules/wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, "node_modules/xdg-basedir": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true, "engines": { @@ -2905,6 +3175,7 @@ }, "node_modules/y18n": { "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, "engines": { @@ -2913,10 +3184,12 @@ }, "node_modules/yallist": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yargs": { "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "dependencies": { @@ -2933,8 +3206,9 @@ } }, "node_modules/yargs-parser": { - "version": "20.2.7", - "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, "engines": { "node": ">=10" @@ -2942,6 +3216,7 @@ }, "node_modules/yocto-queue": { "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, "engines": { @@ -2955,6 +3230,7 @@ "dependencies": { "@babel/code-frame": { "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, "requires": { @@ -2963,11 +3239,13 @@ }, "@babel/helper-validator-identifier": { "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true }, "@babel/highlight": { "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { @@ -2978,6 +3256,7 @@ "dependencies": { "ansi-styles": { "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { @@ -2986,6 +3265,7 @@ }, "chalk": { "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { @@ -2996,6 +3276,7 @@ }, "color-convert": { "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { @@ -3004,21 +3285,25 @@ }, "color-name": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "escape-string-regexp": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "has-flag": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "supports-color": { "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { @@ -3029,11 +3314,13 @@ }, "@bcoe/v8-coverage": { "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, "@eslint/eslintrc": { "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, "requires": { @@ -3050,36 +3337,43 @@ }, "@istanbuljs/schema": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, "@types/istanbul-lib-coverage": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, "@types/json5": { "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, "abbott": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" }, "acorn": { "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, "acorn-jsx": { "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, "requires": {} }, "ajv": { "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { @@ -3091,16 +3385,19 @@ }, "ansi-colors": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true }, "ansi-regex": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "ansi-styles": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { "color-convert": "^2.0.1" @@ -3108,6 +3405,7 @@ }, "argparse": { "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { @@ -3116,6 +3414,7 @@ }, "array-includes": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, "requires": { @@ -3128,6 +3427,7 @@ }, "array.prototype.flat": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, "requires": { @@ -3138,6 +3438,7 @@ }, "array.prototype.flatmap": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", "dev": true, "requires": { @@ -3149,11 +3450,13 @@ }, "astral-regex": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, "balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, @@ -3169,6 +3472,7 @@ }, "brace-expansion": { "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { @@ -3178,6 +3482,7 @@ }, "c8": { "version": "7.7.3", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.3.tgz", "integrity": "sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==", "dev": true, "requires": { @@ -3197,6 +3502,7 @@ }, "call-bind": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, "requires": { @@ -3206,11 +3512,13 @@ }, "callsites": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, "chalk": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", @@ -3219,6 +3527,7 @@ }, "cliui": { "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "requires": { @@ -3229,6 +3538,7 @@ }, "color-convert": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { "color-name": "~1.1.4" @@ -3236,38 +3546,37 @@ }, "color-name": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" }, "concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "concurrun": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" }, "convert-source-map": { - "version": "1.7.0", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", "dev": true, "requires": { "safe-buffer": "~5.1.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } } }, "cross-spawn": { "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { @@ -3278,6 +3587,7 @@ }, "debug": { "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { @@ -3286,11 +3596,13 @@ }, "deep-is": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, "define-properties": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "requires": { @@ -3299,6 +3611,7 @@ }, "doctrine": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "requires": { @@ -3307,11 +3620,13 @@ }, "emoji-regex": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "enquirer": { "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "requires": { @@ -3320,6 +3635,7 @@ }, "error-ex": { "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { @@ -3328,6 +3644,7 @@ }, "es-abstract": { "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { @@ -3351,6 +3668,7 @@ }, "es-to-primitive": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { @@ -3361,11 +3679,13 @@ }, "escalade": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, "escape-string-regexp": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, @@ -3418,24 +3738,28 @@ }, "eslint-config-semistandard": { "version": "16.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", "dev": true, "requires": {} }, "eslint-config-standard": { "version": "16.0.3", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", "dev": true, "requires": {} }, "eslint-config-standard-jsx": { "version": "10.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", "dev": true, "requires": {} }, "eslint-import-resolver-node": { "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, "requires": { @@ -3445,6 +3769,7 @@ "dependencies": { "debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { @@ -3453,6 +3778,7 @@ }, "ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } @@ -3460,6 +3786,7 @@ }, "eslint-module-utils": { "version": "2.6.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", "dev": true, "requires": { @@ -3469,6 +3796,7 @@ "dependencies": { "debug": { "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { @@ -3479,6 +3807,7 @@ }, "eslint-plugin-es": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, "requires": { @@ -3488,6 +3817,7 @@ }, "eslint-plugin-import": { "version": "2.23.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz", "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", "dev": true, "requires": { @@ -3510,6 +3840,7 @@ "dependencies": { "debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { @@ -3518,6 +3849,7 @@ }, "doctrine": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { @@ -3526,6 +3858,7 @@ }, "find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { @@ -3534,6 +3867,7 @@ }, "locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { @@ -3543,11 +3877,13 @@ }, "ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, "p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { @@ -3556,6 +3892,7 @@ }, "p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { @@ -3564,6 +3901,7 @@ }, "path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } @@ -3571,6 +3909,7 @@ }, "eslint-plugin-node": { "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, "requires": { @@ -3584,11 +3923,13 @@ "dependencies": { "ignore": { "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, "semver": { "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } @@ -3596,12 +3937,14 @@ }, "eslint-plugin-promise": { "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", "dev": true, "requires": {} }, "eslint-plugin-react": { "version": "7.21.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", "dev": true, "requires": { @@ -3620,6 +3963,7 @@ "dependencies": { "doctrine": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { @@ -3630,6 +3974,7 @@ }, "eslint-scope": { "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { @@ -3639,6 +3984,7 @@ }, "eslint-utils": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { @@ -3647,6 +3993,7 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } @@ -3654,11 +4001,13 @@ }, "eslint-visitor-keys": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true }, "espree": { "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "requires": { @@ -3669,6 +4018,7 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } @@ -3676,11 +4026,13 @@ }, "esprima": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, "esquery": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { @@ -3689,6 +4041,7 @@ "dependencies": { "estraverse": { "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } @@ -3696,6 +4049,7 @@ }, "esrecurse": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { @@ -3704,6 +4058,7 @@ "dependencies": { "estraverse": { "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } @@ -3711,31 +4066,37 @@ }, "estraverse": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true }, "esutils": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, "fast-deep-equal": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, "fast-json-stable-stringify": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, "file-entry-cache": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "requires": { @@ -3744,6 +4105,7 @@ }, "find-up": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "requires": { @@ -3753,6 +4115,7 @@ }, "flat-cache": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "requires": { @@ -3762,11 +4125,13 @@ }, "flatted": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, "foreground-child": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, "requires": { @@ -3776,26 +4141,31 @@ }, "fs.realpath": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, "function-bind": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, "functional-red-black-tree": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, "get-caller-file": { "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-intrinsic": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "requires": { @@ -3806,11 +4176,13 @@ }, "get-stdin": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true }, "glob": { "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "requires": { @@ -3824,6 +4196,7 @@ }, "glob-parent": { "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { @@ -3832,6 +4205,7 @@ }, "globals": { "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { @@ -3840,11 +4214,13 @@ }, "graceful-fs": { "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, "has": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { @@ -3853,35 +4229,42 @@ }, "has-bigints": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true }, "has-flag": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "has-symbols": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true }, "hosted-git-info": { "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "html-escaper": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "ignore": { "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, "import-fresh": { "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { @@ -3891,11 +4274,13 @@ }, "imurmurhash": { "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, "inflight": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { @@ -3905,11 +4290,13 @@ }, "inherits": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "internal-slot": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "requires": { @@ -3920,16 +4307,19 @@ }, "is-arrayish": { "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-bigint": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", "dev": true }, "is-boolean-object": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", "dev": true, "requires": { @@ -3938,11 +4328,13 @@ }, "is-callable": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true }, "is-core-module": { "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, "requires": { @@ -3951,21 +4343,25 @@ }, "is-date-object": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", "dev": true }, "is-extglob": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "is-glob": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { @@ -3974,16 +4370,19 @@ }, "is-negative-zero": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true }, "is-number-object": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", "dev": true }, "is-regex": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { @@ -3993,11 +4392,13 @@ }, "is-string": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", "dev": true }, "is-symbol": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "requires": { @@ -4006,16 +4407,19 @@ }, "isexe": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, "istanbul-lib-coverage": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true }, "istanbul-lib-report": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, "requires": { @@ -4026,6 +4430,7 @@ }, "istanbul-reports": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, "requires": { @@ -4035,11 +4440,13 @@ }, "js-tokens": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { @@ -4049,21 +4456,25 @@ }, "json-parse-better-errors": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "json-schema-traverse": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, "json5": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { @@ -4072,6 +4483,7 @@ }, "jsx-ast-utils": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", "dev": true, "requires": { @@ -4081,6 +4493,7 @@ }, "levn": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "requires": { @@ -4090,6 +4503,7 @@ }, "load-json-file": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, "requires": { @@ -4101,6 +4515,7 @@ }, "locate-path": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "requires": { @@ -4117,21 +4532,25 @@ }, "lodash.clonedeep": { "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, "lodash.merge": { "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "lodash.truncate": { "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", "dev": true }, "logslot": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", "requires": { "chalk": "^4.1.1" @@ -4139,6 +4558,7 @@ }, "loose-envify": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { @@ -4147,6 +4567,7 @@ }, "lru-cache": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "requires": { "yallist": "^4.0.0" @@ -4154,6 +4575,7 @@ }, "make-dir": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { @@ -4162,6 +4584,7 @@ "dependencies": { "semver": { "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } @@ -4169,6 +4592,7 @@ }, "minimatch": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { @@ -4177,24 +4601,29 @@ }, "minimist": { "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "mql-to-jql": { - "version": "1.1.9", - "integrity": "sha512-HM64F7mokNNiTOBfY2l1O/ZJyjEiOUN5KXjZJIb+WtBpbBPrlcQyz2beBV23hVq9gREANEhDclXC3micc2BzSg==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.3.0.tgz", + "integrity": "sha512-QSdxn52mb9b1PDW301D85OKhtVO/nweb4x9F+bsGrYla4F9I2SuVR5O4R69vZ3ozHclnR4NL3ucQR+kAl+8ZKg==" }, "ms": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "natural-compare": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, "node-ejdb-lite": { "version": "3.4.2", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", "requires": { "semver": "^7.3.5" @@ -4202,6 +4631,7 @@ }, "normalize-package-data": { "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { @@ -4213,6 +4643,7 @@ "dependencies": { "semver": { "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } @@ -4220,21 +4651,25 @@ }, "object-assign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true }, "object-inspect": { "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object-keys": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, "object.assign": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { @@ -4246,6 +4681,7 @@ }, "object.entries": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, "requires": { @@ -4256,6 +4692,7 @@ }, "object.fromentries": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", "dev": true, "requires": { @@ -4267,6 +4704,7 @@ }, "object.values": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, "requires": { @@ -4277,6 +4715,7 @@ }, "once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { @@ -4285,6 +4724,7 @@ }, "optionator": { "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "requires": { @@ -4298,6 +4738,7 @@ }, "p-limit": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "requires": { @@ -4306,6 +4747,7 @@ }, "p-locate": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "requires": { @@ -4314,11 +4756,13 @@ }, "p-try": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, "parent-module": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { @@ -4327,6 +4771,7 @@ }, "parse-json": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { @@ -4336,26 +4781,31 @@ }, "path-exists": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "path-is-absolute": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, "path-key": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "path-parse": { "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "path-type": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "requires": { @@ -4364,11 +4814,13 @@ }, "pify": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true }, "pkg-conf": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { @@ -4378,6 +4830,7 @@ "dependencies": { "find-up": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { @@ -4386,6 +4839,7 @@ }, "load-json-file": { "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { @@ -4398,6 +4852,7 @@ }, "locate-path": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { @@ -4407,6 +4862,7 @@ }, "p-limit": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { @@ -4415,6 +4871,7 @@ }, "p-locate": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { @@ -4423,21 +4880,25 @@ }, "p-try": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true }, "pify": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "type-fest": { "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true } @@ -4445,6 +4906,7 @@ }, "pkg-dir": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { @@ -4453,6 +4915,7 @@ "dependencies": { "find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { @@ -4461,6 +4924,7 @@ }, "locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { @@ -4470,6 +4934,7 @@ }, "p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { @@ -4478,6 +4943,7 @@ }, "p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { @@ -4486,6 +4952,7 @@ }, "path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } @@ -4493,6 +4960,7 @@ }, "pkg-up": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, "requires": { @@ -4501,6 +4969,7 @@ "dependencies": { "find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { @@ -4509,6 +4978,7 @@ }, "locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { @@ -4518,6 +4988,7 @@ }, "p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { @@ -4526,6 +4997,7 @@ }, "p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { @@ -4534,6 +5006,7 @@ }, "path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } @@ -4541,16 +5014,19 @@ }, "prelude-ls": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, "progress": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "prop-types": { "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", "dev": true, "requires": { @@ -4561,16 +5037,19 @@ }, "punycode": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "react-is": { "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, "read-pkg": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, "requires": { @@ -4581,6 +5060,7 @@ }, "read-pkg-up": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "dev": true, "requires": { @@ -4590,6 +5070,7 @@ "dependencies": { "find-up": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { @@ -4598,6 +5079,7 @@ }, "locate-path": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { @@ -4607,6 +5089,7 @@ }, "p-limit": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { @@ -4615,6 +5098,7 @@ }, "p-locate": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { @@ -4623,6 +5107,7 @@ }, "path-exists": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } @@ -4630,6 +5115,7 @@ }, "regexp.prototype.flags": { "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", "dev": true, "requires": { @@ -4639,21 +5125,25 @@ }, "regexpp": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, "require-directory": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, "require-from-string": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "resolve": { "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "requires": { @@ -4663,11 +5153,13 @@ }, "resolve-from": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, "righto": { "version": "6.1.3", + "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", "requires": { "abbott": "^1.1.3", @@ -4676,14 +5168,22 @@ }, "rimraf": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { "glob": "^7.1.3" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "semistandard": { "version": "16.0.1", + "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", "dev": true, "requires": { @@ -4700,6 +5200,7 @@ }, "semver": { "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" @@ -4707,14 +5208,17 @@ }, "server-destroy": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" }, "setimmediate": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "shebang-command": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { @@ -4723,11 +5227,13 @@ }, "shebang-regex": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, "side-channel": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, "requires": { @@ -4738,11 +5244,13 @@ }, "signal-exit": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "slice-ansi": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "requires": { @@ -4753,11 +5261,13 @@ }, "source-map": { "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true }, "spdx-correct": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { @@ -4767,11 +5277,13 @@ }, "spdx-exceptions": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { @@ -4781,16 +5293,19 @@ }, "spdx-license-ids": { "version": "3.0.9", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", "dev": true }, "sprintf-js": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "standard-engine": { "version": "14.0.1", + "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "requires": { @@ -4802,6 +5317,7 @@ }, "string-width": { "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { @@ -4812,6 +5328,7 @@ }, "string.prototype.matchall": { "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, "requires": { @@ -4827,6 +5344,7 @@ }, "string.prototype.trimend": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, "requires": { @@ -4836,6 +5354,7 @@ }, "string.prototype.trimstart": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, "requires": { @@ -4845,6 +5364,7 @@ }, "strip-ansi": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { @@ -4853,16 +5373,19 @@ }, "strip-bom": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, "strip-json-comments": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, "supports-color": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "requires": { "has-flag": "^4.0.0" @@ -4870,6 +5393,7 @@ }, "table": { "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, "requires": { @@ -4883,6 +5407,7 @@ "dependencies": { "ajv": { "version": "8.6.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "requires": { @@ -4894,6 +5419,7 @@ }, "json-schema-traverse": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true } @@ -4906,6 +5432,7 @@ }, "test-exclude": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "requires": { @@ -4916,11 +5443,13 @@ }, "text-table": { "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, "tsconfig-paths": { "version": "3.9.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, "requires": { @@ -4932,6 +5461,7 @@ }, "type-check": { "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { @@ -4940,11 +5470,13 @@ }, "type-fest": { "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, "unbox-primitive": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", "dev": true, "requires": { @@ -4956,6 +5488,7 @@ }, "uri-js": { "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { @@ -4964,15 +5497,18 @@ }, "uuid": { "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" }, "v8-compile-cache": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "v8-to-istanbul": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", "dev": true, "requires": { @@ -4983,6 +5519,7 @@ }, "validate-npm-package-license": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { @@ -4992,6 +5529,7 @@ }, "which": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { @@ -5000,6 +5538,7 @@ }, "which-boxed-primitive": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "requires": { @@ -5012,11 +5551,13 @@ }, "word-wrap": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, "wrap-ansi": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { @@ -5027,25 +5568,30 @@ }, "wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, "xdg-basedir": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, "y18n": { "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, "yallist": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { @@ -5059,12 +5605,14 @@ } }, "yargs-parser": { - "version": "20.2.7", - "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true }, "yocto-queue": { "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true } diff --git a/package.json b/package.json index 888d93b..ee1fbc4 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { - "name": "canhazdb", + "name": "canhazdb-server", "version": "8.0.0", "type": "module", "description": "", - "main": "index.js", + "main": "lib/index.js", "scripts": { "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 94 node test" }, @@ -16,7 +16,7 @@ "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", - "mql-to-jql": "^1.1.9", + "mql-to-jql": "^1.3.0", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", "tcpocket": "^7.3.0" diff --git a/test/features/basic.js b/test/features/basic.js index effca87..ddec024 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -4,7 +4,7 @@ import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; -function createExampleDocuments (client, count) { +function createExampleDocuments (client, count, extraData) { const counts = Array(count).fill('').map((_, index) => index); return Promise.all( @@ -12,6 +12,7 @@ function createExampleDocuments (client, count) { return client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { + ...extraData, foo: 'bar' + (count + 1) } }); @@ -93,6 +94,92 @@ test('post', async t => { await servers.close(); }); +test('put', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3); + + const putResponses = await client.send(c.PUT, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { foo: 'barz' } + }); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'tests' + }); + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + + const foos = getResponse.json()[c.DATA] + .map(item => item.foo); + t.deepEqual(foos, ['barz', 'barz', 'barz'], 'returned 1 document'); + + t.equal(putResponses.json()[c.DATA], 3, 'altered the correct number of documents'); + await client.close(); + await servers.close(); +}); + +test('patch', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3, { b: 1 }); + + const putResponses = await client.send(c.PATCH, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { foo: 'barz' } + }); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'tests' + }); + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + + const finalResponse = getResponse.json()[c.DATA] + .map(item => { + const { id, ...withoutId } = item; + return withoutId; + }); + t.deepEqual(finalResponse, [ + { foo: 'barz', b: 1 }, + { foo: 'barz', b: 1 }, + { foo: 'barz', b: 1 } + ], 'returned 1 document'); + + t.equal(putResponses.json()[c.DATA], 3, 'altered the correct number of documents'); + await client.close(); + await servers.close(); +}); + +test('delete', async t => { + t.plan(2); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3); + + const deleteResponse = await client.send(c.DELETE, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { foo: 'bar2' } + }); + + t.equal(deleteResponse.command, c.STATUS_OK, 'has status'); + t.equal(deleteResponse.json()[c.DATA], 1, 'returned 1 change'); + + await client.close(); + await servers.close(); +}); + test('get - with order (ascending)', async t => { t.plan(5); From 4200855912e963267423faf50e356746fd8332d7 Mon Sep 17 00:00:00 2001 From: Mark Date: Tue, 29 Jun 2021 22:41:20 +1000 Subject: [PATCH 18/73] Accept lower coverage --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ee1fbc4..78e15e0 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "lib/index.js", "scripts": { - "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 94 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 89 node test" }, "keywords": [], "author": "", From 9013479a97857e418e4071fed976546fcf93f255 Mon Sep 17 00:00:00 2001 From: Mark Date: Thu, 1 Jul 2021 21:32:01 +1000 Subject: [PATCH 19/73] Update dependencies; Rewrite readme; --- README.md | 155 ++++++++++++++++++++++++++++++++++++ canhazdbLogo.svg | 195 ++++++++++++++++++++++++++++++++++++++++++++++ package-lock.json | 14 ++-- package.json | 2 +- 4 files changed, 358 insertions(+), 8 deletions(-) create mode 100644 README.md create mode 100644 canhazdbLogo.svg diff --git a/README.md b/README.md new file mode 100644 index 0000000..1c0ee01 --- /dev/null +++ b/README.md @@ -0,0 +1,155 @@ + + +# canhazdb-server +![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/canhazdb/server) +[![GitHub package.json version](https://img.shields.io/github/package-json/v/canhazdb/server)](https://github.com/canhazdb/server/blob/master/package.json) +[![GitHub](https://img.shields.io/github/license/canhazdb/server)](https://github.com/canhazdb/server/blob/master/LICENSE) +[![js-semistandard-style](https://img.shields.io/badge/code%20style-semistandard-brightgreen.svg)](https://github.com/standard/semistandard) + +An embedable or standalone database, that shardes data across a cluster of nodes, with eventing. + +## Getting Started +You must have a minimum version of Node 16 installed. + +Create the tls files you need to secure your cluster. + +A bash script `./makeCerts.sh` provided will create a folder with test certs you can use. + +You can opt out of tls by omitting the tls option from canhazdb. + +### Server Via Docker +The quickest way to setup a test server is via: +```bash +docker run -itp 8060:8060 canhazdb/server --single +``` + +Then visit http://localhost:8080 + +But you can create a production ready and scalable stack by +using the [stack.yml](stack.yml) file as an example. + +This will give you TLS authenication and encryption along with +persistent storage. + +### Server Via the CLI +```bash +npm install --global canhazdb-server +``` + +#### Create a single node server +```bash +canhazdb-server \ + --host localhost \ + --port 7061 \ + --data-dir ./canhazdb/one \ + --tls-ca ./certs/ca.cert.pem \ + --tls-cert ./certs/localhost.cert.pem \ + --tls-key ./certs/localhost.privkey.pem +``` + +#### Add some more to the cluster +```bash +canhazdb-server \ + --host localhost \ + --port 7062 \ + --data-dir ./canhazdb/two \ + --tls-ca ./certs/ca.cert.pem \ + --tls-cert ./certs/localhost.cert.pem \ + --tls-key ./certs/localhost.privkey.pem \ + --join localhost:7061 + +canhazdb-server \ + --host localhost \ + --port 7063 \ + --data-dir ./canhazdb/three \ + --tls-ca ./certs/ca.cert.pem \ + --tls-cert ./certs/localhost.cert.pem \ + --tls-key ./certs/localhost.privkey.pem \ + --join localhost:7061 +``` + +### Server Via NodeJS +```bash +npm install --save canhazdb-server canhazdb-client +``` + +```javascript +const fs = require('fs'); +const createServer = require('canhazdb-server'); +const createClient = require('canhazdb-client'); + +async function main () { + const tls = { + key: fs.readFileSync('./certs/localhost.privkey.pem'), + cert: fs.readFileSync('./certs/localhost.cert.pem'), + ca: [ fs.readFileSync('./certs/ca.cert.pem') ], + requestCert: true /* this denys any cert not signed with our ca above */ + }; + + const node1 = await createServer({ + host: 'localhost', + port: 7061, + dataDirectory: './canhazdata/one', + tls + }); + + const node2 = await createServer({ + host: 'localhost', + port: 7062, + dataDirectory: './canhazdata/two', + tls, join: ['localhost:7061'] + }); + + // You can join to other nodes after starting: + // await node2.join({ host: 'otherhost', port: 8060 }) + + const db = await createClient({ host: 'localhost', port: 8060, ...tls }); + const postedDocument = await db.post('tests', { + a: 1, + b: 2, + c: 3 + }); + + const result = await db.getOne('tests', { + query: { + id: postedDocument.id + } + }); + console.log(result); + + /* + { + a: 1, + b: 2, + c: 3 + } + */ +} +``` + +## System Tables +The `system` namespace is used for storing the following metadata related to the database. + +You can query them like any normal collection. + +### collections +The `system.collections` collection contains a document for each collection, along with the +amount of documents that stores. + +```javascript +await db.getAll('system.collections') + +/* + [{ + id: 'uuid-uuid-uuid-uuid', + collectionId: 'tests', + documentCount: 1 + }] +*/ +``` + +## API +See the API documentation for the [client](https://github.com/canhazdb/server). + +## License +This project is licensed under the terms of the AGPL-3.0 license. diff --git a/canhazdbLogo.svg b/canhazdbLogo.svg new file mode 100644 index 0000000..c538b39 --- /dev/null +++ b/canhazdbLogo.svg @@ -0,0 +1,195 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/package-lock.json b/package-lock.json index 02a590b..79b3c00 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", - "mql-to-jql": "^1.3.0", + "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", "tcpocket": "^7.3.0" @@ -1857,9 +1857,9 @@ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "node_modules/mql-to-jql": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.3.0.tgz", - "integrity": "sha512-QSdxn52mb9b1PDW301D85OKhtVO/nweb4x9F+bsGrYla4F9I2SuVR5O4R69vZ3ozHclnR4NL3ucQR+kAl+8ZKg==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", + "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" }, "node_modules/ms": { "version": "2.1.2", @@ -4605,9 +4605,9 @@ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "mql-to-jql": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.3.0.tgz", - "integrity": "sha512-QSdxn52mb9b1PDW301D85OKhtVO/nweb4x9F+bsGrYla4F9I2SuVR5O4R69vZ3ozHclnR4NL3ucQR+kAl+8ZKg==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", + "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" }, "ms": { "version": "2.1.2", diff --git a/package.json b/package.json index 78e15e0..ec7a0bd 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", - "mql-to-jql": "^1.3.0", + "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.2", "server-destroy": "^1.0.1", "tcpocket": "^7.3.0" From ef74f08718103c1471fb536c4580a048cbfba14e Mon Sep 17 00:00:00 2001 From: Mark Date: Thu, 1 Jul 2021 22:55:54 +1000 Subject: [PATCH 20/73] Fix more tests --- README.md | 8 +++--- lib/controllers/external/delete.js | 26 ++++++++++++------ lib/controllers/external/patch.js | 28 +++++++++++-------- lib/controllers/external/put.js | 26 ++++++++++++------ lib/controllers/internal/delete.js | 42 ++++++++++++++++------------ lib/controllers/internal/patch.js | 44 +++++++++++++++++------------- lib/controllers/internal/put.js | 44 +++++++++++++++++------------- 7 files changed, 129 insertions(+), 89 deletions(-) diff --git a/README.md b/README.md index 1c0ee01..af78aba 100644 --- a/README.md +++ b/README.md @@ -141,15 +141,15 @@ await db.getAll('system.collections') /* [{ - id: 'uuid-uuid-uuid-uuid', - collectionId: 'tests', - documentCount: 1 + id: 'uuid-uuid-uuid-uuid', + collectionId: 'tests', + documentCount: 1 }] */ ``` ## API -See the API documentation for the [client](https://github.com/canhazdb/server). +See the API documentation for the [client docs](https://canhazdb.github.io/client/modules/index.html). ## License This project is licensed under the terms of the AGPL-3.0 license. diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index dd271e8..a9e7c13 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -16,19 +16,27 @@ async function deleteController (context, socketState, request, response) { [c.QUERY]: requestData[c.QUERY], [c.DATA]: requestData[c.DATA], [c.INTERNAL]: true - }, false) - .then(result => { - return result.json()[c.DATA]; - }) - .catch(error => { - log.warn('node send failed', error); - }); + }).catch(error => { + log.warn('node send failed', error); + }); }) ); - response.reply(c.STATUS_OK, { - [c.DATA]: results.reduce((a, b) => a + b) + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + response.reply(c.STATUS_OK, + results + .filter(result => !!result) + .map(result => result.json()) + .reduce((a, b) => a + b) + ); } export default deleteController; diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 88ee634..5828433 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -16,21 +16,27 @@ async function patchController (context, socketState, request, response) { [c.QUERY]: requestData[c.QUERY], [c.DATA]: requestData[c.DATA], [c.INTERNAL]: true - }, false) - .then(result => { - return result.json()[c.DATA]; - }) - .catch(error => { - log.warn('node send failed', error); - console.log('yeah, this really needs to be handled'); - process.exit(1); - }); + }).catch(error => { + log.warn('node send failed', error); + }); }) ); - response.reply(c.STATUS_OK, { - [c.DATA]: results.reduce((a, b) => a + b) + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + response.reply(c.STATUS_OK, + results + .filter(result => !!result) + .map(result => result.json()) + .reduce((a, b) => a + b) + ); } export default patchController; diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index bbdc275..2505039 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -16,19 +16,27 @@ async function putController (context, socketState, request, response) { [c.QUERY]: requestData[c.QUERY], [c.DATA]: requestData[c.DATA], [c.INTERNAL]: true - }, false) - .then(result => { - return result.json()[c.DATA]; - }) - .catch(error => { - log.warn('node send failed', error); - }); + }).catch(error => { + log.warn('node send failed', error); + }); }) ); - response.reply(c.STATUS_OK, { - [c.DATA]: results.reduce((a, b) => a + b) + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + response.reply(c.STATUS_OK, + results + .filter(result => !!result) + .map(result => result.json()) + .reduce((a, b) => a + b) + ); } export default putController; diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index ee7799e..644b395 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -9,25 +9,31 @@ async function deleteController (context, socketState, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); + try { + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } + + const count = await context.driver.count(collectionId, { + $and: [{ + '_replicatedNodes.0': context.thisNode.name + }, query] + }); + + await context.driver.del(collectionId, query); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply(c.STATUS_OK, { + [c.DATA]: count + }); + } catch (error) { + response.reply(c.STATUS_BAD_REQUEST, { + [c.ERROR]: error.message + }); } - - const count = await context.driver.count(collectionId, { - $and: [{ - '_replicatedNodes.0': context.thisNode.name - }, query] - }); - - await context.driver.del(collectionId, query); - - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - - response.reply(c.STATUS_OK, { - [c.DATA]: count - }); } export default deleteController; diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index 8d2a2a5..bae4121 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -10,26 +10,32 @@ async function patchController (context, socketState, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); + try { + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } + + const [, count] = await Promise.all([ + context.driver.patch(collectionId, data, query), + context.driver.count(collectionId, { + $and: [{ + '_replicatedNodes.0': context.thisNode.name + }, query] + }) + ]); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply(c.STATUS_OK, { + [c.DATA]: count + }); + } catch (error) { + response.reply(c.STATUS_BAD_REQUEST, { + [c.ERROR]: error.message + }); } - - const [, count] = await Promise.all([ - context.driver.patch(collectionId, data, query), - context.driver.count(collectionId, { - $and: [{ - '_replicatedNodes.0': context.thisNode.name - }, query] - }) - ]); - - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - - response.reply(c.STATUS_OK, { - [c.DATA]: count - }); } export default patchController; diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index 34a8f95..5198a29 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -10,26 +10,32 @@ async function putController (context, socketState, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); + try { + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } + + const [, count] = await Promise.all([ + context.driver.put(collectionId, data, query), + context.driver.count(collectionId, { + $and: [{ + '_replicatedNodes.0': context.thisNode.name + }, query] + }) + ]); + + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + + // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + + response.reply(c.STATUS_OK, { + [c.DATA]: count + }); + } catch (error) { + response.reply(c.STATUS_BAD_REQUEST, { + [c.ERROR]: error.message + }); } - - const [, count] = await Promise.all([ - context.driver.put(collectionId, data, query), - context.driver.count(collectionId, { - $and: [{ - '_replicatedNodes.0': context.thisNode.name - }, query] - }) - ]); - - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - - response.reply(c.STATUS_OK, { - [c.DATA]: count - }); } export default putController; From a2127343b155ab0b2bd36030c1b5b7f8badd1929 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Wed, 11 Aug 2021 23:30:36 +1000 Subject: [PATCH 21/73] Implement notify --- lib/constants.js | 33 +- lib/controllers/external/delete.js | 6 +- lib/controllers/external/patch.js | 2 + lib/controllers/external/post.js | 6 +- lib/controllers/external/put.js | 6 +- lib/controllers/index.js | 13 +- lib/controllers/internal/delete.js | 2 - lib/controllers/internal/patch.js | 2 - lib/controllers/internal/post.js | 2 - lib/controllers/internal/put.js | 2 - lib/controllers/shared/notifyOff.js | 33 + lib/controllers/shared/notifyOn.js | 44 + lib/index.js | 36 +- package-lock.json | 1639 ++++++++++-------------- package.json | 12 +- test/features/basic.js | 121 +- yarn.lock | 1830 +++++++++++++++++++++++++++ 17 files changed, 2754 insertions(+), 1035 deletions(-) create mode 100644 lib/controllers/shared/notifyOff.js create mode 100644 lib/controllers/shared/notifyOn.js create mode 100644 yarn.lock diff --git a/lib/constants.js b/lib/constants.js index ca2ccad..c2245db 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -1,12 +1,4 @@ const constants = { - STATUS_OK: 120, - STATUS_BAD_REQUEST: 121, - STATUS_NOT_FOUND: 122, - STATUS_CREATED: 123, - - COMMAND: 40, - STATUS: 41, - INTERNAL: 2, COLLECTION_ID: 3, @@ -30,16 +22,25 @@ const constants = { NOTIFY_ON: 18, NOTIFY_OFF: 19, + NOTIFY_PATH: 20, + + LOCK: 21, + UNLOCK: 22, + LOCK_ID: 23, + LOCK_STRATEGY: 24, + LOCK_STRATEGY_FAIL: 25, + LOCK_STRATEGY_WAIT: 26, + LOCK_KEYS: 27, - ERROR: 26, + COMMAND: 40, + STATUS: 41, - LOCK: 20, - UNLOCK: 21, - LOCK_ID: 22, - LOCK_KEYS: 27, - LOCK_STRATEGY: 23, - LOCK_STRATEGY_FAIL: 24, - LOCK_STRATEGY_WAIT: 25 + ERROR: 100, + + STATUS_OK: 120, + STATUS_BAD_REQUEST: 121, + STATUS_NOT_FOUND: 122, + STATUS_CREATED: 123 }; export default constants; diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index a9e7c13..3603866 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -7,12 +7,14 @@ const log = logslot('canhazdb.controllers.external.delete'); async function deleteController (context, socketState, request, response) { const requestData = request.json(); + const collectionId = requestData[c.COLLECTION_ID]; + const results = await Promise.all( context.nodes .filter(node => node.connected) .map(node => { return node.client.send(c.DELETE, { - [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.COLLECTION_ID]: collectionId, [c.QUERY]: requestData[c.QUERY], [c.DATA]: requestData[c.DATA], [c.INTERNAL]: true @@ -31,6 +33,8 @@ async function deleteController (context, socketState, request, response) { return; } + // context.notify(`DELETE:/${collectionId}/${document.id}`, collectionId, document.id, request); + response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 5828433..1c45b7d 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -31,6 +31,8 @@ async function patchController (context, socketState, request, response) { return; } + // context.notify(`PATCH:/${collectionId}/${document.id}`, collectionId, document.id, request); + response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index 7c7a8fd..666750b 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -15,10 +15,12 @@ async function postController (context, socketState, request, response) { id: uuid() }; + const collectionId = requestData[c.COLLECTION_ID]; + await Promise.all( nodes.map(node => { return node.client.send(c.POST, { - [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.COLLECTION_ID]: collectionId, [c.REPLICATED_NODES]: nodes.map(node => node.name), [c.DATA]: document, [c.INTERNAL]: true @@ -26,6 +28,8 @@ async function postController (context, socketState, request, response) { }) ); + context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 2505039..233ad27 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -7,12 +7,14 @@ const log = logslot('canhazdb.controllers.external.put'); async function putController (context, socketState, request, response) { const requestData = request.json(); + const collectionId = requestData[c.COLLECTION_ID]; + const results = await Promise.all( context.nodes .filter(node => node.connected) .map(node => { return node.client.send(c.PUT, { - [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.COLLECTION_ID]: collectionId, [c.QUERY]: requestData[c.QUERY], [c.DATA]: requestData[c.DATA], [c.INTERNAL]: true @@ -31,6 +33,8 @@ async function putController (context, socketState, request, response) { return; } + // context.notify(`PUT:/${collectionId}/${document.id}`, collectionId, document.id, request); + response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/index.js b/lib/controllers/index.js index 2de9d00..37c6fe2 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -15,6 +15,9 @@ import externalPut from './external/put.js'; import externalPatch from './external/patch.js'; import externalDelete from './external/delete.js'; +import factoryNotifyOn from './shared/notifyOn.js'; +import factoryNotifyOff from './shared/notifyOff.js'; + const controllers = { internal: { [c.INFO]: internalInfo, @@ -23,7 +26,10 @@ const controllers = { [c.GET]: internalGet, [c.PUT]: internalPut, [c.PATCH]: internalPatch, - [c.DELETE]: internalDelete + [c.DELETE]: internalDelete, + + [c.NOTIFY_ON]: factoryNotifyOn('internal'), + [c.NOTIFY_OFF]: factoryNotifyOff('internal') }, external: { [c.INFO]: externalInfo, @@ -32,7 +38,10 @@ const controllers = { [c.GET]: externalGet, [c.PUT]: externalPut, [c.PATCH]: externalPatch, - [c.DELETE]: externalDelete + [c.DELETE]: externalDelete, + + [c.NOTIFY_ON]: factoryNotifyOn('external'), + [c.NOTIFY_OFF]: factoryNotifyOff('external') } }; diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index 644b395..63cfa34 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -24,8 +24,6 @@ async function deleteController (context, socketState, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_OK, { [c.DATA]: count }); diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index bae4121..d06d1c8 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -26,8 +26,6 @@ async function patchController (context, socketState, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_OK, { [c.DATA]: count }); diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 0a57562..1f89d79 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -19,8 +19,6 @@ async function postController (context, socketState, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index 5198a29..e2fc089 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -26,8 +26,6 @@ async function putController (context, socketState, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - // context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_OK, { [c.DATA]: count }); diff --git a/lib/controllers/shared/notifyOff.js b/lib/controllers/shared/notifyOff.js new file mode 100644 index 0000000..4afe48d --- /dev/null +++ b/lib/controllers/shared/notifyOff.js @@ -0,0 +1,33 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +function askOnAllNodes (context, command, data) { + return Promise.all( + context.nodes.map(node => node.client.send(command, data)) + ); +} + +const notifyFactory = domain => { + // const log = logslot('canhazdb.controllers.' + domain + '.notifyOff'); + + return async function notifyOffController (context, socketState, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.NOTIFY_PATH]; + + const notifiers = context.notifiers[domain]; + + if (domain === 'external' && notifiers[notifyPath].length === 0) { + await askOnAllNodes(context, c.NOTIFY_OFF, { + [c.INTERNAL]: true, + [c.NOTIFY_PATH]: notifyPath + }); + } + + notifiers[notifyPath] = []; + + response.reply(c.STATUS_OK); + }; +}; + +export default notifyFactory; diff --git a/lib/controllers/shared/notifyOn.js b/lib/controllers/shared/notifyOn.js new file mode 100644 index 0000000..46c7481 --- /dev/null +++ b/lib/controllers/shared/notifyOn.js @@ -0,0 +1,44 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +function askOnAllNodes (context, command, data) { + return Promise.all( + context.nodes.map(node => node.client.send(command, data)) + ); +} + +const notifyFactory = domain => { + // const log = logslot('canhazdb.controllers.' + domain + '.notifyOn'); + + return async function notifyOnController (context, socketState, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.NOTIFY_PATH]; + + const notifiers = context.notifiers[domain]; + + notifiers[notifyPath] = notifiers[notifyPath] || []; + + if (!notifiers[notifyPath].regex) { + notifiers[notifyPath].regex = new RegExp(notifyPath); + } + + if (domain === 'external' && notifiers[notifyPath].length === 0) { + await askOnAllNodes(context, c.NOTIFY_ON, { + [c.INTERNAL]: true, + [c.NOTIFY_PATH]: notifyPath + }); + } + + const listenerIndex = notifiers[notifyPath].indexOf(response); + if (listenerIndex === -1) { + notifiers[notifyPath].push( + (path) => response.send(c.STATUS_OK, { [c.DATA]: path }) + ); + } + + response.reply(c.STATUS_OK); + }; +}; + +export default notifyFactory; diff --git a/lib/index.js b/lib/index.js index 7ac79dd..3c11faf 100644 --- a/lib/index.js +++ b/lib/index.js @@ -4,12 +4,32 @@ import lockbase from 'lockbase'; import prepareOptions from './prepareOptions.js'; import createHandler from './createHandler.js'; +import driver from './driver/index.js'; import waitUntil from './utils/waitUntil.js'; import c from './constants.js'; const log = logslot('canhazdb.server'); +function createNotifier (context) { + return (path) => { + return Promise.all( + Object.keys(context.notifiers.external) + .map(key => { + const notifier = context.notifiers.external[key]; + + if (!path.match(notifier.regex)) { + return null; + } + + return Promise.all( + notifier.map(fn => fn(path)) + ); + }) + ); + }; +} + async function persistNode (context, node) { const existingRecords = await context.driver.get('system.nodes', { name: node.name @@ -50,6 +70,14 @@ function join (context, host, port) { }) }; + node.client.on('message', (message) => { + console.log(222, message.command); + if (message.command === c.NOTIFY_ON) { + const data = message.json(); + context.notify(data[c.DATA]); + } + }); + function handleError (error) { node.connected = false; @@ -99,15 +127,21 @@ async function canhazdb (rawOptions) { settings: { replicas: 3 }, + notifiers: { + internal: {}, + external: {} + }, nodes: [], join, options }; - context.driver = await (await import('./driver/index.js')).default(context); + context.driver = await driver(context); context.locks = lockbase(); + context.notify = createNotifier(context, 'external'); + const tcpServer = createHandler(context); tcpServer.open(); diff --git a/package-lock.json b/package-lock.json index 79b3c00..066b0e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,19 +9,19 @@ "version": "8.0.0", "license": "ISC", "dependencies": { - "basictap": "^1.3.1", - "chalk": "^4.1.1", + "basictap": "^2.0.2", + "chalk": "^4.1.2", "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", - "node-ejdb-lite": "^3.4.2", + "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.3.0" + "tcpocket": "^7.3.1" }, "devDependencies": { - "c8": "^7.7.3", - "eslint": "^7.29.0", + "c8": "^7.8.0", + "eslint": "^7.32.0", "semistandard": "^16.0.1", "uuid": "^8.3.2" } @@ -36,9 +36,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", + "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", "dev": true, "engines": { "node": ">=6.9.0" @@ -136,9 +136,9 @@ "dev": true }, "node_modules/@eslint/eslintrc": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -155,6 +155,26 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -170,17 +190,6 @@ "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "node_modules/abbott": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", - "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" - }, "node_modules/acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -194,9 +203,9 @@ } }, "node_modules/acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -329,13 +338,13 @@ "dev": true }, "node_modules/basictap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.3.1.tgz", - "integrity": "sha512-hw4OFQb/DWpWdM5hCfh2nQfOTFxpGgRZMTWclOAyIa1k2YhRSTb7RJ8FK5b2AjmvzJ3epIgG838/KoblbjS0Xw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz", + "integrity": "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==", "dependencies": { "colorette": "^1.2.2", - "concurrun": "^1.1.0", - "righto": "^6.1.3" + "events": "^3.3.0", + "promise-limit": "^2.7.0" } }, "node_modules/brace-expansion": { @@ -349,9 +358,9 @@ } }, "node_modules/c8": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.3.tgz", - "integrity": "sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz", + "integrity": "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==", "dev": true, "dependencies": { "@bcoe/v8-coverage": "^0.2.3", @@ -374,6 +383,76 @@ "node": ">=10.12.0" } }, + "node_modules/c8/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/c8/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -397,9 +476,9 @@ } }, "node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -449,11 +528,6 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "node_modules/concurrun": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", - "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" - }, "node_modules/convert-source-map": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", @@ -478,9 +552,9 @@ } }, "node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -513,15 +587,15 @@ } }, "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { "esutils": "^2.0.2" }, "engines": { - "node": ">=6.0.0" + "node": ">=0.10.0" } }, "node_modules/emoji-regex": { @@ -552,9 +626,9 @@ } }, "node_modules/es-abstract": { - "version": "1.18.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", - "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", + "version": "1.18.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz", + "integrity": "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==", "dev": true, "dependencies": { "call-bind": "^1.0.2", @@ -563,11 +637,12 @@ "get-intrinsic": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", "is-regex": "^1.1.3", "is-string": "^1.0.6", - "object-inspect": "^1.10.3", + "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", @@ -620,13 +695,14 @@ } }, "node_modules/eslint": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", - "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", "dev": true, "dependencies": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.2", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -785,6 +861,12 @@ "ms": "^2.1.1" } }, + "node_modules/eslint-module-utils/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, "node_modules/eslint-plugin-es": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", @@ -842,82 +924,12 @@ "ms": "2.0.0" } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/eslint-plugin-import/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, - "node_modules/eslint-plugin-import/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/eslint-plugin-node": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", @@ -947,15 +959,6 @@ "node": ">= 4" } }, - "node_modules/eslint-plugin-node/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/eslint-plugin-promise": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", @@ -993,18 +996,6 @@ "eslint": "^3 || ^4 || ^5 || ^6 || ^7" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", @@ -1018,6 +1009,15 @@ "node": ">=8.0.0" } }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, "node_modules/eslint-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", @@ -1033,7 +1033,7 @@ "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "node_modules/eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", @@ -1042,7 +1042,19 @@ "node": ">=4" } }, - "node_modules/eslint-visitor-keys": { + "node_modules/eslint/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", @@ -1051,6 +1063,21 @@ "node": ">=10" } }, + "node_modules/eslint/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", @@ -1065,15 +1092,6 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -1099,15 +1117,6 @@ "node": ">=0.10" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", @@ -1120,7 +1129,7 @@ "node": ">=4.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { + "node_modules/estraverse": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", @@ -1129,15 +1138,6 @@ "node": ">=4.0" } }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -1147,6 +1147,14 @@ "node": ">=0.10.0" } }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -1178,19 +1186,15 @@ } }, "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "locate-path": "^2.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/flat-cache": { @@ -1207,9 +1211,9 @@ } }, "node_modules/flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, "node_modules/foreground-child": { @@ -1311,9 +1315,9 @@ } }, "node_modules/globals": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", + "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1326,9 +1330,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", "dev": true }, "node_modules/has": { @@ -1372,6 +1376,21 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -1455,21 +1474,22 @@ "dev": true }, "node_modules/is-bigint": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", - "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.3.tgz", + "integrity": "sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-boolean-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", - "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -1479,9 +1499,9 @@ } }, "node_modules/is-callable": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", "dev": true, "engines": { "node": ">= 0.4" @@ -1491,9 +1511,9 @@ } }, "node_modules/is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", + "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -1503,10 +1523,13 @@ } }, "node_modules/is-date-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -1557,10 +1580,13 @@ } }, "node_modules/is-number-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", - "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -1569,13 +1595,13 @@ } }, "node_modules/is-regex": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.2" + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -1585,10 +1611,13 @@ } }, "node_modules/is-string": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", - "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -1691,15 +1720,18 @@ "dev": true }, "node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, "dependencies": { - "minimist": "^1.2.0" + "minimist": "^1.2.5" }, "bin": { "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, "node_modules/jsx-ast-utils": { @@ -1729,33 +1761,50 @@ } }, "node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" }, "engines": { - "node": ">=4" + "node": ">=6" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/load-json-file/node_modules/type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true, + "engines": { + "node": ">=6" } }, "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/lockbase": { @@ -1830,15 +1879,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -1874,9 +1914,9 @@ "dev": true }, "node_modules/node-ejdb-lite": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", - "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", + "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", "cpu": [ "x64", "x32", @@ -1898,6 +1938,20 @@ "npm": ">=6.0.0" } }, + "node_modules/node-ejdb-lite/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -1929,9 +1983,9 @@ } }, "node_modules/object-inspect": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2040,33 +2094,27 @@ } }, "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "dependencies": { - "yocto-queue": "^0.1.0" + "p-try": "^1.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "dependencies": { - "p-limit": "^3.0.2" + "p-limit": "^1.1.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/p-try": { @@ -2104,12 +2152,12 @@ } }, "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/path-is-absolute": { @@ -2182,22 +2230,6 @@ "node": ">=6" } }, - "node_modules/pkg-conf/node_modules/load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/pkg-conf/node_modules/locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -2238,178 +2270,35 @@ "node": ">=6" } }, - "node_modules/pkg-conf/node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "node_modules/pkg-conf/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/pkg-up/node_modules/p-locate": { + "node_modules/pkg-dir": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "dependencies": { - "p-limit": "^1.1.0" + "find-up": "^2.1.0" }, "engines": { "node": ">=4" } }, - "node_modules/pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "node_modules/pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, "engines": { "node": ">=4" } @@ -2432,6 +2321,11 @@ "node": ">=0.4.0" } }, + "node_modules/promise-limit": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", + "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" + }, "node_modules/prop-types": { "version": "15.7.2", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", @@ -2485,64 +2379,21 @@ "node": ">=4" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "node_modules/read-pkg/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, "dependencies": { - "p-limit": "^1.1.0" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/regexp.prototype.flags": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", @@ -2611,15 +2462,6 @@ "node": ">=4" } }, - "node_modules/righto": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", - "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", - "dependencies": { - "abbott": "^1.1.3", - "setimmediate": "^1.0.5" - } - }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -2679,17 +2521,12 @@ } }, "node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, "bin": { "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" } }, "node_modules/server-destroy": { @@ -2697,11 +2534,6 @@ "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -2957,9 +2789,9 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", @@ -2979,9 +2811,9 @@ "dev": true }, "node_modules/tcpocket": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.0.tgz", - "integrity": "sha512-wJu79jE87QD2Mmh7T4zMPibvrMo4Rcm6PzYvDg+mvm3MUdJ8MXbDVUdggL+q+bN4MyN1c6S/R+MBb7U7Z1Cxzw==" + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz", + "integrity": "sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q==" }, "node_modules/test-exclude": { "version": "6.0.0", @@ -3004,13 +2836,12 @@ "dev": true }, "node_modules/tsconfig-paths": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz", + "integrity": "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==", "dev": true, "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", + "json5": "^2.2.0", "minimist": "^1.2.0", "strip-bom": "^3.0.0" } @@ -3238,9 +3069,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", + "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", "dev": true }, "@babel/highlight": { @@ -3319,9 +3150,9 @@ "dev": true }, "@eslint/eslintrc": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -3335,6 +3166,23 @@ "strip-json-comments": "^3.1.1" } }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, "@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -3347,17 +3195,6 @@ "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "abbott": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/abbott/-/abbott-1.1.3.tgz", - "integrity": "sha1-JvOtm7vb/+LFa1sDdU5ZgasOXlw=" - }, "acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -3365,9 +3202,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "requires": {} }, @@ -3461,13 +3298,13 @@ "dev": true }, "basictap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-1.3.1.tgz", - "integrity": "sha512-hw4OFQb/DWpWdM5hCfh2nQfOTFxpGgRZMTWclOAyIa1k2YhRSTb7RJ8FK5b2AjmvzJ3epIgG838/KoblbjS0Xw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz", + "integrity": "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==", "requires": { "colorette": "^1.2.2", - "concurrun": "^1.1.0", - "righto": "^6.1.3" + "events": "^3.3.0", + "promise-limit": "^2.7.0" } }, "brace-expansion": { @@ -3481,9 +3318,9 @@ } }, "c8": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.7.3.tgz", - "integrity": "sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz", + "integrity": "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", @@ -3498,6 +3335,51 @@ "v8-to-istanbul": "^8.0.0", "yargs": "^16.2.0", "yargs-parser": "^20.2.7" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + } } }, "call-bind": { @@ -3517,9 +3399,9 @@ "dev": true }, "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3560,11 +3442,6 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "concurrun": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/concurrun/-/concurrun-1.1.0.tgz", - "integrity": "sha512-d6TtuUVtc+zxR/mXiXQLcotv/o5KjKHVADpkz2WAexkGe1nFnv2PP5aAKD+4LP4PLPaZP4wgqdja2yfsCA5YcA==" - }, "convert-source-map": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", @@ -3586,9 +3463,9 @@ } }, "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -3610,9 +3487,9 @@ } }, "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -3643,9 +3520,9 @@ } }, "es-abstract": { - "version": "1.18.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", - "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", + "version": "1.18.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz", + "integrity": "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3654,11 +3531,12 @@ "get-intrinsic": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", "is-regex": "^1.1.3", "is-string": "^1.0.6", - "object-inspect": "^1.10.3", + "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", @@ -3690,13 +3568,14 @@ "dev": true }, "eslint": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", - "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.2", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -3734,6 +3613,32 @@ "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } } }, "eslint-config-semistandard": { @@ -3802,6 +3707,12 @@ "requires": { "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true } } }, @@ -3847,63 +3758,11 @@ "ms": "2.0.0" } }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true } } }, @@ -3926,12 +3785,6 @@ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true } } }, @@ -3959,17 +3812,6 @@ "prop-types": "^15.7.2", "resolve": "^1.18.1", "string.prototype.matchall": "^4.0.2" - }, - "dependencies": { - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - } } }, "eslint-scope": { @@ -3980,6 +3822,14 @@ "requires": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } } }, "eslint-utils": { @@ -3989,20 +3839,12 @@ "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } } }, "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true }, "espree": { @@ -4014,14 +3856,6 @@ "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } } }, "esprima": { @@ -4037,14 +3871,6 @@ "dev": true, "requires": { "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } } }, "esrecurse": { @@ -4054,20 +3880,12 @@ "dev": true, "requires": { "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } } }, "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true }, "esutils": { @@ -4076,6 +3894,11 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -4104,13 +3927,12 @@ } }, "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "locate-path": "^2.0.0" } }, "flat-cache": { @@ -4124,9 +3946,9 @@ } }, "flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, "foreground-child": { @@ -4204,18 +4026,18 @@ } }, "globals": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", + "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, "graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", "dev": true }, "has": { @@ -4244,6 +4066,15 @@ "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, "hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -4312,40 +4143,44 @@ "dev": true }, "is-bigint": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", - "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.3.tgz", + "integrity": "sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg==", "dev": true }, "is-boolean-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", - "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "requires": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, "is-callable": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", "dev": true }, "is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", + "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", "dev": true, "requires": { "has": "^1.0.3" } }, "is-date-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-extglob": { "version": "2.1.1", @@ -4375,26 +4210,32 @@ "dev": true }, "is-number-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", - "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", - "dev": true + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-regex": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.2" + "has-tostringtag": "^1.0.0" } }, "is-string": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", - "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", - "dev": true + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-symbol": { "version": "1.0.4", @@ -4473,12 +4314,12 @@ "dev": true }, "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, "requires": { - "minimist": "^1.2.0" + "minimist": "^1.2.5" } }, "jsx-ast-utils": { @@ -4502,24 +4343,40 @@ } }, "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true + } } }, "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { - "p-locate": "^5.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "lockbase": { @@ -4580,14 +4437,6 @@ "dev": true, "requires": { "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } } }, "minimatch": { @@ -4622,11 +4471,21 @@ "dev": true }, "node-ejdb-lite": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.2.tgz", - "integrity": "sha512-9yomODviwAK3rHgibjUJnbNjHSxQAp+IGg6mu0WhMVnMCJ8qaIoPiZYrDIhUFH6uTgtSIZyZKzWJDO7jrdl9ag==", + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", + "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", "requires": { "semver": "^7.3.5" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + } } }, "normalize-package-data": { @@ -4656,9 +4515,9 @@ "dev": true }, "object-inspect": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", "dev": true }, "object-keys": { @@ -4737,21 +4596,21 @@ } }, "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { - "yocto-queue": "^0.1.0" + "p-try": "^1.0.0" } }, "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "p-limit": "^3.0.2" + "p-limit": "^1.1.0" } }, "p-try": { @@ -4780,9 +4639,9 @@ } }, "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true }, "path-is-absolute": { @@ -4837,19 +4696,6 @@ "locate-path": "^3.0.0" } }, - "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - } - }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -4883,24 +4729,6 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true } } }, @@ -4911,51 +4739,6 @@ "dev": true, "requires": { "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } } }, "pkg-up": { @@ -4965,51 +4748,6 @@ "dev": true, "requires": { "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } } }, "prelude-ls": { @@ -5024,6 +4762,11 @@ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, + "promise-limit": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", + "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" + }, "prop-types": { "version": "15.7.2", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", @@ -5056,6 +4799,20 @@ "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", "path-type": "^3.0.0" + }, + "dependencies": { + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + } } }, "read-pkg-up": { @@ -5066,51 +4823,6 @@ "requires": { "find-up": "^2.0.0", "read-pkg": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } } }, "regexp.prototype.flags": { @@ -5157,15 +4869,6 @@ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, - "righto": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/righto/-/righto-6.1.3.tgz", - "integrity": "sha512-tfnK3e10FjBCKSfVI69vJCzSCsHNaxCK7pdEhnxGM89KxHm4ykxT5B1jq6Xoj12+vK1atUvcKwAIFG84IBrPLw==", - "requires": { - "abbott": "^1.1.3", - "setimmediate": "^1.0.5" - } - }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -5199,23 +4902,16 @@ } }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true }, "server-destroy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -5406,9 +5102,9 @@ }, "dependencies": { "ajv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -5426,9 +5122,9 @@ } }, "tcpocket": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.0.tgz", - "integrity": "sha512-wJu79jE87QD2Mmh7T4zMPibvrMo4Rcm6PzYvDg+mvm3MUdJ8MXbDVUdggL+q+bN4MyN1c6S/R+MBb7U7Z1Cxzw==" + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz", + "integrity": "sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q==" }, "test-exclude": { "version": "6.0.0", @@ -5448,13 +5144,12 @@ "dev": true }, "tsconfig-paths": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz", + "integrity": "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==", "dev": true, "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", + "json5": "^2.2.0", "minimist": "^1.2.0", "strip-bom": "^3.0.0" } diff --git a/package.json b/package.json index ec7a0bd..ab2c467 100644 --- a/package.json +++ b/package.json @@ -11,19 +11,19 @@ "author": "", "license": "ISC", "dependencies": { - "basictap": "^1.3.1", - "chalk": "^4.1.1", + "basictap": "^2.0.2", + "chalk": "^4.1.2", "lockbase": "^1.1.0", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", - "node-ejdb-lite": "^3.4.2", + "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.3.0" + "tcpocket": "^7.3.1" }, "devDependencies": { - "c8": "^7.7.3", - "eslint": "^7.29.0", + "c8": "^7.8.0", + "eslint": "^7.32.0", "semistandard": "^16.0.1", "uuid": "^8.3.2" } diff --git a/test/features/basic.js b/test/features/basic.js index ddec024..483b873 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -60,6 +60,72 @@ test('info', async t => { ]); }); +test('count', async t => { + t.plan(2); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3); + + const getResponse = await client.send(c.COUNT, { + [c.COLLECTION_ID]: 'tests' + }); + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA], 3, 'returned 3'); + + await client.close(); + await servers.close(); +}); + +test('get - with order (descending)', async t => { + t.plan(5); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 3); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'tests', + [c.ORDER]: ['desc(foo)'] + }); + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); + + t.equal(getResponse.json()[c.DATA][0].foo, 'bar3', 'has foo property'); + t.equal(getResponse.json()[c.DATA][1].foo, 'bar2', 'has foo property'); + t.equal(getResponse.json()[c.DATA][2].foo, 'bar1', 'has foo property'); + + await client.close(); + await servers.close(); +}); + +test('get - with limit', async t => { + t.plan(2); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createExampleDocuments(client, 5); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'tests', + [c.LIMIT]: 3 + }); + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); + + await client.close(); + await servers.close(); +}); + test('post', async t => { t.plan(11); @@ -205,47 +271,48 @@ test('get - with order (ascending)', async t => { await servers.close(); }); -test('get - with order (descending)', async t => { - t.plan(5); +test('notify - collection', async t => { + t.plan(3); const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); - await createExampleDocuments(client, 3); - - const getResponse = await client.send(c.GET, { - [c.COLLECTION_ID]: 'tests', - [c.ORDER]: ['desc(foo)'] + client.on('message', ({ command, data }) => { + t.equal(command, c.STATUS_OK); + t.ok(data.toString().startsWith('{"5":"POST:/tests/')); }); - t.equal(getResponse.command, c.STATUS_OK, 'has status'); - t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); - - t.equal(getResponse.json()[c.DATA][0].foo, 'bar3', 'has foo property'); - t.equal(getResponse.json()[c.DATA][1].foo, 'bar2', 'has foo property'); - t.equal(getResponse.json()[c.DATA][2].foo, 'bar1', 'has foo property'); - - await client.close(); - await servers.close(); -}); + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); -test('get - with limit', async t => { - t.plan(2); + await client.send(c.POST, { + [c.COLLECTION_ID]: 'notests', + [c.DATA]: { + baz: 'baz' + } + }); - const servers = await createTestServers(1); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); + await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); - await createExampleDocuments(client, 5); + await client.send(c.NOTIFY_OFF, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); - const getResponse = await client.send(c.GET, { + await client.send(c.POST, { [c.COLLECTION_ID]: 'tests', - [c.LIMIT]: 3 + [c.DATA]: { + foo: 'bar' + } }); - t.equal(getResponse.command, c.STATUS_OK, 'has status'); - t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); await client.close(); await servers.close(); diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..c79078d --- /dev/null +++ b/yarn.lock @@ -0,0 +1,1830 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@7.12.11": + "integrity" "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==" + "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" + "version" "7.12.11" + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/helper-validator-identifier@^7.14.5": + "integrity" "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" + "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" + "version" "7.14.9" + +"@babel/highlight@^7.10.4": + "integrity" "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==" + "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" + "version" "7.14.5" + dependencies: + "@babel/helper-validator-identifier" "^7.14.5" + "chalk" "^2.0.0" + "js-tokens" "^4.0.0" + +"@bcoe/v8-coverage@^0.2.3": + "integrity" "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + "resolved" "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" + "version" "0.2.3" + +"@eslint/eslintrc@^0.4.3": + "integrity" "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==" + "resolved" "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" + "version" "0.4.3" + dependencies: + "ajv" "^6.12.4" + "debug" "^4.1.1" + "espree" "^7.3.0" + "globals" "^13.9.0" + "ignore" "^4.0.6" + "import-fresh" "^3.2.1" + "js-yaml" "^3.13.1" + "minimatch" "^3.0.4" + "strip-json-comments" "^3.1.1" + +"@humanwhocodes/config-array@^0.5.0": + "integrity" "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" + "version" "0.5.0" + dependencies: + "@humanwhocodes/object-schema" "^1.2.0" + "debug" "^4.1.1" + "minimatch" "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.0": + "integrity" "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz" + "version" "1.2.0" + +"@istanbuljs/schema@^0.1.2": + "integrity" "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" + "resolved" "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" + "version" "0.1.3" + +"@types/istanbul-lib-coverage@^2.0.1": + "integrity" "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + "resolved" "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" + "version" "2.0.3" + +"acorn-jsx@^5.3.1": + "integrity" "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" + "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" + "version" "5.3.2" + +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", "acorn@^7.4.0": + "integrity" "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + "resolved" "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" + "version" "7.4.1" + +"ajv@^6.10.0", "ajv@^6.12.4": + "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" + "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" + "version" "6.12.6" + dependencies: + "fast-deep-equal" "^3.1.1" + "fast-json-stable-stringify" "^2.0.0" + "json-schema-traverse" "^0.4.1" + "uri-js" "^4.2.2" + +"ajv@^8.0.1": + "integrity" "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==" + "resolved" "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz" + "version" "8.6.2" + dependencies: + "fast-deep-equal" "^3.1.1" + "json-schema-traverse" "^1.0.0" + "require-from-string" "^2.0.2" + "uri-js" "^4.2.2" + +"ansi-colors@^4.1.1": + "integrity" "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" + "resolved" "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" + "version" "4.1.1" + +"ansi-regex@^5.0.0": + "integrity" "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" + "version" "5.0.0" + +"ansi-styles@^3.2.1": + "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + "version" "3.2.1" + dependencies: + "color-convert" "^1.9.0" + +"ansi-styles@^4.0.0", "ansi-styles@^4.1.0": + "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "color-convert" "^2.0.1" + +"argparse@^1.0.7": + "integrity" "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==" + "resolved" "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" + "version" "1.0.10" + dependencies: + "sprintf-js" "~1.0.2" + +"array-includes@^3.1.1", "array-includes@^3.1.2", "array-includes@^3.1.3": + "integrity" "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==" + "resolved" "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" + "version" "3.1.3" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.2" + "get-intrinsic" "^1.1.1" + "is-string" "^1.0.5" + +"array.prototype.flat@^1.2.4": + "integrity" "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==" + "resolved" "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" + "version" "1.2.4" + dependencies: + "call-bind" "^1.0.0" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.1" + +"array.prototype.flatmap@^1.2.3": + "integrity" "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==" + "resolved" "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" + "version" "1.2.4" + dependencies: + "call-bind" "^1.0.0" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.1" + "function-bind" "^1.1.1" + +"astral-regex@^2.0.0": + "integrity" "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" + "resolved" "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" + "version" "2.0.0" + +"balanced-match@^1.0.0": + "integrity" "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" + "version" "1.0.2" + +"basictap@^2.0.2": + "integrity" "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==" + "resolved" "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "colorette" "^1.2.2" + "events" "^3.3.0" + "promise-limit" "^2.7.0" + +"brace-expansion@^1.1.7": + "integrity" "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==" + "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" + "version" "1.1.11" + dependencies: + "balanced-match" "^1.0.0" + "concat-map" "0.0.1" + +"c8@^7.8.0": + "integrity" "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==" + "resolved" "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz" + "version" "7.8.0" + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@istanbuljs/schema" "^0.1.2" + "find-up" "^5.0.0" + "foreground-child" "^2.0.0" + "istanbul-lib-coverage" "^3.0.0" + "istanbul-lib-report" "^3.0.0" + "istanbul-reports" "^3.0.2" + "rimraf" "^3.0.0" + "test-exclude" "^6.0.0" + "v8-to-istanbul" "^8.0.0" + "yargs" "^16.2.0" + "yargs-parser" "^20.2.7" + +"call-bind@^1.0.0", "call-bind@^1.0.2": + "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" + "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "function-bind" "^1.1.1" + "get-intrinsic" "^1.0.2" + +"callsites@^3.0.0": + "integrity" "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + "resolved" "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + "version" "3.1.0" + +"chalk@^2.0.0": + "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + "version" "2.4.2" + dependencies: + "ansi-styles" "^3.2.1" + "escape-string-regexp" "^1.0.5" + "supports-color" "^5.3.0" + +"chalk@^4.0.0", "chalk@^4.1.1", "chalk@^4.1.2": + "integrity" "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "ansi-styles" "^4.1.0" + "supports-color" "^7.1.0" + +"cliui@^7.0.2": + "integrity" "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==" + "resolved" "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" + "version" "7.0.4" + dependencies: + "string-width" "^4.2.0" + "strip-ansi" "^6.0.0" + "wrap-ansi" "^7.0.0" + +"color-convert@^1.9.0": + "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + "version" "1.9.3" + dependencies: + "color-name" "1.1.3" + +"color-convert@^2.0.1": + "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "color-name" "~1.1.4" + +"color-name@~1.1.4": + "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + "version" "1.1.4" + +"color-name@1.1.3": + "integrity" "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + "version" "1.1.3" + +"colorette@^1.2.2": + "integrity" "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz" + "version" "1.2.2" + +"concat-map@0.0.1": + "integrity" "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "version" "0.0.1" + +"convert-source-map@^1.6.0": + "integrity" "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==" + "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" + "version" "1.8.0" + dependencies: + "safe-buffer" "~5.1.1" + +"cross-spawn@^7.0.0", "cross-spawn@^7.0.2": + "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==" + "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + "version" "7.0.3" + dependencies: + "path-key" "^3.1.0" + "shebang-command" "^2.0.0" + "which" "^2.0.1" + +"debug@^2.6.9": + "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" + "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + "version" "2.6.9" + dependencies: + "ms" "2.0.0" + +"debug@^3.2.7": + "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==" + "resolved" "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" + "version" "3.2.7" + dependencies: + "ms" "^2.1.1" + +"debug@^4.0.1", "debug@^4.1.1": + "integrity" "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==" + "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" + "version" "4.3.2" + dependencies: + "ms" "2.1.2" + +"deep-is@^0.1.3": + "integrity" "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" + "version" "0.1.3" + +"define-properties@^1.1.3": + "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" + "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "object-keys" "^1.0.12" + +"doctrine@^2.1.0": + "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "esutils" "^2.0.2" + +"doctrine@^3.0.0": + "integrity" "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "esutils" "^2.0.2" + +"emoji-regex@^8.0.0": + "integrity" "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" + "version" "8.0.0" + +"enquirer@^2.3.5": + "integrity" "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==" + "resolved" "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" + "version" "2.3.6" + dependencies: + "ansi-colors" "^4.1.1" + +"error-ex@^1.3.1": + "integrity" "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==" + "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + "version" "1.3.2" + dependencies: + "is-arrayish" "^0.2.1" + +"es-abstract@^1.18.0-next.1", "es-abstract@^1.18.0-next.2", "es-abstract@^1.18.2": + "integrity" "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==" + "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz" + "version" "1.18.5" + dependencies: + "call-bind" "^1.0.2" + "es-to-primitive" "^1.2.1" + "function-bind" "^1.1.1" + "get-intrinsic" "^1.1.1" + "has" "^1.0.3" + "has-symbols" "^1.0.2" + "internal-slot" "^1.0.3" + "is-callable" "^1.2.3" + "is-negative-zero" "^2.0.1" + "is-regex" "^1.1.3" + "is-string" "^1.0.6" + "object-inspect" "^1.11.0" + "object-keys" "^1.1.1" + "object.assign" "^4.1.2" + "string.prototype.trimend" "^1.0.4" + "string.prototype.trimstart" "^1.0.4" + "unbox-primitive" "^1.0.1" + +"es-to-primitive@^1.2.1": + "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" + "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" + "version" "1.2.1" + dependencies: + "is-callable" "^1.1.4" + "is-date-object" "^1.0.1" + "is-symbol" "^1.0.2" + +"escalade@^3.1.1": + "integrity" "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" + "version" "3.1.1" + +"escape-string-regexp@^1.0.5": + "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + "version" "1.0.5" + +"escape-string-regexp@^4.0.0": + "integrity" "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" + "version" "4.0.0" + +"eslint-config-semistandard@16.0.0": + "integrity" "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==" + "resolved" "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz" + "version" "16.0.0" + +"eslint-config-standard-jsx@10.0.0": + "integrity" "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==" + "resolved" "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz" + "version" "10.0.0" + +"eslint-config-standard@>=16.0.3", "eslint-config-standard@16.0.3": + "integrity" "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==" + "resolved" "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" + "version" "16.0.3" + +"eslint-import-resolver-node@^0.3.4": + "integrity" "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==" + "resolved" "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz" + "version" "0.3.4" + dependencies: + "debug" "^2.6.9" + "resolve" "^1.13.1" + +"eslint-module-utils@^2.6.1": + "integrity" "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==" + "resolved" "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz" + "version" "2.6.1" + dependencies: + "debug" "^3.2.7" + "pkg-dir" "^2.0.0" + +"eslint-plugin-es@^3.0.0": + "integrity" "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "eslint-utils" "^2.0.0" + "regexpp" "^3.0.0" + +"eslint-plugin-import@^2.22.1", "eslint-plugin-import@>=2.22.1": + "integrity" "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz" + "version" "2.23.4" + dependencies: + "array-includes" "^3.1.3" + "array.prototype.flat" "^1.2.4" + "debug" "^2.6.9" + "doctrine" "^2.1.0" + "eslint-import-resolver-node" "^0.3.4" + "eslint-module-utils" "^2.6.1" + "find-up" "^2.0.0" + "has" "^1.0.3" + "is-core-module" "^2.4.0" + "minimatch" "^3.0.4" + "object.values" "^1.1.3" + "pkg-up" "^2.0.0" + "read-pkg-up" "^3.0.0" + "resolve" "^1.20.0" + "tsconfig-paths" "^3.9.0" + +"eslint-plugin-node@^11.1.0", "eslint-plugin-node@>=11.1.0": + "integrity" "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==" + "resolved" "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz" + "version" "11.1.0" + dependencies: + "eslint-plugin-es" "^3.0.0" + "eslint-utils" "^2.0.0" + "ignore" "^5.1.1" + "minimatch" "^3.0.4" + "resolve" "^1.10.1" + "semver" "^6.1.0" + +"eslint-plugin-promise@^4.2.1 || ^5.0.0", "eslint-plugin-promise@^5.1.0", "eslint-plugin-promise@>=4.2.1": + "integrity" "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==" + "resolved" "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz" + "version" "5.1.0" + +"eslint-plugin-react@^7.21.5", "eslint-plugin-react@~7.21.5": + "integrity" "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==" + "resolved" "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz" + "version" "7.21.5" + dependencies: + "array-includes" "^3.1.1" + "array.prototype.flatmap" "^1.2.3" + "doctrine" "^2.1.0" + "has" "^1.0.3" + "jsx-ast-utils" "^2.4.1 || ^3.0.0" + "object.entries" "^1.1.2" + "object.fromentries" "^2.0.2" + "object.values" "^1.1.1" + "prop-types" "^15.7.2" + "resolve" "^1.18.1" + "string.prototype.matchall" "^4.0.2" + +"eslint-scope@^5.1.1": + "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==" + "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" + "version" "5.1.1" + dependencies: + "esrecurse" "^4.3.0" + "estraverse" "^4.1.1" + +"eslint-utils@^2.0.0", "eslint-utils@^2.1.0": + "integrity" "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==" + "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "eslint-visitor-keys" "^1.1.0" + +"eslint-visitor-keys@^1.1.0", "eslint-visitor-keys@^1.3.0": + "integrity" "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" + "version" "1.3.0" + +"eslint-visitor-keys@^2.0.0": + "integrity" "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" + "version" "2.1.0" + +"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0", "eslint@^3 || ^4 || ^5 || ^6 || ^7", "eslint@^7.0.0", "eslint@^7.12.1", "eslint@^7.27.0", "eslint@^7.32.0", "eslint@>=4.19.1", "eslint@>=5.16.0", "eslint@>=7.12.1": + "integrity" "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==" + "resolved" "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" + "version" "7.32.0" + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.4.3" + "@humanwhocodes/config-array" "^0.5.0" + "ajv" "^6.10.0" + "chalk" "^4.0.0" + "cross-spawn" "^7.0.2" + "debug" "^4.0.1" + "doctrine" "^3.0.0" + "enquirer" "^2.3.5" + "escape-string-regexp" "^4.0.0" + "eslint-scope" "^5.1.1" + "eslint-utils" "^2.1.0" + "eslint-visitor-keys" "^2.0.0" + "espree" "^7.3.1" + "esquery" "^1.4.0" + "esutils" "^2.0.2" + "fast-deep-equal" "^3.1.3" + "file-entry-cache" "^6.0.1" + "functional-red-black-tree" "^1.0.1" + "glob-parent" "^5.1.2" + "globals" "^13.6.0" + "ignore" "^4.0.6" + "import-fresh" "^3.0.0" + "imurmurhash" "^0.1.4" + "is-glob" "^4.0.0" + "js-yaml" "^3.13.1" + "json-stable-stringify-without-jsonify" "^1.0.1" + "levn" "^0.4.1" + "lodash.merge" "^4.6.2" + "minimatch" "^3.0.4" + "natural-compare" "^1.4.0" + "optionator" "^0.9.1" + "progress" "^2.0.0" + "regexpp" "^3.1.0" + "semver" "^7.2.1" + "strip-ansi" "^6.0.0" + "strip-json-comments" "^3.1.0" + "table" "^6.0.9" + "text-table" "^0.2.0" + "v8-compile-cache" "^2.0.3" + +"espree@^7.3.0", "espree@^7.3.1": + "integrity" "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==" + "resolved" "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" + "version" "7.3.1" + dependencies: + "acorn" "^7.4.0" + "acorn-jsx" "^5.3.1" + "eslint-visitor-keys" "^1.3.0" + +"esprima@^4.0.0": + "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + "version" "4.0.1" + +"esquery@^1.4.0": + "integrity" "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==" + "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "estraverse" "^5.1.0" + +"esrecurse@^4.3.0": + "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==" + "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "estraverse" "^5.2.0" + +"estraverse@^4.1.1": + "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" + "version" "4.3.0" + +"estraverse@^5.1.0", "estraverse@^5.2.0": + "integrity" "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" + "version" "5.2.0" + +"esutils@^2.0.2": + "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + "version" "2.0.3" + +"events@^3.3.0": + "integrity" "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + "resolved" "https://registry.npmjs.org/events/-/events-3.3.0.tgz" + "version" "3.3.0" + +"fast-deep-equal@^3.1.1", "fast-deep-equal@^3.1.3": + "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + "version" "3.1.3" + +"fast-json-stable-stringify@^2.0.0": + "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + "version" "2.1.0" + +"fast-levenshtein@^2.0.6": + "integrity" "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + "version" "2.0.6" + +"file-entry-cache@^6.0.1": + "integrity" "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==" + "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" + "version" "6.0.1" + dependencies: + "flat-cache" "^3.0.4" + +"find-up@^2.0.0", "find-up@^2.1.0": + "integrity" "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "locate-path" "^2.0.0" + +"find-up@^3.0.0": + "integrity" "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "locate-path" "^3.0.0" + +"find-up@^5.0.0": + "integrity" "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "locate-path" "^6.0.0" + "path-exists" "^4.0.0" + +"flat-cache@^3.0.4": + "integrity" "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==" + "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "flatted" "^3.1.0" + "rimraf" "^3.0.2" + +"flatted@^3.1.0": + "integrity" "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==" + "resolved" "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz" + "version" "3.2.2" + +"foreground-child@^2.0.0": + "integrity" "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==" + "resolved" "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "cross-spawn" "^7.0.0" + "signal-exit" "^3.0.2" + +"fs.realpath@^1.0.0": + "integrity" "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + "version" "1.0.0" + +"function-bind@^1.1.1": + "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + "version" "1.1.1" + +"functional-red-black-tree@^1.0.1": + "integrity" "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + "resolved" "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" + "version" "1.0.1" + +"get-caller-file@^2.0.5": + "integrity" "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" + "version" "2.0.5" + +"get-intrinsic@^1.0.2", "get-intrinsic@^1.1.0", "get-intrinsic@^1.1.1": + "integrity" "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==" + "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "function-bind" "^1.1.1" + "has" "^1.0.3" + "has-symbols" "^1.0.1" + +"get-stdin@^8.0.0": + "integrity" "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" + "resolved" "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" + "version" "8.0.0" + +"glob-parent@^5.1.2": + "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==" + "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + "version" "5.1.2" + dependencies: + "is-glob" "^4.0.1" + +"glob@^7.1.3", "glob@^7.1.4": + "integrity" "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==" + "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" + "version" "7.1.7" + dependencies: + "fs.realpath" "^1.0.0" + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "^3.0.4" + "once" "^1.3.0" + "path-is-absolute" "^1.0.0" + +"globals@^13.6.0", "globals@^13.9.0": + "integrity" "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==" + "resolved" "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz" + "version" "13.10.0" + dependencies: + "type-fest" "^0.20.2" + +"graceful-fs@^4.1.15", "graceful-fs@^4.1.2": + "integrity" "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" + "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" + "version" "4.2.8" + +"has-bigints@^1.0.1": + "integrity" "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" + "resolved" "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" + "version" "1.0.1" + +"has-flag@^3.0.0": + "integrity" "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + "version" "3.0.0" + +"has-flag@^4.0.0": + "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" + "version" "4.0.0" + +"has-symbols@^1.0.1", "has-symbols@^1.0.2": + "integrity" "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" + "version" "1.0.2" + +"has-tostringtag@^1.0.0": + "integrity" "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==" + "resolved" "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "has-symbols" "^1.0.2" + +"has@^1.0.3": + "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" + "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "function-bind" "^1.1.1" + +"hosted-git-info@^2.1.4": + "integrity" "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" + "version" "2.8.9" + +"html-escaper@^2.0.0": + "integrity" "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + "resolved" "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" + "version" "2.0.2" + +"ignore@^4.0.6": + "integrity" "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" + "version" "4.0.6" + +"ignore@^5.1.1": + "integrity" "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" + "version" "5.1.8" + +"import-fresh@^3.0.0", "import-fresh@^3.2.1": + "integrity" "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==" + "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + "version" "3.3.0" + dependencies: + "parent-module" "^1.0.0" + "resolve-from" "^4.0.0" + +"imurmurhash@^0.1.4": + "integrity" "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + "version" "0.1.4" + +"inflight@^1.0.4": + "integrity" "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" + "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "once" "^1.3.0" + "wrappy" "1" + +"inherits@2": + "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + "version" "2.0.4" + +"internal-slot@^1.0.3": + "integrity" "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==" + "resolved" "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "get-intrinsic" "^1.1.0" + "has" "^1.0.3" + "side-channel" "^1.0.4" + +"is-arrayish@^0.2.1": + "integrity" "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + "version" "0.2.1" + +"is-bigint@^1.0.1": + "integrity" "sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg==" + "resolved" "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.3.tgz" + "version" "1.0.3" + +"is-boolean-object@^1.1.0": + "integrity" "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==" + "resolved" "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-callable@^1.1.4", "is-callable@^1.2.3": + "integrity" "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==" + "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" + "version" "1.2.4" + +"is-core-module@^2.2.0", "is-core-module@^2.4.0": + "integrity" "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==" + "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz" + "version" "2.5.0" + dependencies: + "has" "^1.0.3" + +"is-date-object@^1.0.1": + "integrity" "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==" + "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-extglob@^2.1.1": + "integrity" "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + "version" "2.1.1" + +"is-fullwidth-code-point@^3.0.0": + "integrity" "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + "version" "3.0.0" + +"is-glob@^4.0.0", "is-glob@^4.0.1": + "integrity" "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==" + "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "is-extglob" "^2.1.1" + +"is-negative-zero@^2.0.1": + "integrity" "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" + "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" + "version" "2.0.1" + +"is-number-object@^1.0.4": + "integrity" "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==" + "resolved" "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-regex@^1.1.3": + "integrity" "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==" + "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-string@^1.0.5", "is-string@^1.0.6": + "integrity" "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==" + "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" + "version" "1.0.7" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-symbol@^1.0.2", "is-symbol@^1.0.3": + "integrity" "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==" + "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "has-symbols" "^1.0.2" + +"isexe@^2.0.0": + "integrity" "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + "version" "2.0.0" + +"istanbul-lib-coverage@^3.0.0": + "integrity" "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" + "resolved" "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" + "version" "3.0.0" + +"istanbul-lib-report@^3.0.0": + "integrity" "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==" + "resolved" "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "istanbul-lib-coverage" "^3.0.0" + "make-dir" "^3.0.0" + "supports-color" "^7.1.0" + +"istanbul-reports@^3.0.2": + "integrity" "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==" + "resolved" "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "html-escaper" "^2.0.0" + "istanbul-lib-report" "^3.0.0" + +"js-tokens@^3.0.0 || ^4.0.0", "js-tokens@^4.0.0": + "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + "version" "4.0.0" + +"js-yaml@^3.13.1": + "integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==" + "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" + "version" "3.14.1" + dependencies: + "argparse" "^1.0.7" + "esprima" "^4.0.0" + +"json-parse-better-errors@^1.0.1": + "integrity" "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + "resolved" "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" + "version" "1.0.2" + +"json-schema-traverse@^0.4.1": + "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + "version" "0.4.1" + +"json-schema-traverse@^1.0.0": + "integrity" "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" + "version" "1.0.0" + +"json-stable-stringify-without-jsonify@^1.0.1": + "integrity" "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + "resolved" "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" + "version" "1.0.1" + +"json5@^2.2.0": + "integrity" "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==" + "resolved" "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" + "version" "2.2.0" + dependencies: + "minimist" "^1.2.5" + +"jsx-ast-utils@^2.4.1 || ^3.0.0": + "integrity" "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==" + "resolved" "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "array-includes" "^3.1.2" + "object.assign" "^4.1.2" + +"levn@^0.4.1": + "integrity" "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==" + "resolved" "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" + "version" "0.4.1" + dependencies: + "prelude-ls" "^1.2.1" + "type-check" "~0.4.0" + +"load-json-file@^4.0.0": + "integrity" "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=" + "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "graceful-fs" "^4.1.2" + "parse-json" "^4.0.0" + "pify" "^3.0.0" + "strip-bom" "^3.0.0" + +"load-json-file@^5.2.0": + "integrity" "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==" + "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz" + "version" "5.3.0" + dependencies: + "graceful-fs" "^4.1.15" + "parse-json" "^4.0.0" + "pify" "^4.0.1" + "strip-bom" "^3.0.0" + "type-fest" "^0.3.0" + +"locate-path@^2.0.0": + "integrity" "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "p-locate" "^2.0.0" + "path-exists" "^3.0.0" + +"locate-path@^3.0.0": + "integrity" "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "p-locate" "^3.0.0" + "path-exists" "^3.0.0" + +"locate-path@^6.0.0": + "integrity" "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "p-locate" "^5.0.0" + +"lockbase@^1.1.0": + "integrity" "sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw==" + "resolved" "https://registry.npmjs.org/lockbase/-/lockbase-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "uuid" "^8.3.2" + +"lodash.clonedeep@^4.5.0": + "integrity" "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + "resolved" "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" + "version" "4.5.0" + +"lodash.merge@^4.6.2": + "integrity" "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + "resolved" "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" + "version" "4.6.2" + +"lodash.truncate@^4.4.2": + "integrity" "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" + "resolved" "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" + "version" "4.4.2" + +"logslot@^2.1.0": + "integrity" "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==" + "resolved" "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "chalk" "^4.1.1" + +"loose-envify@^1.4.0": + "integrity" "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==" + "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "js-tokens" "^3.0.0 || ^4.0.0" + +"lru-cache@^6.0.0": + "integrity" "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "yallist" "^4.0.0" + +"make-dir@^3.0.0": + "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" + "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "semver" "^6.0.0" + +"minimatch@^3.0.4": + "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "brace-expansion" "^1.1.7" + +"minimist@^1.2.0", "minimist@^1.2.5": + "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" + "version" "1.2.5" + +"mql-to-jql@^1.4.0": + "integrity" "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" + "resolved" "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz" + "version" "1.4.0" + +"ms@^2.1.1": + "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + "version" "2.1.3" + +"ms@2.0.0": + "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" + "version" "2.0.0" + +"ms@2.1.2": + "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + "version" "2.1.2" + +"natural-compare@^1.4.0": + "integrity" "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" + "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + "version" "1.4.0" + +"node-ejdb-lite@^3.4.4": + "integrity" "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==" + "resolved" "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz" + "version" "3.4.4" + dependencies: + "semver" "^7.3.5" + +"normalize-package-data@^2.3.2": + "integrity" "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==" + "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + "version" "2.5.0" + dependencies: + "hosted-git-info" "^2.1.4" + "resolve" "^1.10.0" + "semver" "2 || 3 || 4 || 5" + "validate-npm-package-license" "^3.0.1" + +"object-assign@^4.1.1": + "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "version" "4.1.1" + +"object-inspect@^1.11.0", "object-inspect@^1.9.0": + "integrity" "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" + "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz" + "version" "1.11.0" + +"object-keys@^1.0.12", "object-keys@^1.1.1": + "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" + "version" "1.1.1" + +"object.assign@^4.1.2": + "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" + "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "call-bind" "^1.0.0" + "define-properties" "^1.1.3" + "has-symbols" "^1.0.1" + "object-keys" "^1.1.1" + +"object.entries@^1.1.2": + "integrity" "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==" + "resolved" "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.2" + +"object.fromentries@^2.0.2": + "integrity" "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==" + "resolved" "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz" + "version" "2.0.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.2" + "has" "^1.0.3" + +"object.values@^1.1.1", "object.values@^1.1.3": + "integrity" "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==" + "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.2" + +"once@^1.3.0": + "integrity" "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" + "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "wrappy" "1" + +"optionator@^0.9.1": + "integrity" "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==" + "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" + "version" "0.9.1" + dependencies: + "deep-is" "^0.1.3" + "fast-levenshtein" "^2.0.6" + "levn" "^0.4.1" + "prelude-ls" "^1.2.1" + "type-check" "^0.4.0" + "word-wrap" "^1.2.3" + +"p-limit@^1.1.0": + "integrity" "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" + "version" "1.3.0" + dependencies: + "p-try" "^1.0.0" + +"p-limit@^2.0.0": + "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "p-try" "^2.0.0" + +"p-limit@^3.0.2": + "integrity" "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "yocto-queue" "^0.1.0" + +"p-locate@^2.0.0": + "integrity" "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "p-limit" "^1.1.0" + +"p-locate@^3.0.0": + "integrity" "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "p-limit" "^2.0.0" + +"p-locate@^5.0.0": + "integrity" "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "p-limit" "^3.0.2" + +"p-try@^1.0.0": + "integrity" "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + "resolved" "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" + "version" "1.0.0" + +"p-try@^2.0.0": + "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" + "version" "2.2.0" + +"parent-module@^1.0.0": + "integrity" "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==" + "resolved" "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "callsites" "^3.0.0" + +"parse-json@^4.0.0": + "integrity" "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=" + "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "error-ex" "^1.3.1" + "json-parse-better-errors" "^1.0.1" + +"path-exists@^3.0.0": + "integrity" "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" + "version" "3.0.0" + +"path-exists@^4.0.0": + "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" + "version" "4.0.0" + +"path-is-absolute@^1.0.0": + "integrity" "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "version" "1.0.1" + +"path-key@^3.1.0": + "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + "version" "3.1.1" + +"path-parse@^1.0.6": + "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" + "version" "1.0.7" + +"path-type@^3.0.0": + "integrity" "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==" + "resolved" "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "pify" "^3.0.0" + +"pify@^3.0.0": + "integrity" "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "resolved" "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" + "version" "3.0.0" + +"pify@^4.0.1": + "integrity" "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + "resolved" "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" + "version" "4.0.1" + +"pkg-conf@^3.1.0": + "integrity" "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==" + "resolved" "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "find-up" "^3.0.0" + "load-json-file" "^5.2.0" + +"pkg-dir@^2.0.0": + "integrity" "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=" + "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "find-up" "^2.1.0" + +"pkg-up@^2.0.0": + "integrity" "sha1-yBmscoBZpGHKscOImivjxJoATX8=" + "resolved" "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "find-up" "^2.1.0" + +"prelude-ls@^1.2.1": + "integrity" "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" + "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" + "version" "1.2.1" + +"progress@^2.0.0": + "integrity" "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + "resolved" "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" + "version" "2.0.3" + +"promise-limit@^2.7.0": + "integrity" "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" + "resolved" "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz" + "version" "2.7.0" + +"prop-types@^15.7.2": + "integrity" "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==" + "resolved" "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" + "version" "15.7.2" + dependencies: + "loose-envify" "^1.4.0" + "object-assign" "^4.1.1" + "react-is" "^16.8.1" + +"punycode@^2.1.0": + "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" + "version" "2.1.1" + +"react-is@^16.8.1": + "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + "version" "16.13.1" + +"read-pkg-up@^3.0.0": + "integrity" "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=" + "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "find-up" "^2.0.0" + "read-pkg" "^3.0.0" + +"read-pkg@^3.0.0": + "integrity" "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=" + "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "load-json-file" "^4.0.0" + "normalize-package-data" "^2.3.2" + "path-type" "^3.0.0" + +"regexp.prototype.flags@^1.3.1": + "integrity" "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==" + "resolved" "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"regexpp@^3.0.0", "regexpp@^3.1.0": + "integrity" "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" + "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" + "version" "3.2.0" + +"require-directory@^2.1.1": + "integrity" "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" + "version" "2.1.1" + +"require-from-string@^2.0.2": + "integrity" "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" + "resolved" "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" + "version" "2.0.2" + +"resolve-from@^4.0.0": + "integrity" "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + "version" "4.0.0" + +"resolve@^1.10.0", "resolve@^1.10.1", "resolve@^1.13.1", "resolve@^1.18.1", "resolve@^1.20.0": + "integrity" "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==" + "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" + "version" "1.20.0" + dependencies: + "is-core-module" "^2.2.0" + "path-parse" "^1.0.6" + +"rimraf@^3.0.0", "rimraf@^3.0.2": + "integrity" "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "glob" "^7.1.3" + +"safe-buffer@~5.1.1": + "integrity" "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" + "version" "5.1.2" + +"semistandard@^16.0.1": + "integrity" "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==" + "resolved" "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz" + "version" "16.0.1" + dependencies: + "eslint" "^7.27.0" + "eslint-config-semistandard" "16.0.0" + "eslint-config-standard" "16.0.3" + "eslint-config-standard-jsx" "10.0.0" + "eslint-plugin-import" "^2.22.1" + "eslint-plugin-node" "^11.1.0" + "eslint-plugin-promise" "^5.1.0" + "eslint-plugin-react" "~7.21.5" + "standard-engine" "^14.0.0" + +"semver@^6.0.0", "semver@^6.1.0": + "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + "version" "6.3.0" + +"semver@^7.2.1": + "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" + "version" "7.3.5" + dependencies: + "lru-cache" "^6.0.0" + +"semver@^7.3.5": + "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" + "version" "7.3.5" + dependencies: + "lru-cache" "^6.0.0" + +"semver@2 || 3 || 4 || 5": + "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" + "version" "5.7.1" + +"server-destroy@^1.0.1": + "integrity" "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + "resolved" "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" + "version" "1.0.1" + +"shebang-command@^2.0.0": + "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==" + "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "shebang-regex" "^3.0.0" + +"shebang-regex@^3.0.0": + "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + "version" "3.0.0" + +"side-channel@^1.0.4": + "integrity" "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==" + "resolved" "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.0" + "get-intrinsic" "^1.0.2" + "object-inspect" "^1.9.0" + +"signal-exit@^3.0.2": + "integrity" "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" + "version" "3.0.3" + +"slice-ansi@^4.0.0": + "integrity" "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==" + "resolved" "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "ansi-styles" "^4.0.0" + "astral-regex" "^2.0.0" + "is-fullwidth-code-point" "^3.0.0" + +"source-map@^0.7.3": + "integrity" "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" + "version" "0.7.3" + +"spdx-correct@^3.0.0": + "integrity" "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==" + "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" + "version" "3.1.1" + dependencies: + "spdx-expression-parse" "^3.0.0" + "spdx-license-ids" "^3.0.0" + +"spdx-exceptions@^2.1.0": + "integrity" "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "resolved" "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" + "version" "2.3.0" + +"spdx-expression-parse@^3.0.0": + "integrity" "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==" + "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "spdx-exceptions" "^2.1.0" + "spdx-license-ids" "^3.0.0" + +"spdx-license-ids@^3.0.0": + "integrity" "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==" + "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz" + "version" "3.0.9" + +"sprintf-js@~1.0.2": + "integrity" "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + "version" "1.0.3" + +"standard-engine@^14.0.0": + "integrity" "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==" + "resolved" "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz" + "version" "14.0.1" + dependencies: + "get-stdin" "^8.0.0" + "minimist" "^1.2.5" + "pkg-conf" "^3.1.0" + "xdg-basedir" "^4.0.0" + +"string-width@^4.1.0", "string-width@^4.2.0": + "integrity" "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" + "version" "4.2.2" + dependencies: + "emoji-regex" "^8.0.0" + "is-fullwidth-code-point" "^3.0.0" + "strip-ansi" "^6.0.0" + +"string.prototype.matchall@^4.0.2": + "integrity" "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==" + "resolved" "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz" + "version" "4.0.5" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.2" + "get-intrinsic" "^1.1.1" + "has-symbols" "^1.0.2" + "internal-slot" "^1.0.3" + "regexp.prototype.flags" "^1.3.1" + "side-channel" "^1.0.4" + +"string.prototype.trimend@^1.0.4": + "integrity" "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==" + "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"string.prototype.trimstart@^1.0.4": + "integrity" "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==" + "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"strip-ansi@^6.0.0": + "integrity" "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "ansi-regex" "^5.0.0" + +"strip-bom@^3.0.0": + "integrity" "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" + "version" "3.0.0" + +"strip-json-comments@^3.1.0", "strip-json-comments@^3.1.1": + "integrity" "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" + "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + "version" "3.1.1" + +"supports-color@^5.3.0": + "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + "version" "5.5.0" + dependencies: + "has-flag" "^3.0.0" + +"supports-color@^7.1.0": + "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" + "version" "7.2.0" + dependencies: + "has-flag" "^4.0.0" + +"table@^6.0.9": + "integrity" "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==" + "resolved" "https://registry.npmjs.org/table/-/table-6.7.1.tgz" + "version" "6.7.1" + dependencies: + "ajv" "^8.0.1" + "lodash.clonedeep" "^4.5.0" + "lodash.truncate" "^4.4.2" + "slice-ansi" "^4.0.0" + "string-width" "^4.2.0" + "strip-ansi" "^6.0.0" + +"tcpocket@^7.3.1": + "integrity" "sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q==" + "resolved" "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz" + "version" "7.3.1" + +"test-exclude@^6.0.0": + "integrity" "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==" + "resolved" "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "@istanbuljs/schema" "^0.1.2" + "glob" "^7.1.4" + "minimatch" "^3.0.4" + +"text-table@^0.2.0": + "integrity" "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + "version" "0.2.0" + +"tsconfig-paths@^3.9.0": + "integrity" "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==" + "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" + "version" "3.10.1" + dependencies: + "json5" "^2.2.0" + "minimist" "^1.2.0" + "strip-bom" "^3.0.0" + +"type-check@^0.4.0", "type-check@~0.4.0": + "integrity" "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==" + "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + "version" "0.4.0" + dependencies: + "prelude-ls" "^1.2.1" + +"type-fest@^0.20.2": + "integrity" "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" + "version" "0.20.2" + +"type-fest@^0.3.0": + "integrity" "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" + "version" "0.3.1" + +"unbox-primitive@^1.0.1": + "integrity" "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==" + "resolved" "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "function-bind" "^1.1.1" + "has-bigints" "^1.0.1" + "has-symbols" "^1.0.2" + "which-boxed-primitive" "^1.0.2" + +"uri-js@^4.2.2": + "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==" + "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + "version" "4.4.1" + dependencies: + "punycode" "^2.1.0" + +"uuid@^8.3.2": + "integrity" "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + "resolved" "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" + "version" "8.3.2" + +"v8-compile-cache@^2.0.3": + "integrity" "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" + "resolved" "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" + "version" "2.3.0" + +"v8-to-istanbul@^8.0.0": + "integrity" "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==" + "resolved" "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz" + "version" "8.0.0" + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + "convert-source-map" "^1.6.0" + "source-map" "^0.7.3" + +"validate-npm-package-license@^3.0.1": + "integrity" "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==" + "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "spdx-correct" "^3.0.0" + "spdx-expression-parse" "^3.0.0" + +"which-boxed-primitive@^1.0.2": + "integrity" "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==" + "resolved" "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "is-bigint" "^1.0.1" + "is-boolean-object" "^1.1.0" + "is-number-object" "^1.0.4" + "is-string" "^1.0.5" + "is-symbol" "^1.0.3" + +"which@^2.0.1": + "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==" + "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "isexe" "^2.0.0" + +"word-wrap@^1.2.3": + "integrity" "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + "resolved" "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" + "version" "1.2.3" + +"wrap-ansi@^7.0.0": + "integrity" "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + "version" "7.0.0" + dependencies: + "ansi-styles" "^4.0.0" + "string-width" "^4.1.0" + "strip-ansi" "^6.0.0" + +"wrappy@1": + "integrity" "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "version" "1.0.2" + +"xdg-basedir@^4.0.0": + "integrity" "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" + "resolved" "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" + "version" "4.0.0" + +"y18n@^5.0.5": + "integrity" "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + "resolved" "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" + "version" "5.0.8" + +"yallist@^4.0.0": + "integrity" "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + "version" "4.0.0" + +"yargs-parser@^20.2.2", "yargs-parser@^20.2.7": + "integrity" "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" + "version" "20.2.9" + +"yargs@^16.2.0": + "integrity" "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==" + "resolved" "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" + "version" "16.2.0" + dependencies: + "cliui" "^7.0.2" + "escalade" "^3.1.1" + "get-caller-file" "^2.0.5" + "require-directory" "^2.1.1" + "string-width" "^4.2.0" + "y18n" "^5.0.5" + "yargs-parser" "^20.2.2" + +"yocto-queue@^0.1.0": + "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" + "version" "0.1.0" From 0b5788cd03f200c4ff4811797456d853050aa99e Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Wed, 11 Aug 2021 23:32:12 +1000 Subject: [PATCH 22/73] Update lock files --- package-lock.json | 5315 --------------------------------------------- yarn.lock | 3555 +++++++++++++++--------------- 2 files changed, 1774 insertions(+), 7096 deletions(-) delete mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 066b0e3..0000000 --- a/package-lock.json +++ /dev/null @@ -1,5315 +0,0 @@ -{ - "name": "canhazdb-server", - "version": "8.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "canhazdb-server", - "version": "8.0.0", - "license": "ISC", - "dependencies": { - "basictap": "^2.0.2", - "chalk": "^4.1.2", - "lockbase": "^1.1.0", - "logslot": "^2.1.0", - "minimist": "^1.2.5", - "mql-to-jql": "^1.4.0", - "node-ejdb-lite": "^3.4.4", - "server-destroy": "^1.0.1", - "tcpocket": "^7.3.1" - }, - "devDependencies": { - "c8": "^7.8.0", - "eslint": "^7.32.0", - "semistandard": "^16.0.1", - "uuid": "^8.3.2" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", - "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", - "dev": true - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/basictap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz", - "integrity": "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==", - "dependencies": { - "colorette": "^1.2.2", - "events": "^3.3.0", - "promise-limit": "^2.7.0" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/c8": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz", - "integrity": "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@istanbuljs/schema": "^0.1.2", - "find-up": "^5.0.0", - "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.2", - "rimraf": "^3.0.0", - "test-exclude": "^6.0.0", - "v8-to-istanbul": "^8.0.0", - "yargs": "^16.2.0", - "yargs-parser": "^20.2.7" - }, - "bin": { - "c8": "bin/c8.js" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/c8/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/c8/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "node_modules/define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "dependencies": { - "object-keys": "^1.0.12" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-abstract": { - "version": "1.18.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz", - "integrity": "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.2", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.3", - "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.3", - "is-string": "^1.0.6", - "object-inspect": "^1.11.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.9", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-semistandard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", - "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", - "dev": true, - "peerDependencies": { - "eslint": ">=7.12.1", - "eslint-config-standard": ">=16.0.3", - "eslint-plugin-import": ">=2.22.1", - "eslint-plugin-node": ">=11.1.0", - "eslint-plugin-promise": ">=4.2.1" - } - }, - "node_modules/eslint-config-standard": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", - "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": "^7.12.1", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^4.2.1 || ^5.0.0" - } - }, - "node_modules/eslint-config-standard-jsx": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", - "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": "^7.12.1", - "eslint-plugin-react": "^7.21.5" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", - "dev": true, - "dependencies": { - "debug": "^2.6.9", - "resolve": "^1.13.1" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-module-utils": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", - "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "pkg-dir": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-module-utils/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.23.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz", - "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.1", - "find-up": "^2.0.0", - "has": "^1.0.3", - "is-core-module": "^2.4.0", - "minimatch": "^3.0.4", - "object.values": "^1.1.3", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.9.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", - "dev": true, - "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "peerDependencies": { - "eslint": ">=5.16.0" - } - }, - "node_modules/eslint-plugin-node/node_modules/ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/eslint-plugin-promise": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", - "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", - "dev": true, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "peerDependencies": { - "eslint": "^7.0.0" - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", - "doctrine": "^2.1.0", - "has": "^1.0.3", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint/node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "dependencies": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true - }, - "node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/globals": { - "version": "13.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", - "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.3.tgz", - "integrity": "sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", - "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number-object": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", - "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.2", - "object.assign": "^4.1.2" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/load-json-file/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/load-json-file/node_modules/type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/lockbase": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.1.0.tgz", - "integrity": "sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw==", - "dependencies": { - "uuid": "^8.3.2" - } - }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, - "node_modules/logslot": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", - "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", - "dependencies": { - "chalk": "^4.1.1" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "node_modules/mql-to-jql": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", - "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "node_modules/node-ejdb-lite": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", - "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", - "cpu": [ - "x64", - "x32", - "arm", - "arm64" - ], - "hasInstallScript": true, - "os": [ - "darwin", - "linux", - "alpine", - "!win32" - ], - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": ">=10.0.0", - "npm": ">=6.0.0" - } - }, - "node_modules/node-ejdb-lite/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", - "dev": true, - "dependencies": { - "find-up": "^3.0.0", - "load-json-file": "^5.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-conf/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/promise-limit": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", - "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" - }, - "node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dev": true, - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg/node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/semistandard": { - "version": "16.0.1", - "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", - "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "eslint": "^7.27.0", - "eslint-config-semistandard": "16.0.0", - "eslint-config-standard": "16.0.3", - "eslint-config-standard-jsx": "10.0.0", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^5.1.0", - "eslint-plugin-react": "~7.21.5", - "standard-engine": "^14.0.0" - }, - "bin": { - "semistandard": "bin/cmd.js" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/server-destroy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", - "dev": true - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "node_modules/standard-engine": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", - "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "get-stdin": "^8.0.0", - "minimist": "^1.2.5", - "pkg-conf": "^3.1.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8.10" - } - }, - "node_modules/string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2", - "get-intrinsic": "^1.1.1", - "has-symbols": "^1.0.2", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.3.1", - "side-channel": "^1.0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", - "dev": true, - "dependencies": { - "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/table/node_modules/ajv": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", - "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/tcpocket": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz", - "integrity": "sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q==" - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "node_modules/tsconfig-paths": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz", - "integrity": "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==", - "dev": true, - "dependencies": { - "json5": "^2.2.0", - "minimist": "^1.2.0", - "strip-bom": "^3.0.0" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, - "node_modules/v8-to-istanbul": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", - "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", - "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", - "dev": true - }, - "@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - } - }, - "@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - } - }, - "@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", - "dev": true - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" - } - }, - "array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - } - }, - "array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" - } - }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "basictap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz", - "integrity": "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==", - "requires": { - "colorette": "^1.2.2", - "events": "^3.3.0", - "promise-limit": "^2.7.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "c8": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz", - "integrity": "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@istanbuljs/schema": "^0.1.2", - "find-up": "^5.0.0", - "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.2", - "rimraf": "^3.0.0", - "test-exclude": "^6.0.0", - "v8-to-istanbul": "^8.0.0", - "yargs": "^16.2.0", - "yargs-parser": "^20.2.7" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - } - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.18.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz", - "integrity": "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.2", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.3", - "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.3", - "is-string": "^1.0.6", - "object-inspect": "^1.11.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "dev": true, - "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.9", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "eslint-config-semistandard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", - "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", - "dev": true, - "requires": {} - }, - "eslint-config-standard": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", - "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", - "dev": true, - "requires": {} - }, - "eslint-config-standard-jsx": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", - "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", - "dev": true, - "requires": {} - }, - "eslint-import-resolver-node": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", - "dev": true, - "requires": { - "debug": "^2.6.9", - "resolve": "^1.13.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "eslint-module-utils": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz", - "integrity": "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==", - "dev": true, - "requires": { - "debug": "^3.2.7", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - } - } - }, - "eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - } - }, - "eslint-plugin-import": { - "version": "2.23.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz", - "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", - "dev": true, - "requires": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.1", - "find-up": "^2.0.0", - "has": "^1.0.3", - "is-core-module": "^2.4.0", - "minimatch": "^3.0.4", - "object.values": "^1.1.3", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.9.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", - "dev": true, - "requires": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "dependencies": { - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true - } - } - }, - "eslint-plugin-promise": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", - "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", - "dev": true, - "requires": {} - }, - "eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", - "dev": true, - "requires": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", - "doctrine": "^2.1.0", - "has": "^1.0.3", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" - } - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } - } - }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - }, - "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true - }, - "foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, - "get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", - "dev": true - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "13.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", - "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "graceful-fs": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-bigint": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.3.tgz", - "integrity": "sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg==", - "dev": true - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true - }, - "is-core-module": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", - "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", - "dev": true - }, - "is-number-object": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", - "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - } - }, - "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "jsx-ast-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", - "dev": true, - "requires": { - "array-includes": "^3.1.2", - "object.assign": "^4.1.2" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true - } - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lockbase": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.1.0.tgz", - "integrity": "sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw==", - "requires": { - "uuid": "^8.3.2" - } - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, - "logslot": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", - "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", - "requires": { - "chalk": "^4.1.1" - } - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "mql-to-jql": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", - "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "node-ejdb-lite": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", - "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", - "requires": { - "semver": "^7.3.5" - }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - } - }, - "object.entries": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" - } - }, - "object.fromentries": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has": "^1.0.3" - } - }, - "object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "pkg-conf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "load-json-file": "^5.2.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - } - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - }, - "pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "promise-limit": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", - "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" - }, - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dev": true, - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - } - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "semistandard": { - "version": "16.0.1", - "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", - "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", - "dev": true, - "requires": { - "eslint": "^7.27.0", - "eslint-config-semistandard": "16.0.0", - "eslint-config-standard": "16.0.3", - "eslint-config-standard-jsx": "10.0.0", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^5.1.0", - "eslint-plugin-react": "~7.21.5", - "standard-engine": "^14.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "server-destroy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "standard-engine": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", - "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", - "dev": true, - "requires": { - "get-stdin": "^8.0.0", - "minimist": "^1.2.5", - "pkg-conf": "^3.1.0", - "xdg-basedir": "^4.0.0" - } - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "string.prototype.matchall": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2", - "get-intrinsic": "^1.1.1", - "has-symbols": "^1.0.2", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.3.1", - "side-channel": "^1.0.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "requires": { - "has-flag": "^4.0.0" - } - }, - "table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", - "dev": true, - "requires": { - "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", - "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - } - } - }, - "tcpocket": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz", - "integrity": "sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q==" - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "tsconfig-paths": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz", - "integrity": "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==", - "dev": true, - "requires": { - "json5": "^2.2.0", - "minimist": "^1.2.0", - "strip-bom": "^3.0.0" - } - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - }, - "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", - "which-boxed-primitive": "^1.0.2" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, - "v8-to-istanbul": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", - "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } - } -} diff --git a/yarn.lock b/yarn.lock index c79078d..d3ddd3c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,1828 +3,1821 @@ "@babel/code-frame@7.12.11": - "integrity" "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==" - "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" - "version" "7.12.11" + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== dependencies: "@babel/highlight" "^7.10.4" "@babel/helper-validator-identifier@^7.14.5": - "integrity" "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" - "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" - "version" "7.14.9" + version "7.14.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" + integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== "@babel/highlight@^7.10.4": - "integrity" "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==" - "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" - "version" "7.14.5" + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" + integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== dependencies: "@babel/helper-validator-identifier" "^7.14.5" - "chalk" "^2.0.0" - "js-tokens" "^4.0.0" + chalk "^2.0.0" + js-tokens "^4.0.0" "@bcoe/v8-coverage@^0.2.3": - "integrity" "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" - "resolved" "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" - "version" "0.2.3" + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@eslint/eslintrc@^0.4.3": - "integrity" "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==" - "resolved" "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" - "version" "0.4.3" - dependencies: - "ajv" "^6.12.4" - "debug" "^4.1.1" - "espree" "^7.3.0" - "globals" "^13.9.0" - "ignore" "^4.0.6" - "import-fresh" "^3.2.1" - "js-yaml" "^3.13.1" - "minimatch" "^3.0.4" - "strip-json-comments" "^3.1.1" + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^13.9.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" "@humanwhocodes/config-array@^0.5.0": - "integrity" "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==" - "resolved" "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" - "version" "0.5.0" + version "0.5.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== dependencies: "@humanwhocodes/object-schema" "^1.2.0" - "debug" "^4.1.1" - "minimatch" "^3.0.4" + debug "^4.1.1" + minimatch "^3.0.4" "@humanwhocodes/object-schema@^1.2.0": - "integrity" "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==" - "resolved" "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz" - "version" "1.2.0" + version "1.2.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" + integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== "@istanbuljs/schema@^0.1.2": - "integrity" "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" - "resolved" "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" - "version" "0.1.3" + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@types/istanbul-lib-coverage@^2.0.1": - "integrity" "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" - "resolved" "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" - "version" "2.0.3" - -"acorn-jsx@^5.3.1": - "integrity" "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" - "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" - "version" "5.3.2" - -"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", "acorn@^7.4.0": - "integrity" "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" - "resolved" "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" - "version" "7.4.1" - -"ajv@^6.10.0", "ajv@^6.12.4": - "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" - "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - "version" "6.12.6" - dependencies: - "fast-deep-equal" "^3.1.1" - "fast-json-stable-stringify" "^2.0.0" - "json-schema-traverse" "^0.4.1" - "uri-js" "^4.2.2" - -"ajv@^8.0.1": - "integrity" "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==" - "resolved" "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz" - "version" "8.6.2" - dependencies: - "fast-deep-equal" "^3.1.1" - "json-schema-traverse" "^1.0.0" - "require-from-string" "^2.0.2" - "uri-js" "^4.2.2" - -"ansi-colors@^4.1.1": - "integrity" "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" - "resolved" "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" - "version" "4.1.1" - -"ansi-regex@^5.0.0": - "integrity" "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" - "version" "5.0.0" - -"ansi-styles@^3.2.1": - "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" - "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" - "version" "3.2.1" - dependencies: - "color-convert" "^1.9.0" - -"ansi-styles@^4.0.0", "ansi-styles@^4.1.0": - "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" - "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" - "version" "4.3.0" - dependencies: - "color-convert" "^2.0.1" - -"argparse@^1.0.7": - "integrity" "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==" - "resolved" "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" - "version" "1.0.10" - dependencies: - "sprintf-js" "~1.0.2" - -"array-includes@^3.1.1", "array-includes@^3.1.2", "array-includes@^3.1.3": - "integrity" "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==" - "resolved" "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" - "version" "3.1.3" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.2" - "get-intrinsic" "^1.1.1" - "is-string" "^1.0.5" - -"array.prototype.flat@^1.2.4": - "integrity" "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==" - "resolved" "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" - "version" "1.2.4" - dependencies: - "call-bind" "^1.0.0" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.1" - -"array.prototype.flatmap@^1.2.3": - "integrity" "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==" - "resolved" "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" - "version" "1.2.4" - dependencies: - "call-bind" "^1.0.0" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.1" - "function-bind" "^1.1.1" - -"astral-regex@^2.0.0": - "integrity" "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" - "resolved" "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" - "version" "2.0.0" - -"balanced-match@^1.0.0": - "integrity" "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" - "version" "1.0.2" - -"basictap@^2.0.2": - "integrity" "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==" - "resolved" "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz" - "version" "2.0.2" - dependencies: - "colorette" "^1.2.2" - "events" "^3.3.0" - "promise-limit" "^2.7.0" - -"brace-expansion@^1.1.7": - "integrity" "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==" - "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - "version" "1.1.11" - dependencies: - "balanced-match" "^1.0.0" - "concat-map" "0.0.1" - -"c8@^7.8.0": - "integrity" "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==" - "resolved" "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz" - "version" "7.8.0" + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +ajv@^6.10.0, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.6.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" + integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +array-includes@^3.1.1, array-includes@^3.1.2, array-includes@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" + integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + get-intrinsic "^1.1.1" + is-string "^1.0.5" + +array.prototype.flat@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" + integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + +array.prototype.flatmap@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz#94cfd47cc1556ec0747d97f7c7738c58122004c9" + integrity sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + function-bind "^1.1.1" + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +basictap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/basictap/-/basictap-2.0.2.tgz#ca96339afa11d2b0905fb26191479940eb7cd089" + integrity sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q== + dependencies: + colorette "^1.2.2" + events "^3.3.0" + promise-limit "^2.7.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +c8@^7.8.0: + version "7.8.0" + resolved "https://registry.yarnpkg.com/c8/-/c8-7.8.0.tgz#8fcfe848587d9d5796f22e9b0546a387a66d1b3b" + integrity sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA== dependencies: "@bcoe/v8-coverage" "^0.2.3" "@istanbuljs/schema" "^0.1.2" - "find-up" "^5.0.0" - "foreground-child" "^2.0.0" - "istanbul-lib-coverage" "^3.0.0" - "istanbul-lib-report" "^3.0.0" - "istanbul-reports" "^3.0.2" - "rimraf" "^3.0.0" - "test-exclude" "^6.0.0" - "v8-to-istanbul" "^8.0.0" - "yargs" "^16.2.0" - "yargs-parser" "^20.2.7" - -"call-bind@^1.0.0", "call-bind@^1.0.2": - "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" - "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" - "version" "1.0.2" - dependencies: - "function-bind" "^1.1.1" - "get-intrinsic" "^1.0.2" - -"callsites@^3.0.0": - "integrity" "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" - "resolved" "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" - "version" "3.1.0" - -"chalk@^2.0.0": - "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" - "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" - "version" "2.4.2" - dependencies: - "ansi-styles" "^3.2.1" - "escape-string-regexp" "^1.0.5" - "supports-color" "^5.3.0" - -"chalk@^4.0.0", "chalk@^4.1.1", "chalk@^4.1.2": - "integrity" "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==" - "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" - "version" "4.1.2" - dependencies: - "ansi-styles" "^4.1.0" - "supports-color" "^7.1.0" - -"cliui@^7.0.2": - "integrity" "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==" - "resolved" "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" - "version" "7.0.4" - dependencies: - "string-width" "^4.2.0" - "strip-ansi" "^6.0.0" - "wrap-ansi" "^7.0.0" - -"color-convert@^1.9.0": - "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" - "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" - "version" "1.9.3" - dependencies: - "color-name" "1.1.3" - -"color-convert@^2.0.1": - "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" - "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" - "version" "2.0.1" - dependencies: - "color-name" "~1.1.4" - -"color-name@~1.1.4": - "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - "version" "1.1.4" - -"color-name@1.1.3": - "integrity" "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - "version" "1.1.3" - -"colorette@^1.2.2": - "integrity" "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" - "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz" - "version" "1.2.2" - -"concat-map@0.0.1": - "integrity" "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - "version" "0.0.1" - -"convert-source-map@^1.6.0": - "integrity" "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==" - "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" - "version" "1.8.0" - dependencies: - "safe-buffer" "~5.1.1" - -"cross-spawn@^7.0.0", "cross-spawn@^7.0.2": - "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==" - "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" - "version" "7.0.3" - dependencies: - "path-key" "^3.1.0" - "shebang-command" "^2.0.0" - "which" "^2.0.1" - -"debug@^2.6.9": - "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" - "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - "version" "2.6.9" - dependencies: - "ms" "2.0.0" - -"debug@^3.2.7": - "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==" - "resolved" "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - "version" "3.2.7" - dependencies: - "ms" "^2.1.1" - -"debug@^4.0.1", "debug@^4.1.1": - "integrity" "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==" - "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" - "version" "4.3.2" - dependencies: - "ms" "2.1.2" - -"deep-is@^0.1.3": - "integrity" "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" - "version" "0.1.3" - -"define-properties@^1.1.3": - "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" - "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" - "version" "1.1.3" - dependencies: - "object-keys" "^1.0.12" - -"doctrine@^2.1.0": - "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" - "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "esutils" "^2.0.2" - -"doctrine@^3.0.0": - "integrity" "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==" - "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "esutils" "^2.0.2" - -"emoji-regex@^8.0.0": - "integrity" "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" - "version" "8.0.0" - -"enquirer@^2.3.5": - "integrity" "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==" - "resolved" "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" - "version" "2.3.6" - dependencies: - "ansi-colors" "^4.1.1" - -"error-ex@^1.3.1": - "integrity" "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==" - "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" - "version" "1.3.2" - dependencies: - "is-arrayish" "^0.2.1" - -"es-abstract@^1.18.0-next.1", "es-abstract@^1.18.0-next.2", "es-abstract@^1.18.2": - "integrity" "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==" - "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz" - "version" "1.18.5" - dependencies: - "call-bind" "^1.0.2" - "es-to-primitive" "^1.2.1" - "function-bind" "^1.1.1" - "get-intrinsic" "^1.1.1" - "has" "^1.0.3" - "has-symbols" "^1.0.2" - "internal-slot" "^1.0.3" - "is-callable" "^1.2.3" - "is-negative-zero" "^2.0.1" - "is-regex" "^1.1.3" - "is-string" "^1.0.6" - "object-inspect" "^1.11.0" - "object-keys" "^1.1.1" - "object.assign" "^4.1.2" - "string.prototype.trimend" "^1.0.4" - "string.prototype.trimstart" "^1.0.4" - "unbox-primitive" "^1.0.1" - -"es-to-primitive@^1.2.1": - "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" - "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" - "version" "1.2.1" - dependencies: - "is-callable" "^1.1.4" - "is-date-object" "^1.0.1" - "is-symbol" "^1.0.2" - -"escalade@^3.1.1": - "integrity" "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" - "version" "3.1.1" - -"escape-string-regexp@^1.0.5": - "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - "version" "1.0.5" - -"escape-string-regexp@^4.0.0": - "integrity" "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" - "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" - "version" "4.0.0" - -"eslint-config-semistandard@16.0.0": - "integrity" "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==" - "resolved" "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz" - "version" "16.0.0" - -"eslint-config-standard-jsx@10.0.0": - "integrity" "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==" - "resolved" "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz" - "version" "10.0.0" - -"eslint-config-standard@>=16.0.3", "eslint-config-standard@16.0.3": - "integrity" "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==" - "resolved" "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" - "version" "16.0.3" - -"eslint-import-resolver-node@^0.3.4": - "integrity" "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==" - "resolved" "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz" - "version" "0.3.4" - dependencies: - "debug" "^2.6.9" - "resolve" "^1.13.1" - -"eslint-module-utils@^2.6.1": - "integrity" "sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==" - "resolved" "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz" - "version" "2.6.1" - dependencies: - "debug" "^3.2.7" - "pkg-dir" "^2.0.0" - -"eslint-plugin-es@^3.0.0": - "integrity" "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==" - "resolved" "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz" - "version" "3.0.1" - dependencies: - "eslint-utils" "^2.0.0" - "regexpp" "^3.0.0" - -"eslint-plugin-import@^2.22.1", "eslint-plugin-import@>=2.22.1": - "integrity" "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==" - "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz" - "version" "2.23.4" - dependencies: - "array-includes" "^3.1.3" - "array.prototype.flat" "^1.2.4" - "debug" "^2.6.9" - "doctrine" "^2.1.0" - "eslint-import-resolver-node" "^0.3.4" - "eslint-module-utils" "^2.6.1" - "find-up" "^2.0.0" - "has" "^1.0.3" - "is-core-module" "^2.4.0" - "minimatch" "^3.0.4" - "object.values" "^1.1.3" - "pkg-up" "^2.0.0" - "read-pkg-up" "^3.0.0" - "resolve" "^1.20.0" - "tsconfig-paths" "^3.9.0" - -"eslint-plugin-node@^11.1.0", "eslint-plugin-node@>=11.1.0": - "integrity" "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==" - "resolved" "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz" - "version" "11.1.0" - dependencies: - "eslint-plugin-es" "^3.0.0" - "eslint-utils" "^2.0.0" - "ignore" "^5.1.1" - "minimatch" "^3.0.4" - "resolve" "^1.10.1" - "semver" "^6.1.0" - -"eslint-plugin-promise@^4.2.1 || ^5.0.0", "eslint-plugin-promise@^5.1.0", "eslint-plugin-promise@>=4.2.1": - "integrity" "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==" - "resolved" "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz" - "version" "5.1.0" - -"eslint-plugin-react@^7.21.5", "eslint-plugin-react@~7.21.5": - "integrity" "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==" - "resolved" "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz" - "version" "7.21.5" - dependencies: - "array-includes" "^3.1.1" - "array.prototype.flatmap" "^1.2.3" - "doctrine" "^2.1.0" - "has" "^1.0.3" - "jsx-ast-utils" "^2.4.1 || ^3.0.0" - "object.entries" "^1.1.2" - "object.fromentries" "^2.0.2" - "object.values" "^1.1.1" - "prop-types" "^15.7.2" - "resolve" "^1.18.1" - "string.prototype.matchall" "^4.0.2" - -"eslint-scope@^5.1.1": - "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==" - "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" - "version" "5.1.1" - dependencies: - "esrecurse" "^4.3.0" - "estraverse" "^4.1.1" - -"eslint-utils@^2.0.0", "eslint-utils@^2.1.0": - "integrity" "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==" - "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "eslint-visitor-keys" "^1.1.0" - -"eslint-visitor-keys@^1.1.0", "eslint-visitor-keys@^1.3.0": - "integrity" "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" - "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" - "version" "1.3.0" - -"eslint-visitor-keys@^2.0.0": - "integrity" "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" - "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" - "version" "2.1.0" - -"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0", "eslint@^3 || ^4 || ^5 || ^6 || ^7", "eslint@^7.0.0", "eslint@^7.12.1", "eslint@^7.27.0", "eslint@^7.32.0", "eslint@>=4.19.1", "eslint@>=5.16.0", "eslint@>=7.12.1": - "integrity" "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==" - "resolved" "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" - "version" "7.32.0" + find-up "^5.0.0" + foreground-child "^2.0.0" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-report "^3.0.0" + istanbul-reports "^3.0.2" + rimraf "^3.0.0" + test-exclude "^6.0.0" + v8-to-istanbul "^8.0.0" + yargs "^16.2.0" + yargs-parser "^20.2.7" + +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.1, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colorette@^1.2.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.3.0.tgz#ff45d2f0edb244069d3b772adeb04fed38d0a0af" + integrity sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +convert-source-map@^1.6.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== + dependencies: + safe-buffer "~5.1.1" + +cross-spawn@^7.0.0, cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@^3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.0.1, debug@^4.1.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== + dependencies: + ms "2.1.2" + +deep-is@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: + version "1.18.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.5.tgz#9b10de7d4c206a3581fd5b2124233e04db49ae19" + integrity sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + is-callable "^1.2.3" + is-negative-zero "^2.0.1" + is-regex "^1.1.3" + is-string "^1.0.6" + object-inspect "^1.11.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.1" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +eslint-config-semistandard@16.0.0: + version "16.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz#45e06374707d86a87f54086e7b8bd0b7b74a197f" + integrity sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ== + +eslint-config-standard-jsx@10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz#dc24992661325a2e480e2c3091d669f19034e18d" + integrity sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA== + +eslint-config-standard@16.0.3: + version "16.0.3" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516" + integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== + +eslint-import-resolver-node@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.5.tgz#939bbb0f74e179e757ca87f7a4a890dabed18ac4" + integrity sha512-XMoPKjSpXbkeJ7ZZ9icLnJMTY5Mc1kZbCakHquaFsXPpyWOwK0TK6CODO+0ca54UoM9LKOxyUNnoVZRl8TeaAg== + dependencies: + debug "^3.2.7" + resolve "^1.20.0" + +eslint-module-utils@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz#94e5540dd15fe1522e8ffa3ec8db3b7fa7e7a534" + integrity sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q== + dependencies: + debug "^3.2.7" + pkg-dir "^2.0.0" + +eslint-plugin-es@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" + integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-import@^2.22.1: + version "2.24.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.24.0.tgz#697ffd263e24da5e84e03b282f5fb62251777177" + integrity sha512-Kc6xqT9hiYi2cgybOc0I2vC9OgAYga5o/rAFinam/yF/t5uBqxQbauNPMC6fgb640T/89P0gFoO27FOilJ/Cqg== + dependencies: + array-includes "^3.1.3" + array.prototype.flat "^1.2.4" + debug "^2.6.9" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.5" + eslint-module-utils "^2.6.2" + find-up "^2.0.0" + has "^1.0.3" + is-core-module "^2.4.0" + minimatch "^3.0.4" + object.values "^1.1.3" + pkg-up "^2.0.0" + read-pkg-up "^3.0.0" + resolve "^1.20.0" + tsconfig-paths "^3.9.0" + +eslint-plugin-node@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" + integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== + dependencies: + eslint-plugin-es "^3.0.0" + eslint-utils "^2.0.0" + ignore "^5.1.1" + minimatch "^3.0.4" + resolve "^1.10.1" + semver "^6.1.0" + +eslint-plugin-promise@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz#fb2188fb734e4557993733b41aa1a688f46c6f24" + integrity sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng== + +eslint-plugin-react@~7.21.5: + version "7.21.5" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz#50b21a412b9574bfe05b21db176e8b7b3b15bff3" + integrity sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== + dependencies: + array-includes "^3.1.1" + array.prototype.flatmap "^1.2.3" + doctrine "^2.1.0" + has "^1.0.3" + jsx-ast-utils "^2.4.1 || ^3.0.0" + object.entries "^1.1.2" + object.fromentries "^2.0.2" + object.values "^1.1.1" + prop-types "^15.7.2" + resolve "^1.18.1" + string.prototype.matchall "^4.0.2" + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.0.0, eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint@^7.27.0, eslint@^7.32.0: + version "7.32.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.3" "@humanwhocodes/config-array" "^0.5.0" - "ajv" "^6.10.0" - "chalk" "^4.0.0" - "cross-spawn" "^7.0.2" - "debug" "^4.0.1" - "doctrine" "^3.0.0" - "enquirer" "^2.3.5" - "escape-string-regexp" "^4.0.0" - "eslint-scope" "^5.1.1" - "eslint-utils" "^2.1.0" - "eslint-visitor-keys" "^2.0.0" - "espree" "^7.3.1" - "esquery" "^1.4.0" - "esutils" "^2.0.2" - "fast-deep-equal" "^3.1.3" - "file-entry-cache" "^6.0.1" - "functional-red-black-tree" "^1.0.1" - "glob-parent" "^5.1.2" - "globals" "^13.6.0" - "ignore" "^4.0.6" - "import-fresh" "^3.0.0" - "imurmurhash" "^0.1.4" - "is-glob" "^4.0.0" - "js-yaml" "^3.13.1" - "json-stable-stringify-without-jsonify" "^1.0.1" - "levn" "^0.4.1" - "lodash.merge" "^4.6.2" - "minimatch" "^3.0.4" - "natural-compare" "^1.4.0" - "optionator" "^0.9.1" - "progress" "^2.0.0" - "regexpp" "^3.1.0" - "semver" "^7.2.1" - "strip-ansi" "^6.0.0" - "strip-json-comments" "^3.1.0" - "table" "^6.0.9" - "text-table" "^0.2.0" - "v8-compile-cache" "^2.0.3" - -"espree@^7.3.0", "espree@^7.3.1": - "integrity" "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==" - "resolved" "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" - "version" "7.3.1" - dependencies: - "acorn" "^7.4.0" - "acorn-jsx" "^5.3.1" - "eslint-visitor-keys" "^1.3.0" - -"esprima@^4.0.0": - "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" - "version" "4.0.1" - -"esquery@^1.4.0": - "integrity" "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==" - "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" - "version" "1.4.0" - dependencies: - "estraverse" "^5.1.0" - -"esrecurse@^4.3.0": - "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==" - "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" - "version" "4.3.0" - dependencies: - "estraverse" "^5.2.0" - -"estraverse@^4.1.1": - "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" - "version" "4.3.0" - -"estraverse@^5.1.0", "estraverse@^5.2.0": - "integrity" "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" - "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" - "version" "5.2.0" - -"esutils@^2.0.2": - "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" - "version" "2.0.3" - -"events@^3.3.0": - "integrity" "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - "resolved" "https://registry.npmjs.org/events/-/events-3.3.0.tgz" - "version" "3.3.0" - -"fast-deep-equal@^3.1.1", "fast-deep-equal@^3.1.3": - "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" - "version" "3.1.3" - -"fast-json-stable-stringify@^2.0.0": - "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" - "version" "2.1.0" - -"fast-levenshtein@^2.0.6": - "integrity" "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" - "version" "2.0.6" - -"file-entry-cache@^6.0.1": - "integrity" "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==" - "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" - "version" "6.0.1" - dependencies: - "flat-cache" "^3.0.4" - -"find-up@^2.0.0", "find-up@^2.1.0": - "integrity" "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=" - "resolved" "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "locate-path" "^2.0.0" - -"find-up@^3.0.0": - "integrity" "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==" - "resolved" "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "locate-path" "^3.0.0" - -"find-up@^5.0.0": - "integrity" "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==" - "resolved" "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" - "version" "5.0.0" - dependencies: - "locate-path" "^6.0.0" - "path-exists" "^4.0.0" - -"flat-cache@^3.0.4": - "integrity" "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==" - "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" - "version" "3.0.4" - dependencies: - "flatted" "^3.1.0" - "rimraf" "^3.0.2" - -"flatted@^3.1.0": - "integrity" "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==" - "resolved" "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz" - "version" "3.2.2" - -"foreground-child@^2.0.0": - "integrity" "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==" - "resolved" "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "cross-spawn" "^7.0.0" - "signal-exit" "^3.0.2" - -"fs.realpath@^1.0.0": - "integrity" "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" - "version" "1.0.0" - -"function-bind@^1.1.1": - "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" - "version" "1.1.1" - -"functional-red-black-tree@^1.0.1": - "integrity" "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" - "resolved" "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - "version" "1.0.1" - -"get-caller-file@^2.0.5": - "integrity" "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" - "version" "2.0.5" - -"get-intrinsic@^1.0.2", "get-intrinsic@^1.1.0", "get-intrinsic@^1.1.1": - "integrity" "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==" - "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" - "version" "1.1.1" - dependencies: - "function-bind" "^1.1.1" - "has" "^1.0.3" - "has-symbols" "^1.0.1" - -"get-stdin@^8.0.0": - "integrity" "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" - "resolved" "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" - "version" "8.0.0" - -"glob-parent@^5.1.2": - "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==" - "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" - "version" "5.1.2" - dependencies: - "is-glob" "^4.0.1" - -"glob@^7.1.3", "glob@^7.1.4": - "integrity" "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==" - "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" - "version" "7.1.7" - dependencies: - "fs.realpath" "^1.0.0" - "inflight" "^1.0.4" - "inherits" "2" - "minimatch" "^3.0.4" - "once" "^1.3.0" - "path-is-absolute" "^1.0.0" - -"globals@^13.6.0", "globals@^13.9.0": - "integrity" "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==" - "resolved" "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz" - "version" "13.10.0" - dependencies: - "type-fest" "^0.20.2" - -"graceful-fs@^4.1.15", "graceful-fs@^4.1.2": - "integrity" "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" - "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" - "version" "4.2.8" - -"has-bigints@^1.0.1": - "integrity" "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" - "resolved" "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" - "version" "1.0.1" - -"has-flag@^3.0.0": - "integrity" "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - "version" "3.0.0" - -"has-flag@^4.0.0": - "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" - "version" "4.0.0" - -"has-symbols@^1.0.1", "has-symbols@^1.0.2": - "integrity" "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" - "version" "1.0.2" - -"has-tostringtag@^1.0.0": - "integrity" "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==" - "resolved" "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" - "version" "1.0.0" - dependencies: - "has-symbols" "^1.0.2" - -"has@^1.0.3": - "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" - "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" - "version" "1.0.3" - dependencies: - "function-bind" "^1.1.1" - -"hosted-git-info@^2.1.4": - "integrity" "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" - "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" - "version" "2.8.9" - -"html-escaper@^2.0.0": - "integrity" "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" - "resolved" "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" - "version" "2.0.2" - -"ignore@^4.0.6": - "integrity" "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" - "resolved" "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" - "version" "4.0.6" - -"ignore@^5.1.1": - "integrity" "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" - "resolved" "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" - "version" "5.1.8" - -"import-fresh@^3.0.0", "import-fresh@^3.2.1": - "integrity" "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==" - "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" - "version" "3.3.0" - dependencies: - "parent-module" "^1.0.0" - "resolve-from" "^4.0.0" - -"imurmurhash@^0.1.4": - "integrity" "sha1-khi5srkoojixPcT7a21XbyMUU+o=" - "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" - "version" "0.1.4" - -"inflight@^1.0.4": - "integrity" "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" - "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" - "version" "1.0.6" - dependencies: - "once" "^1.3.0" - "wrappy" "1" - -"inherits@2": - "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" - "version" "2.0.4" - -"internal-slot@^1.0.3": - "integrity" "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==" - "resolved" "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" - "version" "1.0.3" - dependencies: - "get-intrinsic" "^1.1.0" - "has" "^1.0.3" - "side-channel" "^1.0.4" - -"is-arrayish@^0.2.1": - "integrity" "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - "version" "0.2.1" - -"is-bigint@^1.0.1": - "integrity" "sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg==" - "resolved" "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.3.tgz" - "version" "1.0.3" - -"is-boolean-object@^1.1.0": - "integrity" "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==" - "resolved" "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" - "version" "1.1.2" - dependencies: - "call-bind" "^1.0.2" - "has-tostringtag" "^1.0.0" - -"is-callable@^1.1.4", "is-callable@^1.2.3": - "integrity" "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==" - "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" - "version" "1.2.4" - -"is-core-module@^2.2.0", "is-core-module@^2.4.0": - "integrity" "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==" - "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz" - "version" "2.5.0" - dependencies: - "has" "^1.0.3" - -"is-date-object@^1.0.1": - "integrity" "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==" - "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" - "version" "1.0.5" - dependencies: - "has-tostringtag" "^1.0.0" - -"is-extglob@^2.1.1": - "integrity" "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - "version" "2.1.1" - -"is-fullwidth-code-point@^3.0.0": - "integrity" "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" - "version" "3.0.0" - -"is-glob@^4.0.0", "is-glob@^4.0.1": - "integrity" "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==" - "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" - "version" "4.0.1" - dependencies: - "is-extglob" "^2.1.1" - -"is-negative-zero@^2.0.1": - "integrity" "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" - "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" - "version" "2.0.1" - -"is-number-object@^1.0.4": - "integrity" "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==" - "resolved" "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz" - "version" "1.0.6" - dependencies: - "has-tostringtag" "^1.0.0" - -"is-regex@^1.1.3": - "integrity" "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==" - "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" - "version" "1.1.4" - dependencies: - "call-bind" "^1.0.2" - "has-tostringtag" "^1.0.0" - -"is-string@^1.0.5", "is-string@^1.0.6": - "integrity" "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==" - "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" - "version" "1.0.7" - dependencies: - "has-tostringtag" "^1.0.0" - -"is-symbol@^1.0.2", "is-symbol@^1.0.3": - "integrity" "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==" - "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "has-symbols" "^1.0.2" - -"isexe@^2.0.0": - "integrity" "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - "version" "2.0.0" - -"istanbul-lib-coverage@^3.0.0": - "integrity" "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" - "resolved" "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" - "version" "3.0.0" - -"istanbul-lib-report@^3.0.0": - "integrity" "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==" - "resolved" "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "istanbul-lib-coverage" "^3.0.0" - "make-dir" "^3.0.0" - "supports-color" "^7.1.0" - -"istanbul-reports@^3.0.2": - "integrity" "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==" - "resolved" "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" - "version" "3.0.2" - dependencies: - "html-escaper" "^2.0.0" - "istanbul-lib-report" "^3.0.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + escape-string-regexp "^4.0.0" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.1.2" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.9" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +events@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatted@^3.1.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.2.tgz#64bfed5cb68fe3ca78b3eb214ad97b63bedce561" + integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== + +foreground-child@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" + integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^3.0.2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-stdin@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== + +glob-parent@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.1.3, glob@^7.1.4: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^13.6.0, globals@^13.9.0: + version "13.10.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.10.0.tgz#60ba56c3ac2ca845cfbf4faeca727ad9dd204676" + integrity sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g== + dependencies: + type-fest "^0.20.2" + +graceful-fs@^4.1.15, graceful-fs@^4.1.2: + version "4.2.8" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" + integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== + +has-bigints@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.1, has-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.1: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +internal-slot@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== + dependencies: + get-intrinsic "^1.1.0" + has "^1.0.3" + side-channel "^1.0.4" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-bigint@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.3.tgz#fc9d9e364210480675653ddaea0518528d49a581" + integrity sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg== + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-callable@^1.1.4, is-callable@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== + +is-core-module@^2.2.0, is-core-module@^2.4.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.5.0.tgz#f754843617c70bfd29b7bd87327400cda5c18491" + integrity sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg== + dependencies: + has "^1.0.3" + +is-date-object@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.0, is-glob@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + +is-number-object@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + dependencies: + has-tostringtag "^1.0.0" + +is-regex@^1.1.3: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-string@^1.0.5, is-string@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +istanbul-lib-coverage@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" + +istanbul-reports@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" + integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" -"js-tokens@^3.0.0 || ^4.0.0", "js-tokens@^4.0.0": - "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" - "version" "4.0.0" - -"js-yaml@^3.13.1": - "integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==" - "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" - "version" "3.14.1" +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: - "argparse" "^1.0.7" - "esprima" "^4.0.0" + argparse "^1.0.7" + esprima "^4.0.0" -"json-parse-better-errors@^1.0.1": - "integrity" "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - "resolved" "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" - "version" "1.0.2" +json-parse-better-errors@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -"json-schema-traverse@^0.4.1": - "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" - "version" "0.4.1" - -"json-schema-traverse@^1.0.0": - "integrity" "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" - "version" "1.0.0" - -"json-stable-stringify-without-jsonify@^1.0.1": - "integrity" "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" - "resolved" "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" - "version" "1.0.1" - -"json5@^2.2.0": - "integrity" "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==" - "resolved" "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" - "version" "2.2.0" +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +json5@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== dependencies: - "minimist" "^1.2.5" + minimist "^1.2.5" "jsx-ast-utils@^2.4.1 || ^3.0.0": - "integrity" "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==" - "resolved" "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" - "version" "3.2.0" - dependencies: - "array-includes" "^3.1.2" - "object.assign" "^4.1.2" + version "3.2.0" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz#41108d2cec408c3453c1bbe8a4aae9e1e2bd8f82" + integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== + dependencies: + array-includes "^3.1.2" + object.assign "^4.1.2" -"levn@^0.4.1": - "integrity" "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==" - "resolved" "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" - "version" "0.4.1" - dependencies: - "prelude-ls" "^1.2.1" - "type-check" "~0.4.0" +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" -"load-json-file@^4.0.0": - "integrity" "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=" - "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" - "version" "4.0.0" - dependencies: - "graceful-fs" "^4.1.2" - "parse-json" "^4.0.0" - "pify" "^3.0.0" - "strip-bom" "^3.0.0" - -"load-json-file@^5.2.0": - "integrity" "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==" - "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz" - "version" "5.3.0" - dependencies: - "graceful-fs" "^4.1.15" - "parse-json" "^4.0.0" - "pify" "^4.0.1" - "strip-bom" "^3.0.0" - "type-fest" "^0.3.0" - -"locate-path@^2.0.0": - "integrity" "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=" - "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "p-locate" "^2.0.0" - "path-exists" "^3.0.0" - -"locate-path@^3.0.0": - "integrity" "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==" - "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "p-locate" "^3.0.0" - "path-exists" "^3.0.0" - -"locate-path@^6.0.0": - "integrity" "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==" - "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" - "version" "6.0.0" - dependencies: - "p-locate" "^5.0.0" - -"lockbase@^1.1.0": - "integrity" "sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw==" - "resolved" "https://registry.npmjs.org/lockbase/-/lockbase-1.1.0.tgz" - "version" "1.1.0" - dependencies: - "uuid" "^8.3.2" - -"lodash.clonedeep@^4.5.0": - "integrity" "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" - "resolved" "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" - "version" "4.5.0" - -"lodash.merge@^4.6.2": - "integrity" "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - "resolved" "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" - "version" "4.6.2" - -"lodash.truncate@^4.4.2": - "integrity" "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" - "resolved" "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" - "version" "4.4.2" - -"logslot@^2.1.0": - "integrity" "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==" - "resolved" "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "chalk" "^4.1.1" - -"loose-envify@^1.4.0": - "integrity" "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==" - "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" - "version" "1.4.0" - dependencies: - "js-tokens" "^3.0.0 || ^4.0.0" - -"lru-cache@^6.0.0": - "integrity" "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==" - "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" - "version" "6.0.0" - dependencies: - "yallist" "^4.0.0" - -"make-dir@^3.0.0": - "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" - "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" - "version" "3.1.0" - dependencies: - "semver" "^6.0.0" - -"minimatch@^3.0.4": - "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" - "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" - "version" "3.0.4" - dependencies: - "brace-expansion" "^1.1.7" - -"minimist@^1.2.0", "minimist@^1.2.5": - "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" - "version" "1.2.5" - -"mql-to-jql@^1.4.0": - "integrity" "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" - "resolved" "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz" - "version" "1.4.0" - -"ms@^2.1.1": - "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - "version" "2.1.3" - -"ms@2.0.0": - "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - "version" "2.0.0" - -"ms@2.1.2": - "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" - "version" "2.1.2" - -"natural-compare@^1.4.0": - "integrity" "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" - "version" "1.4.0" - -"node-ejdb-lite@^3.4.4": - "integrity" "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==" - "resolved" "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz" - "version" "3.4.4" - dependencies: - "semver" "^7.3.5" - -"normalize-package-data@^2.3.2": - "integrity" "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==" - "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" - "version" "2.5.0" - dependencies: - "hosted-git-info" "^2.1.4" - "resolve" "^1.10.0" - "semver" "2 || 3 || 4 || 5" - "validate-npm-package-license" "^3.0.1" - -"object-assign@^4.1.1": - "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - "version" "4.1.1" - -"object-inspect@^1.11.0", "object-inspect@^1.9.0": - "integrity" "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" - "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz" - "version" "1.11.0" - -"object-keys@^1.0.12", "object-keys@^1.1.1": - "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" - "version" "1.1.1" - -"object.assign@^4.1.2": - "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" - "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" - "version" "4.1.2" - dependencies: - "call-bind" "^1.0.0" - "define-properties" "^1.1.3" - "has-symbols" "^1.0.1" - "object-keys" "^1.1.1" - -"object.entries@^1.1.2": - "integrity" "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==" - "resolved" "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" - "version" "1.1.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.2" - -"object.fromentries@^2.0.2": - "integrity" "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==" - "resolved" "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz" - "version" "2.0.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.2" - "has" "^1.0.3" - -"object.values@^1.1.1", "object.values@^1.1.3": - "integrity" "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==" - "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" - "version" "1.1.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.2" - -"once@^1.3.0": - "integrity" "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" - "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - "version" "1.4.0" - dependencies: - "wrappy" "1" - -"optionator@^0.9.1": - "integrity" "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==" - "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" - "version" "0.9.1" - dependencies: - "deep-is" "^0.1.3" - "fast-levenshtein" "^2.0.6" - "levn" "^0.4.1" - "prelude-ls" "^1.2.1" - "type-check" "^0.4.0" - "word-wrap" "^1.2.3" - -"p-limit@^1.1.0": - "integrity" "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==" - "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" - "version" "1.3.0" - dependencies: - "p-try" "^1.0.0" - -"p-limit@^2.0.0": - "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" - "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" - "version" "2.3.0" - dependencies: - "p-try" "^2.0.0" - -"p-limit@^3.0.2": - "integrity" "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==" - "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" - "version" "3.1.0" - dependencies: - "yocto-queue" "^0.1.0" - -"p-locate@^2.0.0": - "integrity" "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=" - "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "p-limit" "^1.1.0" - -"p-locate@^3.0.0": - "integrity" "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==" - "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "p-limit" "^2.0.0" - -"p-locate@^5.0.0": - "integrity" "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==" - "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" - "version" "5.0.0" - dependencies: - "p-limit" "^3.0.2" - -"p-try@^1.0.0": - "integrity" "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" - "resolved" "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" - "version" "1.0.0" - -"p-try@^2.0.0": - "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" - "version" "2.2.0" - -"parent-module@^1.0.0": - "integrity" "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==" - "resolved" "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" - "version" "1.0.1" - dependencies: - "callsites" "^3.0.0" - -"parse-json@^4.0.0": - "integrity" "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=" - "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" - "version" "4.0.0" - dependencies: - "error-ex" "^1.3.1" - "json-parse-better-errors" "^1.0.1" - -"path-exists@^3.0.0": - "integrity" "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" - "version" "3.0.0" - -"path-exists@^4.0.0": - "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" - "version" "4.0.0" - -"path-is-absolute@^1.0.0": - "integrity" "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" - "version" "1.0.1" - -"path-key@^3.1.0": - "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" - "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" - "version" "3.1.1" - -"path-parse@^1.0.6": - "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" - "version" "1.0.7" - -"path-type@^3.0.0": - "integrity" "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==" - "resolved" "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "pify" "^3.0.0" - -"pify@^3.0.0": - "integrity" "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - "resolved" "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" - "version" "3.0.0" - -"pify@^4.0.1": - "integrity" "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - "resolved" "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" - "version" "4.0.1" - -"pkg-conf@^3.1.0": - "integrity" "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==" - "resolved" "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz" - "version" "3.1.0" - dependencies: - "find-up" "^3.0.0" - "load-json-file" "^5.2.0" - -"pkg-dir@^2.0.0": - "integrity" "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=" - "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "find-up" "^2.1.0" - -"pkg-up@^2.0.0": - "integrity" "sha1-yBmscoBZpGHKscOImivjxJoATX8=" - "resolved" "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "find-up" "^2.1.0" - -"prelude-ls@^1.2.1": - "integrity" "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" - "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" - "version" "1.2.1" - -"progress@^2.0.0": - "integrity" "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" - "resolved" "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" - "version" "2.0.3" - -"promise-limit@^2.7.0": - "integrity" "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" - "resolved" "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz" - "version" "2.7.0" - -"prop-types@^15.7.2": - "integrity" "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==" - "resolved" "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" - "version" "15.7.2" - dependencies: - "loose-envify" "^1.4.0" - "object-assign" "^4.1.1" - "react-is" "^16.8.1" - -"punycode@^2.1.0": - "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" - "version" "2.1.1" - -"react-is@^16.8.1": - "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - "version" "16.13.1" - -"read-pkg-up@^3.0.0": - "integrity" "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=" - "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "find-up" "^2.0.0" - "read-pkg" "^3.0.0" - -"read-pkg@^3.0.0": - "integrity" "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=" - "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "load-json-file" "^4.0.0" - "normalize-package-data" "^2.3.2" - "path-type" "^3.0.0" - -"regexp.prototype.flags@^1.3.1": - "integrity" "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==" - "resolved" "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" - "version" "1.3.1" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - -"regexpp@^3.0.0", "regexpp@^3.1.0": - "integrity" "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" - "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" - "version" "3.2.0" - -"require-directory@^2.1.1": - "integrity" "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" - "version" "2.1.1" - -"require-from-string@^2.0.2": - "integrity" "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" - "resolved" "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" - "version" "2.0.2" - -"resolve-from@^4.0.0": - "integrity" "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" - "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" - "version" "4.0.0" - -"resolve@^1.10.0", "resolve@^1.10.1", "resolve@^1.13.1", "resolve@^1.18.1", "resolve@^1.20.0": - "integrity" "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==" - "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" - "version" "1.20.0" - dependencies: - "is-core-module" "^2.2.0" - "path-parse" "^1.0.6" - -"rimraf@^3.0.0", "rimraf@^3.0.2": - "integrity" "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==" - "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" - "version" "3.0.2" - dependencies: - "glob" "^7.1.3" - -"safe-buffer@~5.1.1": - "integrity" "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - "version" "5.1.2" - -"semistandard@^16.0.1": - "integrity" "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==" - "resolved" "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz" - "version" "16.0.1" - dependencies: - "eslint" "^7.27.0" - "eslint-config-semistandard" "16.0.0" - "eslint-config-standard" "16.0.3" - "eslint-config-standard-jsx" "10.0.0" - "eslint-plugin-import" "^2.22.1" - "eslint-plugin-node" "^11.1.0" - "eslint-plugin-promise" "^5.1.0" - "eslint-plugin-react" "~7.21.5" - "standard-engine" "^14.0.0" - -"semver@^6.0.0", "semver@^6.1.0": - "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - "version" "6.3.0" - -"semver@^7.2.1": - "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" - "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" - "version" "7.3.5" - dependencies: - "lru-cache" "^6.0.0" - -"semver@^7.3.5": - "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" - "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" - "version" "7.3.5" - dependencies: - "lru-cache" "^6.0.0" +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" + +load-json-file@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" + integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== + dependencies: + graceful-fs "^4.1.15" + parse-json "^4.0.0" + pify "^4.0.1" + strip-bom "^3.0.0" + type-fest "^0.3.0" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lockbase@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/lockbase/-/lockbase-1.1.0.tgz#c40aa8639e508ad1832d43ae29962c6a4094cde5" + integrity sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw== + dependencies: + uuid "^8.3.2" + +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + +logslot@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/logslot/-/logslot-2.1.0.tgz#2897d410e70c8b83fd90c67fb8f63c192d98156c" + integrity sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q== + dependencies: + chalk "^4.1.1" + +loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.0, minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +mql-to-jql@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/mql-to-jql/-/mql-to-jql-1.4.0.tgz#168d54c45749817a21a6134c70cd4c7bfe8ce4bc" + integrity sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +node-ejdb-lite@^3.4.4: + version "3.4.4" + resolved "https://registry.yarnpkg.com/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz#d13d530bcda6e3f1b2ccaa0898afd2383fe6c0e1" + integrity sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg== + dependencies: + semver "^7.3.5" + +normalize-package-data@^2.3.2: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-inspect@^1.11.0, object-inspect@^1.9.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" + integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== + +object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" + +object.entries@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.4.tgz#43ccf9a50bc5fd5b649d45ab1a579f24e088cafd" + integrity sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + +object.fromentries@^2.0.2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.4.tgz#26e1ba5c4571c5c6f0890cef4473066456a120b8" + integrity sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + has "^1.0.3" + +object.values@^1.1.1, object.values@^1.1.3: + version "1.1.4" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.4.tgz#0d273762833e816b693a637d30073e7051535b30" + integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + +p-limit@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +pkg-conf@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-3.1.0.tgz#d9f9c75ea1bae0e77938cde045b276dac7cc69ae" + integrity sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ== + dependencies: + find-up "^3.0.0" + load-json-file "^5.2.0" + +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= + dependencies: + find-up "^2.1.0" + +pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" + integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= + dependencies: + find-up "^2.1.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +promise-limit@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/promise-limit/-/promise-limit-2.7.0.tgz#eb5737c33342a030eaeaecea9b3d3a93cb592b26" + integrity sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw== + +prop-types@^15.7.2: + version "15.7.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +react-is@^16.8.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +read-pkg-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= + dependencies: + find-up "^2.0.0" + read-pkg "^3.0.0" + +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + +regexp.prototype.flags@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" + integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +regexpp@^3.0.0, regexpp@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@^1.10.0, resolve@^1.10.1, resolve@^1.18.1, resolve@^1.20.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +rimraf@^3.0.0, rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +semistandard@^16.0.1: + version "16.0.1" + resolved "https://registry.yarnpkg.com/semistandard/-/semistandard-16.0.1.tgz#8ed8590e848e74c24c77011df4350bb0327b31bb" + integrity sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q== + dependencies: + eslint "^7.27.0" + eslint-config-semistandard "16.0.0" + eslint-config-standard "16.0.3" + eslint-config-standard-jsx "10.0.0" + eslint-plugin-import "^2.22.1" + eslint-plugin-node "^11.1.0" + eslint-plugin-promise "^5.1.0" + eslint-plugin-react "~7.21.5" + standard-engine "^14.0.0" "semver@2 || 3 || 4 || 5": - "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" - "version" "5.7.1" - -"server-destroy@^1.0.1": - "integrity" "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" - "resolved" "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" - "version" "1.0.1" - -"shebang-command@^2.0.0": - "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==" - "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "shebang-regex" "^3.0.0" - -"shebang-regex@^3.0.0": - "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" - "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" - "version" "3.0.0" - -"side-channel@^1.0.4": - "integrity" "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==" - "resolved" "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "call-bind" "^1.0.0" - "get-intrinsic" "^1.0.2" - "object-inspect" "^1.9.0" - -"signal-exit@^3.0.2": - "integrity" "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" - "version" "3.0.3" - -"slice-ansi@^4.0.0": - "integrity" "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==" - "resolved" "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" - "version" "4.0.0" - dependencies: - "ansi-styles" "^4.0.0" - "astral-regex" "^2.0.0" - "is-fullwidth-code-point" "^3.0.0" - -"source-map@^0.7.3": - "integrity" "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" - "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" - "version" "0.7.3" - -"spdx-correct@^3.0.0": - "integrity" "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==" - "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" - "version" "3.1.1" - dependencies: - "spdx-expression-parse" "^3.0.0" - "spdx-license-ids" "^3.0.0" - -"spdx-exceptions@^2.1.0": - "integrity" "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" - "resolved" "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" - "version" "2.3.0" - -"spdx-expression-parse@^3.0.0": - "integrity" "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==" - "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" - "version" "3.0.1" - dependencies: - "spdx-exceptions" "^2.1.0" - "spdx-license-ids" "^3.0.0" - -"spdx-license-ids@^3.0.0": - "integrity" "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==" - "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz" - "version" "3.0.9" - -"sprintf-js@~1.0.2": - "integrity" "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - "version" "1.0.3" - -"standard-engine@^14.0.0": - "integrity" "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==" - "resolved" "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz" - "version" "14.0.1" - dependencies: - "get-stdin" "^8.0.0" - "minimist" "^1.2.5" - "pkg-conf" "^3.1.0" - "xdg-basedir" "^4.0.0" - -"string-width@^4.1.0", "string-width@^4.2.0": - "integrity" "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==" - "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" - "version" "4.2.2" - dependencies: - "emoji-regex" "^8.0.0" - "is-fullwidth-code-point" "^3.0.0" - "strip-ansi" "^6.0.0" - -"string.prototype.matchall@^4.0.2": - "integrity" "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==" - "resolved" "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz" - "version" "4.0.5" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.2" - "get-intrinsic" "^1.1.1" - "has-symbols" "^1.0.2" - "internal-slot" "^1.0.3" - "regexp.prototype.flags" "^1.3.1" - "side-channel" "^1.0.4" - -"string.prototype.trimend@^1.0.4": - "integrity" "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==" - "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - -"string.prototype.trimstart@^1.0.4": - "integrity" "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==" - "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - -"strip-ansi@^6.0.0": - "integrity" "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==" - "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" - "version" "6.0.0" - dependencies: - "ansi-regex" "^5.0.0" - -"strip-bom@^3.0.0": - "integrity" "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" - "version" "3.0.0" - -"strip-json-comments@^3.1.0", "strip-json-comments@^3.1.1": - "integrity" "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" - "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" - "version" "3.1.1" - -"supports-color@^5.3.0": - "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" - "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" - "version" "5.5.0" - dependencies: - "has-flag" "^3.0.0" - -"supports-color@^7.1.0": - "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" - "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" - "version" "7.2.0" - dependencies: - "has-flag" "^4.0.0" - -"table@^6.0.9": - "integrity" "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==" - "resolved" "https://registry.npmjs.org/table/-/table-6.7.1.tgz" - "version" "6.7.1" - dependencies: - "ajv" "^8.0.1" - "lodash.clonedeep" "^4.5.0" - "lodash.truncate" "^4.4.2" - "slice-ansi" "^4.0.0" - "string-width" "^4.2.0" - "strip-ansi" "^6.0.0" - -"tcpocket@^7.3.1": - "integrity" "sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q==" - "resolved" "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz" - "version" "7.3.1" - -"test-exclude@^6.0.0": - "integrity" "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==" - "resolved" "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" - "version" "6.0.0" + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@^6.0.0, semver@^6.1.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.2.1, semver@^7.3.5: + version "7.3.5" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + +server-destroy@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" + integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +source-map@^0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +spdx-correct@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.10" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" + integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +standard-engine@^14.0.0: + version "14.0.1" + resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-14.0.1.tgz#fe568e138c3d9768fc59ff81001f7049908a8156" + integrity sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q== + dependencies: + get-stdin "^8.0.0" + minimist "^1.2.5" + pkg-conf "^3.1.0" + xdg-basedir "^4.0.0" + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.matchall@^4.0.2: + version "4.0.5" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz#59370644e1db7e4c0c045277690cf7b01203c4da" + integrity sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + get-intrinsic "^1.1.1" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + regexp.prototype.flags "^1.3.1" + side-channel "^1.0.4" + +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +table@^6.0.9: + version "6.7.1" + resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" + integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== + dependencies: + ajv "^8.0.1" + lodash.clonedeep "^4.5.0" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.0" + strip-ansi "^6.0.0" + +tcpocket@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.3.1.tgz#4a19d19c95304e2c5709c3c99047300184adf4ec" + integrity sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q== + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" - "glob" "^7.1.4" - "minimatch" "^3.0.4" - -"text-table@^0.2.0": - "integrity" "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" - "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - "version" "0.2.0" - -"tsconfig-paths@^3.9.0": - "integrity" "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==" - "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" - "version" "3.10.1" - dependencies: - "json5" "^2.2.0" - "minimist" "^1.2.0" - "strip-bom" "^3.0.0" - -"type-check@^0.4.0", "type-check@~0.4.0": - "integrity" "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==" - "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" - "version" "0.4.0" - dependencies: - "prelude-ls" "^1.2.1" - -"type-fest@^0.20.2": - "integrity" "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" - "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" - "version" "0.20.2" - -"type-fest@^0.3.0": - "integrity" "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" - "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" - "version" "0.3.1" - -"unbox-primitive@^1.0.1": - "integrity" "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==" - "resolved" "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" - "version" "1.0.1" - dependencies: - "function-bind" "^1.1.1" - "has-bigints" "^1.0.1" - "has-symbols" "^1.0.2" - "which-boxed-primitive" "^1.0.2" - -"uri-js@^4.2.2": - "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==" - "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" - "version" "4.4.1" - dependencies: - "punycode" "^2.1.0" - -"uuid@^8.3.2": - "integrity" "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - "resolved" "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" - "version" "8.3.2" - -"v8-compile-cache@^2.0.3": - "integrity" "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" - "resolved" "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" - "version" "2.3.0" - -"v8-to-istanbul@^8.0.0": - "integrity" "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==" - "resolved" "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz" - "version" "8.0.0" + glob "^7.1.4" + minimatch "^3.0.4" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +tsconfig-paths@^3.9.0: + version "3.10.1" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz#79ae67a68c15289fdf5c51cb74f397522d795ed7" + integrity sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q== + dependencies: + json5 "^2.2.0" + minimist "^1.2.0" + strip-bom "^3.0.0" + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" + integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== + +unbox-primitive@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== + dependencies: + function-bind "^1.1.1" + has-bigints "^1.0.1" + has-symbols "^1.0.2" + which-boxed-primitive "^1.0.2" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + +v8-to-istanbul@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" + integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" - "convert-source-map" "^1.6.0" - "source-map" "^0.7.3" - -"validate-npm-package-license@^3.0.1": - "integrity" "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==" - "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" - "version" "3.0.4" - dependencies: - "spdx-correct" "^3.0.0" - "spdx-expression-parse" "^3.0.0" - -"which-boxed-primitive@^1.0.2": - "integrity" "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==" - "resolved" "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" - "version" "1.0.2" - dependencies: - "is-bigint" "^1.0.1" - "is-boolean-object" "^1.1.0" - "is-number-object" "^1.0.4" - "is-string" "^1.0.5" - "is-symbol" "^1.0.3" - -"which@^2.0.1": - "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==" - "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz" - "version" "2.0.2" - dependencies: - "isexe" "^2.0.0" - -"word-wrap@^1.2.3": - "integrity" "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" - "resolved" "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" - "version" "1.2.3" - -"wrap-ansi@^7.0.0": - "integrity" "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==" - "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" - "version" "7.0.0" - dependencies: - "ansi-styles" "^4.0.0" - "string-width" "^4.1.0" - "strip-ansi" "^6.0.0" - -"wrappy@1": - "integrity" "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - "version" "1.0.2" - -"xdg-basedir@^4.0.0": - "integrity" "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" - "resolved" "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" - "version" "4.0.0" - -"y18n@^5.0.5": - "integrity" "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - "resolved" "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" - "version" "5.0.8" - -"yallist@^4.0.0": - "integrity" "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - "resolved" "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" - "version" "4.0.0" - -"yargs-parser@^20.2.2", "yargs-parser@^20.2.7": - "integrity" "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" - "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" - "version" "20.2.9" - -"yargs@^16.2.0": - "integrity" "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==" - "resolved" "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" - "version" "16.2.0" - dependencies: - "cliui" "^7.0.2" - "escalade" "^3.1.1" - "get-caller-file" "^2.0.5" - "require-directory" "^2.1.1" - "string-width" "^4.2.0" - "y18n" "^5.0.5" - "yargs-parser" "^20.2.2" - -"yocto-queue@^0.1.0": - "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" - "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" - "version" "0.1.0" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +word-wrap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +xdg-basedir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" + integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yargs-parser@^20.2.2, yargs-parser@^20.2.7: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From e6a0078392874b925a0aeed10f45fb29206ebc0d Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 13 Aug 2021 22:52:51 +1000 Subject: [PATCH 23/73] Expand on notify logic --- lib/constants.js | 27 +++--- lib/controllers/external/info.js | 22 ----- lib/controllers/external/notifyOff.js | 21 ++++ lib/controllers/external/notifyOn.js | 22 +++++ lib/controllers/external/post.js | 2 +- lib/controllers/index.js | 18 ++-- lib/controllers/internal/info.js | 10 +- lib/controllers/internal/notify.js | 14 +++ lib/controllers/internal/notifyOff.js | 20 ++++ lib/controllers/internal/notifyOn.js | 20 ++++ lib/controllers/shared/notifyOff.js | 33 ------- lib/controllers/shared/notifyOn.js | 44 --------- lib/createHandler.js | 15 +-- lib/index.js | 133 +++++--------------------- lib/modules/notify/index.js | 100 +++++++++++++++++++ lib/utils/join.js | 75 +++++++++++++++ test/features/basic.js | 69 ++++++++++++- test/helpers/createTestServers.js | 24 +++-- 18 files changed, 425 insertions(+), 244 deletions(-) delete mode 100644 lib/controllers/external/info.js create mode 100644 lib/controllers/external/notifyOff.js create mode 100644 lib/controllers/external/notifyOn.js create mode 100644 lib/controllers/internal/notify.js create mode 100644 lib/controllers/internal/notifyOff.js create mode 100644 lib/controllers/internal/notifyOn.js delete mode 100644 lib/controllers/shared/notifyOff.js delete mode 100644 lib/controllers/shared/notifyOn.js create mode 100644 lib/modules/notify/index.js create mode 100644 lib/utils/join.js diff --git a/lib/constants.js b/lib/constants.js index c2245db..f247c2e 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -20,17 +20,18 @@ const constants = { LIMIT: 16, ORDER: 17, - NOTIFY_ON: 18, - NOTIFY_OFF: 19, - NOTIFY_PATH: 20, - - LOCK: 21, - UNLOCK: 22, - LOCK_ID: 23, - LOCK_STRATEGY: 24, - LOCK_STRATEGY_FAIL: 25, - LOCK_STRATEGY_WAIT: 26, - LOCK_KEYS: 27, + NOTIFY: 18, + NOTIFY_ON: 19, + NOTIFY_OFF: 20, + NOTIFY_PATH: 21, + + LOCK: 22, + UNLOCK: 23, + LOCK_ID: 24, + LOCK_STRATEGY: 25, + LOCK_STRATEGY_FAIL: 26, + LOCK_STRATEGY_WAIT: 27, + LOCK_KEYS: 28, COMMAND: 40, STATUS: 41, @@ -43,4 +44,8 @@ const constants = { STATUS_CREATED: 123 }; +Object.keys(constants).forEach(key => { + constants[constants[key]] = key; +}); + export default constants; diff --git a/lib/controllers/external/info.js b/lib/controllers/external/info.js deleted file mode 100644 index 87186c7..0000000 --- a/lib/controllers/external/info.js +++ /dev/null @@ -1,22 +0,0 @@ -import c from '../../constants.js'; - -async function infoController (context, socketState, request, response) { - response.reply(c.STATUS_OK, { - [c.DATA]: { - nodeName: context.options.nodeName, - nodes: context.nodes.map(node => ({ - host: node.host, - port: node.port - })) - } - }); - - const requestData = request.data.json(); - if (requestData[c.DATA] && request.data[c.DATA].nodes) { - requestData[c.DATA].nodes.forEach(node => { - context.join(context, node.host, node.port); - }); - } -} - -export default infoController; diff --git a/lib/controllers/external/notifyOff.js b/lib/controllers/external/notifyOff.js new file mode 100644 index 0000000..d3d12a6 --- /dev/null +++ b/lib/controllers/external/notifyOff.js @@ -0,0 +1,21 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +async function externalNotifyOffController (context, socket, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.NOTIFY_PATH]; + + const existingNotifierIndex = socket.state.notifiers + .findIndex(notifier => notifier.path === notifyPath); + + if (existingNotifierIndex > -1) { + socket.state.notifiers.splice(existingNotifierIndex, 1); + } + + await context.notify.unwatch(notifyPath); + + response.reply(c.STATUS_OK); +} + +export default externalNotifyOffController; diff --git a/lib/controllers/external/notifyOn.js b/lib/controllers/external/notifyOn.js new file mode 100644 index 0000000..671bf30 --- /dev/null +++ b/lib/controllers/external/notifyOn.js @@ -0,0 +1,22 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +async function externalNotifyOnController (context, socket, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.NOTIFY_PATH]; + + socket.state.notifiers.push({ + path: notifyPath, + regex: new RegExp(notifyPath), + handler: path => { + response.send(c.NOTIFY, { [c.DATA]: path }); + } + }); + + await context.notify.watch(notifyPath); + + response.reply(c.STATUS_OK); +} + +export default externalNotifyOnController; diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index 666750b..be834f5 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -28,7 +28,7 @@ async function postController (context, socketState, request, response) { }) ); - context.notify(`POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + context.emit('notify', `POST:/${collectionId}/${document.id}`, collectionId, document.id, request); response.reply(c.STATUS_CREATED, { [c.DATA]: document diff --git a/lib/controllers/index.js b/lib/controllers/index.js index 37c6fe2..aa26dd0 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -7,7 +7,6 @@ import internalPut from './internal/put.js'; import internalPatch from './internal/patch.js'; import internalDelete from './internal/delete.js'; -import externalInfo from './external/info.js'; import externalPost from './external/post.js'; import externalCount from './external/count.js'; import externalGet from './external/get.js'; @@ -15,8 +14,11 @@ import externalPut from './external/put.js'; import externalPatch from './external/patch.js'; import externalDelete from './external/delete.js'; -import factoryNotifyOn from './shared/notifyOn.js'; -import factoryNotifyOff from './shared/notifyOff.js'; +import externalNotifyOn from './external/notifyOn.js'; +import externalNotifyOff from './external/notifyOff.js'; +import internalNotifyOn from './internal/notifyOn.js'; +import internalNotifyOff from './internal/notifyOff.js'; +import internalNotify from './internal/notify.js'; const controllers = { internal: { @@ -28,11 +30,11 @@ const controllers = { [c.PATCH]: internalPatch, [c.DELETE]: internalDelete, - [c.NOTIFY_ON]: factoryNotifyOn('internal'), - [c.NOTIFY_OFF]: factoryNotifyOff('internal') + [c.NOTIFY]: internalNotify, + [c.NOTIFY_ON]: internalNotifyOn, + [c.NOTIFY_OFF]: internalNotifyOff }, external: { - [c.INFO]: externalInfo, [c.POST]: externalPost, [c.COUNT]: externalCount, [c.GET]: externalGet, @@ -40,8 +42,8 @@ const controllers = { [c.PATCH]: externalPatch, [c.DELETE]: externalDelete, - [c.NOTIFY_ON]: factoryNotifyOn('external'), - [c.NOTIFY_OFF]: factoryNotifyOff('external') + [c.NOTIFY_ON]: externalNotifyOn, + [c.NOTIFY_OFF]: externalNotifyOff } }; diff --git a/lib/controllers/internal/info.js b/lib/controllers/internal/info.js index 5be5c0a..809262c 100644 --- a/lib/controllers/internal/info.js +++ b/lib/controllers/internal/info.js @@ -1,13 +1,21 @@ import c from '../../constants.js'; async function infoController (context, socketState, request, response) { + const data = context.info.generators.reduce((data, generator) => { + return { + ...data, + ...generator() + }; + }, {}); + response.reply(c.STATUS_OK, { [c.DATA]: { nodeName: context.options.nodeName, nodes: context.nodes.map(node => ({ host: node.host, port: node.port - })) + })), + ...data } }); diff --git a/lib/controllers/internal/notify.js b/lib/controllers/internal/notify.js new file mode 100644 index 0000000..b4c3a99 --- /dev/null +++ b/lib/controllers/internal/notify.js @@ -0,0 +1,14 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +async function internalNotifyController (context, socket, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.DATA]; + + context.emit('notify.received', notifyPath); + + response.reply(c.STATUS_OK); +} + +export default internalNotifyController; diff --git a/lib/controllers/internal/notifyOff.js b/lib/controllers/internal/notifyOff.js new file mode 100644 index 0000000..412f52a --- /dev/null +++ b/lib/controllers/internal/notifyOff.js @@ -0,0 +1,20 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +async function internalNotifyOffController (context, socket, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.NOTIFY_PATH]; + + const notifiers = context.notify.internalNotifiers; + + const existingNotifierIndex = notifiers.findIndex(notifier => notifier.path === notifyPath); + + if (existingNotifierIndex > -1) { + notifiers.splice(existingNotifierIndex, 1); + } + + response.reply(c.STATUS_OK); +} + +export default internalNotifyOffController; diff --git a/lib/controllers/internal/notifyOn.js b/lib/controllers/internal/notifyOn.js new file mode 100644 index 0000000..fc74677 --- /dev/null +++ b/lib/controllers/internal/notifyOn.js @@ -0,0 +1,20 @@ +// import logslot from 'logslot'; + +import c from '../../constants.js'; + +async function internalNotifyOnController (context, socket, request, response) { + const requestData = request.json(); + const notifyPath = requestData[c.NOTIFY_PATH]; + + const notifiers = context.notify.internalNotifiers; + + notifiers.push({ + path: notifyPath, + regex: new RegExp(notifyPath), + nodeName: requestData[c.INTERNAL] + }); + + response.reply(c.STATUS_OK); +} + +export default internalNotifyOnController; diff --git a/lib/controllers/shared/notifyOff.js b/lib/controllers/shared/notifyOff.js deleted file mode 100644 index 4afe48d..0000000 --- a/lib/controllers/shared/notifyOff.js +++ /dev/null @@ -1,33 +0,0 @@ -// import logslot from 'logslot'; - -import c from '../../constants.js'; - -function askOnAllNodes (context, command, data) { - return Promise.all( - context.nodes.map(node => node.client.send(command, data)) - ); -} - -const notifyFactory = domain => { - // const log = logslot('canhazdb.controllers.' + domain + '.notifyOff'); - - return async function notifyOffController (context, socketState, request, response) { - const requestData = request.json(); - const notifyPath = requestData[c.NOTIFY_PATH]; - - const notifiers = context.notifiers[domain]; - - if (domain === 'external' && notifiers[notifyPath].length === 0) { - await askOnAllNodes(context, c.NOTIFY_OFF, { - [c.INTERNAL]: true, - [c.NOTIFY_PATH]: notifyPath - }); - } - - notifiers[notifyPath] = []; - - response.reply(c.STATUS_OK); - }; -}; - -export default notifyFactory; diff --git a/lib/controllers/shared/notifyOn.js b/lib/controllers/shared/notifyOn.js deleted file mode 100644 index 46c7481..0000000 --- a/lib/controllers/shared/notifyOn.js +++ /dev/null @@ -1,44 +0,0 @@ -// import logslot from 'logslot'; - -import c from '../../constants.js'; - -function askOnAllNodes (context, command, data) { - return Promise.all( - context.nodes.map(node => node.client.send(command, data)) - ); -} - -const notifyFactory = domain => { - // const log = logslot('canhazdb.controllers.' + domain + '.notifyOn'); - - return async function notifyOnController (context, socketState, request, response) { - const requestData = request.json(); - const notifyPath = requestData[c.NOTIFY_PATH]; - - const notifiers = context.notifiers[domain]; - - notifiers[notifyPath] = notifiers[notifyPath] || []; - - if (!notifiers[notifyPath].regex) { - notifiers[notifyPath].regex = new RegExp(notifyPath); - } - - if (domain === 'external' && notifiers[notifyPath].length === 0) { - await askOnAllNodes(context, c.NOTIFY_ON, { - [c.INTERNAL]: true, - [c.NOTIFY_PATH]: notifyPath - }); - } - - const listenerIndex = notifiers[notifyPath].indexOf(response); - if (listenerIndex === -1) { - notifiers[notifyPath].push( - (path) => response.send(c.STATUS_OK, { [c.DATA]: path }) - ); - } - - response.reply(c.STATUS_OK); - }; -}; - -export default notifyFactory; diff --git a/lib/createHandler.js b/lib/createHandler.js index 8f45175..408f438 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -15,11 +15,6 @@ function createHandler (context) { // data: request.data // }); - const socketState = { - send: response.send, - notifiers: [] - }; - const requestData = request.data ? request.json() : {}; const origin = requestData[c.INTERNAL] ? 'internal' : 'external'; @@ -30,10 +25,18 @@ function createHandler (context) { return; } - return controller(context, socketState, request, response); + return controller(context, request.socket, request, response); }); tcpServer.on('connection', (socket) => { + socket.state = {}; + + context.emit('client.connected', socket); + + socket.on('close', () => { + context.emit('client.closed', socket); + }); + socket.on('error', error => { log.warn('a client disconnected from the server', { code: error.code }); }); diff --git a/lib/index.js b/lib/index.js index 3c11faf..4f83b3b 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,35 +1,19 @@ import logslot from 'logslot'; -import tcpocket from 'tcpocket'; import lockbase from 'lockbase'; +import EventEmitter from 'events'; import prepareOptions from './prepareOptions.js'; import createHandler from './createHandler.js'; import driver from './driver/index.js'; import waitUntil from './utils/waitUntil.js'; +import join from './utils/join.js'; + +import notifyModule from './modules/notify/index.js'; import c from './constants.js'; const log = logslot('canhazdb.server'); -function createNotifier (context) { - return (path) => { - return Promise.all( - Object.keys(context.notifiers.external) - .map(key => { - const notifier = context.notifiers.external[key]; - - if (!path.match(notifier.regex)) { - return null; - } - - return Promise.all( - notifier.map(fn => fn(path)) - ); - }) - ); - }; -} - async function persistNode (context, node) { const existingRecords = await context.driver.get('system.nodes', { name: node.name @@ -46,102 +30,33 @@ async function persistNode (context, node) { node.persisted = true; } -function join (context, host, port) { - port = parseInt(port); - - const servername = context.options.joinFromDns; - - const existingNode = context.nodes.find(node => node.host === host && node.port === port); - if (existingNode) { - return; - } - - log.info('joining node', { host, port }); - - const node = { - connected: false, - host, - port, - client: tcpocket.createClient({ - host, - port, - servername, - ...context.options.tls - }) - }; - - node.client.on('message', (message) => { - console.log(222, message.command); - if (message.command === c.NOTIFY_ON) { - const data = message.json(); - context.notify(data[c.DATA]); - } - }); - - function handleError (error) { - node.connected = false; - - if (node.closing || context.closed) { - return; - } - - log.warn('node closed without cause, will reconnect'); - log.debug('node closed', error); - join(context, host, port); - } - - // node.client.on('message', data => { - // logslot('canhazdb.comms').debug('node message received', { data }); - // }); - - node.client.on('connect', () => { - node.connected = true; - }); - - node.client.on('close', () => { - handleError(Object.assign(new Error('client closed'), { code: 'CLOSED' })); - }); - - node.client.on('error', handleError); - - context.nodes = context.nodes.filter(i => { - return !(i.host === host && i.port === port); - }); - - node.close = () => { - node.closing = true; - return node.client.close(); - }; - - context.nodes.push(node); - context.nodes.sort(); -} - async function canhazdb (rawOptions) { const options = await prepareOptions(rawOptions); log.debug('parsed options', options); - const context = { - closed: false, - clients: [], - settings: { - replicas: 3 - }, - notifiers: { - internal: {}, - external: {} - }, - nodes: [], - join, - options - }; + const context = Object.assign( + new EventEmitter(), + { + closed: false, + clients: [], + settings: { + replicas: 3 + }, + info: { + generators: [] + }, + nodes: [], + join, + options + } + ); + + notifyModule(context); context.driver = await driver(context); context.locks = lockbase(); - context.notify = createNotifier(context, 'external'); - const tcpServer = createHandler(context); tcpServer.open(); @@ -181,6 +96,8 @@ async function canhazdb (rawOptions) { const resultData = result.json(); + context.emit('node.infoReceived', resultData[c.DATA]); + node.info = resultData; node.name = resultData[c.DATA].nodeName; @@ -200,7 +117,7 @@ async function canhazdb (rawOptions) { context.close = async function () { context.closed = true; - // scope.locks.cancel(); + context.locks.cancel(); clearTimeout(context.syncNodesInfoTimer); await Promise.all(context.nodes.map(node => { diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js new file mode 100644 index 0000000..f8f78d6 --- /dev/null +++ b/lib/modules/notify/index.js @@ -0,0 +1,100 @@ +import logslot from 'logslot'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.notify'); + +function askOnAllNodes (context, command, data) { + return Promise.all( + context.nodes.map(node => + node.client.send(command, data).catch(error => { + if (error.message.includes('client disconnected')) { + log.warn(`could not send ${c[command]} to node('${node.name}') because it was not connected`); + } + }) + ) + ); +} + +function notifyModule (context) { + context.notify = { + internalNotifiers: [], + watching: {}, + + watch: notifyPath => { + log.info('sending NOTIFY_ON to all nodes', { notifyPath }); + context.notify.watching[notifyPath] = (context.notify.watching[notifyPath] || 0) + 1; + return askOnAllNodes(context, c.NOTIFY_ON, { + [c.INTERNAL]: context.thisNode.name, + [c.NOTIFY_PATH]: notifyPath + }); + }, + + unwatch: notifyPath => { + log.info('sending NOTIFY_OFF to all nodes', { notifyPath }); + context.notify.watching[notifyPath] = (context.notify.watching[notifyPath] || 0) - 1; + if (context.notify.watching[notifyPath] < 0) { + context.notify.watching[notifyPath] = 0; + } + + return askOnAllNodes(context, c.NOTIFY_OFF, { + [c.INTERNAL]: context.thisNode.name, + [c.NOTIFY_PATH]: notifyPath + }); + } + }; + + context.info.generators.push(() => { + return { + internalNotifiers: context.notify.internalNotifiers + }; + }); + + context.on('node.infoReceived', infoData => { + infoData.internalNotifiers.forEach(newNotifier => { + const existingNotifier = context.notify.internalNotifiers.find( + notifier => notifier.nodeName === newNotifier.nodeName && notifier.path === newNotifier.path + ); + + if (!existingNotifier) { + context.notify.internalNotifiers.push(newNotifier); + } + }); + }); + + context.on('client.closed', socket => { + socket.state.notifiers.forEach(notifier => { + context.notify.unwatch(notifier.path); + }); + }); + + context.on('client.connected', socket => { + socket.state.notifiers = []; + + context.on('notify.received', notifyPath => { + const notifiers = socket.state.notifiers.filter( + notifier => notifyPath.match(notifier.regex) + ); + + notifiers.forEach(notifier => { + notifier.handler(notifyPath); + }); + }); + }); + + context.on('notify', notifyPath => { + const notifiers = context.notify.internalNotifiers.filter( + notifier => notifyPath.match(notifier.regex) + ); + + notifiers.forEach(notifier => { + const node = context.nodes.find(node => node.name === notifier.nodeName); + node.client.send(c.NOTIFY, { + [c.INTERNAL]: context.thisNode.name, + [c.DATA]: notifyPath + }); + }); + }); +} + +export default notifyModule; diff --git a/lib/utils/join.js b/lib/utils/join.js new file mode 100644 index 0000000..eba0655 --- /dev/null +++ b/lib/utils/join.js @@ -0,0 +1,75 @@ +import tcpocket from 'tcpocket'; +import logslot from 'logslot'; + +const log = logslot('canhazdb.server'); + +function join (context, host, port) { + port = parseInt(port); + + const servername = context.options.joinFromDns; + + const existingNode = context.nodes.find(node => node.host === host && node.port === port); + if (existingNode) { + return; + } + + log.info('joining node', { host, port }); + + const node = { + connected: false, + host, + port, + client: tcpocket.createClient({ + host, + port, + servername, + ...context.options.tls + }) + }; + + node.client.on('message', (message) => { + context.emit('node.message', message); + }); + + function handleError (error) { + node.connected = false; + + if (node.closing || context.closed) { + return; + } + + log.warn('node closed without cause, will reconnect'); + log.debug('node closed', error); + join(context, host, port); + } + + // node.client.on('message', data => { + // logslot('canhazdb.comms').debug('node message received', { data }); + // }); + + node.client.on('connect', () => { + node.connected = true; + context.emit('node.connected', node); + }); + + node.client.on('close', () => { + context.emit('node.disconnected', node); + handleError(Object.assign(new Error('client closed'), { code: 'CLOSED' })); + }); + + node.client.on('error', handleError); + + context.nodes = context.nodes.filter(i => { + return !(i.host === host && i.port === port); + }); + + node.close = () => { + node.closing = true; + return node.client.close(); + }; + + context.nodes.push(node); + context.nodes.sort(); +} + +export default join; diff --git a/test/features/basic.js b/test/features/basic.js index 483b873..4ebb955 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -4,6 +4,8 @@ import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + function createExampleDocuments (client, count, extraData) { const counts = Array(count).fill('').map((_, index) => index); @@ -271,7 +273,7 @@ test('get - with order (ascending)', async t => { await servers.close(); }); -test('notify - collection', async t => { +test('notify', async t => { t.plan(3); const servers = await createTestServers(1); @@ -279,7 +281,7 @@ test('notify - collection', async t => { await client.waitUntilConnected(); client.on('message', ({ command, data }) => { - t.equal(command, c.STATUS_OK); + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"5":"POST:/tests/')); }); @@ -317,3 +319,66 @@ test('notify - collection', async t => { await client.close(); await servers.close(); }); + +test('notify - client disconnections clean up', async t => { + t.plan(1); + + const servers = await createTestServers(2); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + client.close(); + + await sleep(100); + + t.equal(servers[0].notify.internalNotifiers.length, 0, 'internal notifier was removed'); + + await servers.close(); +}); + +test('notify - reconnections', async t => { + t.plan(2); + + let [server1, server2] = await createTestServers(2); + const [client1] = [ + tcpocket.createClient(server1.clientConfig) + ]; + await client1.waitUntilConnected(); + + client1.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + }); + + await client1.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + server2.close(); + await sleep(100); + server2 = await server2.recreate(); + await sleep(100); + + const client2 = tcpocket.createClient(server2.clientConfig); + await client2.waitUntilConnected(); + + await client2.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + await sleep(200); + + await Promise.all([ + client1.close(), + client2.close(), + server1.close(), + server2.close() + ]); +}); diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index 7e6b3e3..8b67c5e 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -30,14 +30,22 @@ async function createTestServers (count) { const port = getNewPort(); const nodeName = uuid(); - const server = canhazdb({ - dataDirectory: './canhazdata/' + nodeName, - nodeName: nodeName, - host: 'localhost', - port: port, - join, - tls - }); + const create = async () => { + const server = await canhazdb({ + dataDirectory: './canhazdata/' + nodeName, + nodeName: nodeName, + host: 'localhost', + port: port, + join, + tls + }); + + server.recreate = create; + + return server; + }; + + const server = create(); join.push('localhost:' + port); From 0827cbcbbe6ad70d1ad417fe00e854424c349c7b Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 15 Aug 2021 20:01:07 +1000 Subject: [PATCH 24/73] Finish implementing notify for all methods --- lib/controllers/external/delete.js | 2 - lib/controllers/external/patch.js | 2 - lib/controllers/external/post.js | 2 - lib/controllers/external/put.js | 2 - lib/controllers/internal/delete.js | 17 +- lib/controllers/internal/patch.js | 22 ++- lib/controllers/internal/post.js | 5 + lib/controllers/internal/put.js | 22 ++- lib/utils/isDocumentPrimaryReplica.js | 5 + test/features/basic.js | 112 ----------- test/features/notify.js | 272 ++++++++++++++++++++++++++ test/index.js | 1 + 12 files changed, 318 insertions(+), 146 deletions(-) create mode 100644 lib/utils/isDocumentPrimaryReplica.js create mode 100644 test/features/notify.js diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index 3603866..824e6ed 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -33,8 +33,6 @@ async function deleteController (context, socketState, request, response) { return; } - // context.notify(`DELETE:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 1c45b7d..5828433 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -31,8 +31,6 @@ async function patchController (context, socketState, request, response) { return; } - // context.notify(`PATCH:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index be834f5..8677732 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -28,8 +28,6 @@ async function postController (context, socketState, request, response) { }) ); - context.emit('notify', `POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 233ad27..258eee8 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -33,8 +33,6 @@ async function putController (context, socketState, request, response) { return; } - // context.notify(`PUT:/${collectionId}/${document.id}`, collectionId, document.id, request); - response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index 63cfa34..e947a60 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -1,5 +1,6 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; async function deleteController (context, socketState, request, response) { const requestData = request.json(); @@ -14,23 +15,27 @@ async function deleteController (context, socketState, request, response) { throw Object.assign(new Error('lock prevented change'), { status: 409 }); } - const count = await context.driver.count(collectionId, { - $and: [{ - '_replicatedNodes.0': context.thisNode.name - }, query] - }); + const foundDocuments = await context.driver.get(collectionId, query); + const primaryReplicaDocuments = foundDocuments.filter( + isDocumentPrimaryReplica.bind(null, context) + ); await context.driver.del(collectionId, query); // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + primaryReplicaDocuments.forEach(document => { + context.emit('notify', `DELETE:/${collectionId}/${document.id}`, collectionId, document.id, request); + }); + response.reply(c.STATUS_OK, { - [c.DATA]: count + [c.DATA]: primaryReplicaDocuments.length }); } catch (error) { response.reply(c.STATUS_BAD_REQUEST, { [c.ERROR]: error.message }); + throw error; } } diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index d06d1c8..4685d9d 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -1,5 +1,6 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; async function patchController (context, socketState, request, response) { const requestData = request.json(); @@ -15,24 +16,25 @@ async function patchController (context, socketState, request, response) { throw Object.assign(new Error('lock prevented change'), { status: 409 }); } - const [, count] = await Promise.all([ - context.driver.patch(collectionId, data, query), - context.driver.count(collectionId, { - $and: [{ - '_replicatedNodes.0': context.thisNode.name - }, query] - }) - ]); + const foundDocuments = await context.driver.get(collectionId, query); + const primaryReplicaDocuments = foundDocuments.filter( + isDocumentPrimaryReplica.bind(null, context) + ); - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + await context.driver.patch(collectionId, data, query); + + primaryReplicaDocuments.forEach(document => { + context.emit('notify', `PATCH:/${collectionId}/${document.id}`, collectionId, document.id, request); + }); response.reply(c.STATUS_OK, { - [c.DATA]: count + [c.DATA]: primaryReplicaDocuments.length }); } catch (error) { response.reply(c.STATUS_BAD_REQUEST, { [c.ERROR]: error.message }); + throw error; } } diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 1f89d79..2d1584f 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -1,5 +1,6 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; async function postController (context, socketState, request, response) { const requestData = request.json(); @@ -19,6 +20,10 @@ async function postController (context, socketState, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + if (isDocumentPrimaryReplica(context, document)) { + context.emit('notify', `POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + } + response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index e2fc089..1da6acf 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -1,5 +1,6 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; async function putController (context, socketState, request, response) { const requestData = request.json(); @@ -15,24 +16,25 @@ async function putController (context, socketState, request, response) { throw Object.assign(new Error('lock prevented change'), { status: 409 }); } - const [, count] = await Promise.all([ - context.driver.put(collectionId, data, query), - context.driver.count(collectionId, { - $and: [{ - '_replicatedNodes.0': context.thisNode.name - }, query] - }) - ]); + const foundDocuments = await context.driver.get(collectionId, query); + const primaryReplicaDocuments = foundDocuments.filter( + isDocumentPrimaryReplica.bind(null, context) + ); - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + await context.driver.put(collectionId, data, query); + + primaryReplicaDocuments.forEach(document => { + context.emit('notify', `PUT:/${collectionId}/${document.id}`, collectionId, document.id, request); + }); response.reply(c.STATUS_OK, { - [c.DATA]: count + [c.DATA]: primaryReplicaDocuments.length }); } catch (error) { response.reply(c.STATUS_BAD_REQUEST, { [c.ERROR]: error.message }); + throw error; } } diff --git a/lib/utils/isDocumentPrimaryReplica.js b/lib/utils/isDocumentPrimaryReplica.js new file mode 100644 index 0000000..d04362c --- /dev/null +++ b/lib/utils/isDocumentPrimaryReplica.js @@ -0,0 +1,5 @@ +function isDocumentPrimaryReplica (context, document) { + return document._replicatedNodes[0] === context.thisNode.name; +} + +export default isDocumentPrimaryReplica; diff --git a/test/features/basic.js b/test/features/basic.js index 4ebb955..d9b966b 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -4,8 +4,6 @@ import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - function createExampleDocuments (client, count, extraData) { const counts = Array(count).fill('').map((_, index) => index); @@ -272,113 +270,3 @@ test('get - with order (ascending)', async t => { await client.close(); await servers.close(); }); - -test('notify', async t => { - t.plan(3); - - const servers = await createTestServers(1); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); - - client.on('message', ({ command, data }) => { - t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"POST:/tests/')); - }); - - const notifyResponse = await client.send(c.NOTIFY_ON, { - [c.NOTIFY_PATH]: '.*:/tests/.*' - }); - - await client.send(c.POST, { - [c.COLLECTION_ID]: 'notests', - [c.DATA]: { - baz: 'baz' - } - }); - - await client.send(c.POST, { - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar' - } - }); - - await client.send(c.NOTIFY_OFF, { - [c.NOTIFY_PATH]: '.*:/tests/.*' - }); - - await client.send(c.POST, { - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar' - } - }); - - t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); - - await client.close(); - await servers.close(); -}); - -test('notify - client disconnections clean up', async t => { - t.plan(1); - - const servers = await createTestServers(2); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); - - await client.send(c.NOTIFY_ON, { - [c.NOTIFY_PATH]: '.*:/tests/.*' - }); - - client.close(); - - await sleep(100); - - t.equal(servers[0].notify.internalNotifiers.length, 0, 'internal notifier was removed'); - - await servers.close(); -}); - -test('notify - reconnections', async t => { - t.plan(2); - - let [server1, server2] = await createTestServers(2); - const [client1] = [ - tcpocket.createClient(server1.clientConfig) - ]; - await client1.waitUntilConnected(); - - client1.on('message', ({ command, data }) => { - t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"POST:/tests/')); - }); - - await client1.send(c.NOTIFY_ON, { - [c.NOTIFY_PATH]: '.*:/tests/.*' - }); - - server2.close(); - await sleep(100); - server2 = await server2.recreate(); - await sleep(100); - - const client2 = tcpocket.createClient(server2.clientConfig); - await client2.waitUntilConnected(); - - await client2.send(c.POST, { - [c.COLLECTION_ID]: 'tests', - [c.DATA]: { - foo: 'bar' - } - }); - - await sleep(200); - - await Promise.all([ - client1.close(), - client2.close(), - server1.close(), - server2.close() - ]); -}); diff --git a/test/features/notify.js b/test/features/notify.js new file mode 100644 index 0000000..b84a1e2 --- /dev/null +++ b/test/features/notify.js @@ -0,0 +1,272 @@ +import test from 'basictap'; +import createTestServers from '../helpers/createTestServers.js'; + +import c from '../../lib/constants.js'; +import tcpocket from 'tcpocket'; + +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + +function createExampleDocuments (client, count, extraData) { + const counts = Array(count).fill('').map((_, index) => index); + + return Promise.all( + counts.map(count => { + return client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + ...extraData, + foo: 'bar' + (count + 1) + } + }); + }) + ); +} + +test('notify', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + client.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + }); + + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + await client.send(c.POST, { + [c.COLLECTION_ID]: 'notests', + [c.DATA]: { + baz: 'baz' + } + }); + + await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + await client.send(c.NOTIFY_OFF, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + await client.close(); + await servers.close(); +}); + +test('notify - post', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + client.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + }); + + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: 'POST:/tests/.*' + }); + + await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + food: 'bar' + } + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + await sleep(100); + + await client.close(); + await servers.close(); +}); + +test('notify - put', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const documents = await createExampleDocuments(client, 3); + const documentId = documents[0].json()[c.DATA].id; + + client.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"PUT:/tests/' + documentId)); + }); + + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: 'PUT:/tests/.*' + }); + + await client.send(c.PUT, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { + foo: 'bar1' + }, + [c.DATA]: { + foo: 'baz' + } + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + await sleep(100); + + await client.close(); + await servers.close(); +}); + +test('notify - patch', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const documents = await createExampleDocuments(client, 3); + const documentId = documents[0].json()[c.DATA].id; + + client.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"PATCH:/tests/' + documentId)); + }); + + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: 'PATCH:/tests/.*' + }); + + await client.send(c.PATCH, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { + foo: 'bar1' + }, + [c.DATA]: { + foo: 'baz' + } + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + await sleep(100); + + await client.close(); + await servers.close(); +}); + +test('notify - delete', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const documents = await createExampleDocuments(client, 3); + const documentId = documents[0].json()[c.DATA].id; + + client.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"DELETE:/tests/' + documentId)); + }); + + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: 'DELETE:/tests/.*' + }); + + await client.send(c.DELETE, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { + foo: 'bar1' + } + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + await sleep(100); + + await client.close(); + await servers.close(); +}); + +test('notify - client disconnections clean up', async t => { + t.plan(1); + + const servers = await createTestServers(2); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + client.close(); + + await sleep(100); + + t.equal(servers[0].notify.internalNotifiers.length, 0, 'internal notifier was removed'); + + await servers.close(); +}); + +test('notify - reconnections', async t => { + t.plan(2); + + let [server1, server2] = await createTestServers(2); + const [client1] = [ + tcpocket.createClient(server1.clientConfig) + ]; + await client1.waitUntilConnected(); + + client1.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + }); + + await client1.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + server2.close(); + await sleep(100); + server2 = await server2.recreate(); + await sleep(100); + + const client2 = tcpocket.createClient(server2.clientConfig); + await client2.waitUntilConnected(); + + await client2.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + await sleep(200); + + await Promise.all([ + client1.close(), + client2.close(), + server1.close(), + server2.close() + ]); +}); diff --git a/test/index.js b/test/index.js index 37e9b77..06dfc47 100644 --- a/test/index.js +++ b/test/index.js @@ -1,4 +1,5 @@ import './features/basic.js'; +import './features/notify.js'; import './features/cluster.js'; import './lib/driver/index.js'; From 706fd6f000fbfa5fc81799dea2af497bd9085ee4 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 15 Aug 2021 20:34:08 +1000 Subject: [PATCH 25/73] Add license and author information --- LICENSE | 661 +++++++++++++++++++++++++++++++++++++++++++++++++++ package.json | 8 +- 2 files changed, 667 insertions(+), 2 deletions(-) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..29ebfa5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. \ No newline at end of file diff --git a/package.json b/package.json index ab2c467..a9b58ce 100644 --- a/package.json +++ b/package.json @@ -8,8 +8,12 @@ "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 89 node test" }, "keywords": [], - "author": "", - "license": "ISC", + "author": { + "name": "Mark Wylde", + "email": "me@markwylde.com", + "url": "https://github.com/markwylde" + }, + "license": "AGPL-3.0", "dependencies": { "basictap": "^2.0.2", "chalk": "^4.1.2", From aa21da514ccdcd54a91caf570bcc89d7ed058e89 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 15 Aug 2021 20:34:45 +1000 Subject: [PATCH 26/73] Update yarn lock file --- yarn.lock | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index d3ddd3c..d2cc13f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -737,9 +737,9 @@ glob@^7.1.3, glob@^7.1.4: path-is-absolute "^1.0.0" globals@^13.6.0, globals@^13.9.0: - version "13.10.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.10.0.tgz#60ba56c3ac2ca845cfbf4faeca727ad9dd204676" - integrity sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g== + version "13.11.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" + integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== dependencies: type-fest "^0.20.2" @@ -843,9 +843,11 @@ is-arrayish@^0.2.1: integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= is-bigint@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.3.tgz#fc9d9e364210480675653ddaea0518528d49a581" - integrity sha512-ZU538ajmYJmzysE5yU4Y7uIrPQ2j704u+hXFiIPQExpqzzUbpe5jCPdTfmz7jXRxZdvjY3KZ3ZNenoXQovX+Dg== + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" is-boolean-object@^1.1.0: version "1.1.2" From acbd0d41598492ceec7a834847e1a0696c096251 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 15 Aug 2021 22:24:09 +1000 Subject: [PATCH 27/73] Replace crash with warn logging --- lib/controllers/external/lock.js | 1 + lib/controllers/internal/delete.js | 5 ++++- lib/controllers/internal/patch.js | 5 ++++- lib/controllers/internal/put.js | 6 +++++- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/controllers/external/lock.js b/lib/controllers/external/lock.js index 91d5f85..5476472 100644 --- a/lib/controllers/external/lock.js +++ b/lib/controllers/external/lock.js @@ -15,6 +15,7 @@ async function lockController (context, socketState, request, response) { .filter(node => node.connected) .map(node => { return node.client.send(c.LOCK, { + [c.INTERNAL]: context.thisNode.name, [c.LOCK_ID]: id, [c.LOCK_KEYS]: requestData[c.LOCK_KEYS] }) diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index e947a60..10e485b 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -1,7 +1,10 @@ +import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; +const log = logslot('canhazdb.controllers.internal.delete'); + async function deleteController (context, socketState, request, response) { const requestData = request.json(); @@ -35,7 +38,7 @@ async function deleteController (context, socketState, request, response) { response.reply(c.STATUS_BAD_REQUEST, { [c.ERROR]: error.message }); - throw error; + log.warn('bad request from server', { error }); } } diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index 4685d9d..defe8b2 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -1,7 +1,10 @@ +import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; +const log = logslot('canhazdb.controllers.internal.patch'); + async function patchController (context, socketState, request, response) { const requestData = request.json(); @@ -34,7 +37,7 @@ async function patchController (context, socketState, request, response) { response.reply(c.STATUS_BAD_REQUEST, { [c.ERROR]: error.message }); - throw error; + log.warn('bad request from server', { error }); } } diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index 1da6acf..07ceffd 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -1,7 +1,11 @@ +import logslot from 'logslot'; + import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; +const log = logslot('canhazdb.controllers.internal.put'); + async function putController (context, socketState, request, response) { const requestData = request.json(); @@ -34,7 +38,7 @@ async function putController (context, socketState, request, response) { response.reply(c.STATUS_BAD_REQUEST, { [c.ERROR]: error.message }); - throw error; + log.warn('bad request from server', { error }); } } From a544ae55e234db4546064a2a5b870796d03968cd Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Mon, 16 Aug 2021 20:11:56 +1000 Subject: [PATCH 28/73] Update dependencies --- package.json | 2 +- yarn.lock | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index a9b58ce..0d74466 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "dependencies": { "basictap": "^2.0.2", "chalk": "^4.1.2", - "lockbase": "^1.1.0", + "lockbase": "^1.1.1", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", diff --git a/yarn.lock b/yarn.lock index d2cc13f..d0af3f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -421,9 +421,9 @@ eslint-config-standard@16.0.3: integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== eslint-import-resolver-node@^0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.5.tgz#939bbb0f74e179e757ca87f7a4a890dabed18ac4" - integrity sha512-XMoPKjSpXbkeJ7ZZ9icLnJMTY5Mc1kZbCakHquaFsXPpyWOwK0TK6CODO+0ca54UoM9LKOxyUNnoVZRl8TeaAg== + version "0.3.6" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" + integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== dependencies: debug "^3.2.7" resolve "^1.20.0" @@ -1054,10 +1054,10 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lockbase@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/lockbase/-/lockbase-1.1.0.tgz#c40aa8639e508ad1832d43ae29962c6a4094cde5" - integrity sha512-EDsmQ7g0tGRF2iaUxJwgF6SxHZuES6effV8NHE7LguGC9+nEFmmN9PPpI6+rrB+s0gI5WNhMO9F5BREZ+CWZxw== +lockbase@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/lockbase/-/lockbase-1.1.1.tgz#d53f0197c8159c7721f817657e6ec8fc11b7765f" + integrity sha512-8liYSBwSRfNE8MxSZij5C3RDB9Z8LDXeMpAuAITh1VYzm3cTt+Er7T8mxiLepLUepfjw0lAR1FBSGNUtpBufGQ== dependencies: uuid "^8.3.2" From 517da880e8ea1088bb51b614775f3a87e95b6be3 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Mon, 16 Aug 2021 20:12:31 +1000 Subject: [PATCH 29/73] Implement locking --- lib/constants.js | 3 +- lib/controllers/external/count.js | 2 +- lib/controllers/external/delete.js | 2 +- lib/controllers/external/get.js | 2 +- lib/controllers/external/lock.js | 2 +- lib/controllers/external/patch.js | 6 +- lib/controllers/external/post.js | 23 ++- lib/controllers/external/put.js | 2 +- lib/controllers/external/unlock.js | 38 ++++ lib/controllers/index.js | 10 + lib/controllers/internal/count.js | 2 +- lib/controllers/internal/delete.js | 2 +- lib/controllers/internal/get.js | 2 +- lib/controllers/internal/info.js | 2 +- lib/controllers/internal/lock.js | 2 +- lib/controllers/internal/patch.js | 2 +- lib/controllers/internal/post.js | 36 ++-- lib/controllers/internal/put.js | 2 +- lib/controllers/internal/unlock.js | 22 ++ test/features/lock.js | 322 +++++++++++++++++++++++++++++ test/index.js | 1 + 21 files changed, 454 insertions(+), 31 deletions(-) create mode 100644 lib/controllers/external/unlock.js create mode 100644 lib/controllers/internal/unlock.js create mode 100644 test/features/lock.js diff --git a/lib/constants.js b/lib/constants.js index f247c2e..a1b95b0 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -41,7 +41,8 @@ const constants = { STATUS_OK: 120, STATUS_BAD_REQUEST: 121, STATUS_NOT_FOUND: 122, - STATUS_CREATED: 123 + STATUS_CREATED: 123, + STATUS_SERVER_ERROR: 124 }; Object.keys(constants).forEach(key => { diff --git a/lib/controllers/external/count.js b/lib/controllers/external/count.js index ed3d803..120ace2 100644 --- a/lib/controllers/external/count.js +++ b/lib/controllers/external/count.js @@ -4,7 +4,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.count'); -async function countController (context, socketState, request, response) { +async function countController (context, socket, request, response) { const requestData = request.json(); const results = await Promise.all( diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index 824e6ed..a1b1446 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -4,7 +4,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.delete'); -async function deleteController (context, socketState, request, response) { +async function deleteController (context, socket, request, response) { const requestData = request.json(); const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 3216935..dd04050 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -5,7 +5,7 @@ import orderByFields from '../../utils/orderByFields.js'; const log = logslot('canhazdb.controllers.external.get'); -async function getController (context, socketState, request, response) { +async function getController (context, socket, request, response) { const requestData = request.json(); const results = await Promise.all( diff --git a/lib/controllers/external/lock.js b/lib/controllers/external/lock.js index 5476472..34215ce 100644 --- a/lib/controllers/external/lock.js +++ b/lib/controllers/external/lock.js @@ -5,7 +5,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.lock'); -async function lockController (context, socketState, request, response) { +async function lockController (context, socket, request, response) { const requestData = request.json(); const id = uuid(); diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 5828433..6b72eb2 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -4,15 +4,17 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.patch'); -async function patchController (context, socketState, request, response) { +async function patchController (context, socket, request, response) { const requestData = request.json(); + const collectionId = requestData[c.COLLECTION_ID]; + const results = await Promise.all( context.nodes .filter(node => node.connected) .map(node => { return node.client.send(c.PATCH, { - [c.COLLECTION_ID]: requestData[c.COLLECTION_ID], + [c.COLLECTION_ID]: collectionId, [c.QUERY]: requestData[c.QUERY], [c.DATA]: requestData[c.DATA], [c.INTERNAL]: true diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index 8677732..ee88d41 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -1,8 +1,12 @@ -import c from '../../constants.js'; +import logslot from 'logslot'; import { v4 as uuid } from 'uuid'; + +import c from '../../constants.js'; import selectRandomItemsFromArray from '../../utils/selectRandomItemsFromArray.js'; -async function postController (context, socketState, request, response) { +const log = logslot('canhazdb.controllers.external.post'); + +async function postController (context, socket, request, response) { const nodes = selectRandomItemsFromArray( context.nodes, Math.min(context.settings.replicas, context.nodes.length) @@ -17,17 +21,30 @@ async function postController (context, socketState, request, response) { const collectionId = requestData[c.COLLECTION_ID]; - await Promise.all( + const results = await Promise.all( nodes.map(node => { return node.client.send(c.POST, { + [c.LOCK_ID]: requestData[c.LOCK_ID], + [c.LOCK_STRATEGY]: requestData[c.LOCK_STRATEGY], [c.COLLECTION_ID]: collectionId, [c.REPLICATED_NODES]: nodes.map(node => node.name), [c.DATA]: document, [c.INTERNAL]: true + }).catch(error => { + log.warn('node send failed', error); }); }) ); + const errors = results.filter(result => { + return !result || result.command !== c.STATUS_CREATED; + }); + + if (errors.length > 0) { + response.reply((errors[0] && errors[0].command) || c.STATUS_SERVER_ERROR, errors.data); + return; + } + response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 258eee8..2c10da4 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -4,7 +4,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.put'); -async function putController (context, socketState, request, response) { +async function putController (context, socket, request, response) { const requestData = request.json(); const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/controllers/external/unlock.js b/lib/controllers/external/unlock.js new file mode 100644 index 0000000..0222a2d --- /dev/null +++ b/lib/controllers/external/unlock.js @@ -0,0 +1,38 @@ +import logslot from 'logslot'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.controllers.external.unlock'); + +async function unlockController (context, socket, request, response) { + const requestData = request.json(); + + const results = await Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(c.UNLOCK, { + [c.INTERNAL]: context.thisNode.name, + [c.LOCK_ID]: requestData[c.LOCK_ID] + }) + .catch(error => { + log.warn(error); + }); + }) + ); + + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; + }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: requestData[c.LOCK_ID] + }); +} + +export default unlockController; diff --git a/lib/controllers/index.js b/lib/controllers/index.js index aa26dd0..785a371 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -6,6 +6,8 @@ import internalGet from './internal/get.js'; import internalPut from './internal/put.js'; import internalPatch from './internal/patch.js'; import internalDelete from './internal/delete.js'; +import internalLock from './internal/lock.js'; +import internalUnlock from './internal/unlock.js'; import externalPost from './external/post.js'; import externalCount from './external/count.js'; @@ -13,6 +15,8 @@ import externalGet from './external/get.js'; import externalPut from './external/put.js'; import externalPatch from './external/patch.js'; import externalDelete from './external/delete.js'; +import externalLock from './external/lock.js'; +import externalUnlock from './external/unlock.js'; import externalNotifyOn from './external/notifyOn.js'; import externalNotifyOff from './external/notifyOff.js'; @@ -30,6 +34,9 @@ const controllers = { [c.PATCH]: internalPatch, [c.DELETE]: internalDelete, + [c.LOCK]: internalLock, + [c.UNLOCK]: internalUnlock, + [c.NOTIFY]: internalNotify, [c.NOTIFY_ON]: internalNotifyOn, [c.NOTIFY_OFF]: internalNotifyOff @@ -42,6 +49,9 @@ const controllers = { [c.PATCH]: externalPatch, [c.DELETE]: externalDelete, + [c.LOCK]: externalLock, + [c.UNLOCK]: externalUnlock, + [c.NOTIFY_ON]: externalNotifyOn, [c.NOTIFY_OFF]: externalNotifyOff } diff --git a/lib/controllers/internal/count.js b/lib/controllers/internal/count.js index a6dba1d..ed56999 100644 --- a/lib/controllers/internal/count.js +++ b/lib/controllers/internal/count.js @@ -16,7 +16,7 @@ function isFirstConnectedReplica (connectedNodes, nodeName) { }; } -async function internalCountController (context, socketState, request, response) { +async function internalCountController (context, socket, request, response) { const requestData = request.json(); const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index 10e485b..0e77853 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -5,7 +5,7 @@ import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; const log = logslot('canhazdb.controllers.internal.delete'); -async function deleteController (context, socketState, request, response) { +async function deleteController (context, socket, request, response) { const requestData = request.json(); const query = requestData[c.QUERY]; diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index 48b1ee8..fb9cb8d 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -16,7 +16,7 @@ function isFirstConnectedReplica (connectedNodes, nodeName) { }; } -async function internalGetController (context, socketState, request, response) { +async function internalGetController (context, socket, request, response) { const requestData = request.json(); const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/controllers/internal/info.js b/lib/controllers/internal/info.js index 809262c..e87e65f 100644 --- a/lib/controllers/internal/info.js +++ b/lib/controllers/internal/info.js @@ -1,6 +1,6 @@ import c from '../../constants.js'; -async function infoController (context, socketState, request, response) { +async function infoController (context, socket, request, response) { const data = context.info.generators.reduce((data, generator) => { return { ...data, diff --git a/lib/controllers/internal/lock.js b/lib/controllers/internal/lock.js index a82ef15..c9b8346 100644 --- a/lib/controllers/internal/lock.js +++ b/lib/controllers/internal/lock.js @@ -1,6 +1,6 @@ import c from '../../constants.js'; -async function lockController (context, socketState, request, response) { +async function lockController (context, socket, request, response) { const requestData = request.json(); const keys = requestData[c.LOCK_KEYS]; diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index defe8b2..5226aa0 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -5,7 +5,7 @@ import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; const log = logslot('canhazdb.controllers.internal.patch'); -async function patchController (context, socketState, request, response) { +async function patchController (context, socket, request, response) { const requestData = request.json(); const data = requestData[c.DATA]; diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 2d1584f..05219c0 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -1,8 +1,11 @@ +import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; -async function postController (context, socketState, request, response) { +const log = logslot('canhazdb.controllers.internal.post'); + +async function postController (context, socket, request, response) { const requestData = request.json(); const data = requestData[c.DATA]; @@ -11,22 +14,29 @@ async function postController (context, socketState, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } + try { + if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { + throw Object.assign(new Error('lock prevented change'), { status: 409 }); + } - data._replicatedNodes = replicatedNodes.sort(); - const document = await context.driver.post(collectionId, data); + data._replicatedNodes = replicatedNodes.sort(); + const document = await context.driver.post(collectionId, data); - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); + // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - if (isDocumentPrimaryReplica(context, document)) { - context.emit('notify', `POST:/${collectionId}/${document.id}`, collectionId, document.id, request); - } + if (isDocumentPrimaryReplica(context, document)) { + context.emit('notify', `POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + } - response.reply(c.STATUS_CREATED, { - [c.DATA]: document - }); + response.reply(c.STATUS_CREATED, { + [c.DATA]: document + }); + } catch (error) { + response.reply(c.STATUS_BAD_REQUEST, { + [c.ERROR]: error.message + }); + log.warn('bad request from server', { error }); + } } export default postController; diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index 07ceffd..e5f0538 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -6,7 +6,7 @@ import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; const log = logslot('canhazdb.controllers.internal.put'); -async function putController (context, socketState, request, response) { +async function putController (context, socket, request, response) { const requestData = request.json(); const data = requestData[c.DATA]; diff --git a/lib/controllers/internal/unlock.js b/lib/controllers/internal/unlock.js new file mode 100644 index 0000000..8fca0bf --- /dev/null +++ b/lib/controllers/internal/unlock.js @@ -0,0 +1,22 @@ +import c from '../../constants.js'; + +async function unlockController (context, socket, request, response) { + const requestData = request.json(); + + const id = requestData[c.LOCK_ID]; + + const removedAtLeastOne = await context.locks.remove(id); + + if (!removedAtLeastOne) { + response.reply(c.STATUS_NOT_FOUND, { + [c.LOCK_ID]: id + }); + return; + } + + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: id + }); +} + +export default unlockController; diff --git a/test/features/lock.js b/test/features/lock.js new file mode 100644 index 0000000..2f122b7 --- /dev/null +++ b/test/features/lock.js @@ -0,0 +1,322 @@ +import test from 'basictap'; +import createTestServers from '../helpers/createTestServers.js'; + +import c from '../../lib/constants.js'; +import tcpocket from 'tcpocket'; + +test('lock: and post some data (success)', async t => { + t.plan(5); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const lockRequest = await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + const postRequest = await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID], + [c.DATA]: { + foo: 'bar' + } + }); + + const getRequest = await client.send(c.GET, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { id: postRequest.json()[c.DATA].id } + }); + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID] + }); + t.equal(unlockRequest.command, c.STATUS_OK); + + await client.close(); + await servers.close(); + + t.equal(postRequest.command, c.STATUS_CREATED); + + const getData = getRequest.json()[c.DATA]; + + t.deepEqual(getRequest.json()[c.DATA], [{ + id: getData[0].id ? getData[0].id : t.fail(), + foo: 'bar' + }]); + + t.equal(postRequest.command, c.STATUS_CREATED); + t.equal(getRequest.command, c.STATUS_OK); +}); + +test('unlock: delete lock with incorrect id', async t => { + t.plan(1); + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: 'wrong' + }); + + t.equal(unlockRequest.command, c.STATUS_NOT_FOUND); + + await client.close(); + await servers.close(); +}); + +test('lock: multiple happen in order', async t => { + t.plan(6); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + let firstFinished = false; + let secondFinished = false; + + const first = client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }).then(async lockRequest => { + const postRequest = await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID], + [c.DATA]: { + a: 1 + } + }); + + t.equal(postRequest.command, c.STATUS_CREATED); + + firstFinished = true; + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID] + }); + + t.equal(unlockRequest.command, c.STATUS_OK); + }); + + const second = client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }).then(async lockRequest => { + t.ok(firstFinished, 'first lock has finished before second starts'); + + const postRequest = await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID], + [c.DATA]: { + a: 2 + } + }); + + t.equal(postRequest.command, c.STATUS_CREATED); + + secondFinished = true; + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID] + }); + + t.equal(unlockRequest.command, c.STATUS_OK); + }); + + await Promise.all([first, second]); + + await client.close(); + await servers.close(); + + t.ok(secondFinished, 'second lock ran'); +}); + +test('lock: and post some data (conflict + fail)', async t => { + t.plan(2); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const lockRequest = await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + const postRequest = await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_STRATEGY]: c.LOCK_STRATEGY_FAIL, + [c.DATA]: { + foo: 'bar' + } + }); + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID] + }); + + t.equal(unlockRequest.command, c.STATUS_OK); + + await client.close(); + await servers.close(); + + t.equal(postRequest.command, c.STATUS_BAD_REQUEST); +}); + +test('lock: and post some data (conflict + wait)', async t => { + t.plan(5); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const lockRequest = await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID], + [c.LOCK_STRATEGY]: c.LOCK_STRATEGY_WAIT, + [c.DATA]: { + foo: 'bar' + } + }).then(async postRequest => { + const postDocument = postRequest.json()[c.DATA]; + + const getRequest = await client.send(c.GET, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { id: postDocument.id } + }); + + await servers.close(); + + t.equal(postRequest.command, c.STATUS_CREATED); + t.deepEqual(postDocument, { + id: postDocument.id ? postDocument.id : t.fail(), + foo: 'bar' + }); + + t.equal(postRequest.command, c.STATUS_CREATED); + t.equal(getRequest.command, c.STATUS_OK); + }); + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID] + }); + + t.equal(unlockRequest.command, c.STATUS_OK); +}); + +test('lock: all methods lock', async t => { + t.plan(4); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + let unlocked = false; + + const postRequest = await client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + const postDocument = postRequest.json()[c.DATA]; + + const lockRequest = await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + const putRequest = client.send(c.PUT, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { id: postDocument.id }, + [c.DATA]: { + foo: 'baz' + } + }); + + const patchRequest = client.send(c.PATCH, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { id: postDocument.id }, + [c.DATA]: { + foo: 'baz' + } + }); + + Promise.all([putRequest, patchRequest]) + .then(async (args) => { + const deleteRequest = await client.send(c.DELETE, { + [c.COLLECTION_ID]: 'tests', + [c.QUERY]: { id: postDocument.id } + }); + + await await servers.close(); + t.deepEqual(args.map(arg => arg.command), [c.STATUS_OK, c.STATUS_OK]); + t.equal(deleteRequest.command, c.STATUS_OK); + t.ok(unlocked, 'requests happened after unlock'); + }); + + const unlockRequest = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lockRequest.json()[c.LOCK_ID] + }); + + t.equal(unlockRequest.command, c.STATUS_OK); + + unlocked = true; +}); + +test('lock: and wait but client closes', async t => { + t.plan(1); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_STRATEGY]: c.LOCK_STRATEGY_WAIT, + [c.DATA]: { + foo: 'bar' + } + }).then(() => { + t.fail('should not have resolved successfully'); + }).catch(error => { + servers.close(); + t.equal(error.message, 'client disconnected'); + }); + + setTimeout(() => { + client.close(); + }, 200); +}); + +test('lock: and wait but node closes', async t => { + t.plan(1); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.LOCK_STRATEGY]: c.LOCK_STRATEGY_WAIT, + [c.DATA]: { + foo: 'bar' + } + }).then((postResponse) => { + t.equal(postResponse.command, c.STATUS_SERVER_ERROR); + client.close(); + }); + + setTimeout(() => { + servers.close(); + }, 500); +}); diff --git a/test/index.js b/test/index.js index 06dfc47..5263e07 100644 --- a/test/index.js +++ b/test/index.js @@ -1,5 +1,6 @@ import './features/basic.js'; import './features/notify.js'; +import './features/lock.js'; import './features/cluster.js'; import './lib/driver/index.js'; From a31030e54f7f3325cd478e7ec40c0df8bb991e30 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Thu, 19 Aug 2021 23:09:09 +1000 Subject: [PATCH 30/73] Implement online, connected and health status on nodes; Refactor to new module approach; Reject external and internal routes when unhealthy; Add collections module; Begin conflicts module; --- lib/constants.js | 74 ++++++------- lib/controllers/external/patch.js | 4 +- lib/controllers/external/post.js | 2 +- lib/controllers/index.js | 67 +++++++----- lib/controllers/internal/delete.js | 2 +- lib/controllers/internal/info.js | 1 + lib/controllers/internal/patch.js | 2 +- lib/controllers/internal/post.js | 2 +- lib/controllers/internal/put.js | 2 +- lib/createHandler.js | 5 +- lib/driver/index.js | 53 +++++++-- lib/index.js | 34 +++--- .../collections/documentCountCollector.js | 41 +++++++ lib/modules/collections/index.js | 63 +++++++++++ lib/modules/conflicts/index.js | 63 +++++++++++ lib/modules/notify/index.js | 4 +- lib/utils/join.js | 10 +- package.json | 8 +- test/features/basic.js | 2 +- test/features/cluster.js | 6 +- test/features/health.js | 74 +++++++++++++ test/features/notify.js | 14 +-- test/features/systemCollections.js | 102 ++++++++++++++++++ test/helpers/createExampleDocuments.js | 19 ++++ test/helpers/createTestServers.js | 29 ++++- test/index.js | 26 +++-- yarn.lock | 16 ++- 27 files changed, 607 insertions(+), 118 deletions(-) create mode 100644 lib/modules/collections/documentCountCollector.js create mode 100644 lib/modules/collections/index.js create mode 100644 lib/modules/conflicts/index.js create mode 100644 test/features/health.js create mode 100644 test/features/systemCollections.js create mode 100644 test/helpers/createExampleDocuments.js diff --git a/lib/constants.js b/lib/constants.js index a1b95b0..0226128 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -1,40 +1,41 @@ const constants = { INTERNAL: 2, - - COLLECTION_ID: 3, - RESOURCE_ID: 4, - - DATA: 5, - REPLICATED_NODES: 6, - - INFO: 7, - COUNT: 8, - GET: 9, - POST: 10, - PUT: 11, - PATCH: 12, - DELETE: 13, - - QUERY: 14, - FIELDS: 15, - LIMIT: 16, - ORDER: 17, - - NOTIFY: 18, - NOTIFY_ON: 19, - NOTIFY_OFF: 20, - NOTIFY_PATH: 21, - - LOCK: 22, - UNLOCK: 23, - LOCK_ID: 24, - LOCK_STRATEGY: 25, - LOCK_STRATEGY_FAIL: 26, - LOCK_STRATEGY_WAIT: 27, - LOCK_KEYS: 28, - - COMMAND: 40, - STATUS: 41, + SYSTEM: 3, + + COLLECTION_ID: 4, + RESOURCE_ID: 5, + + DATA: 6, + REPLICATED_NODES: 7, + + INFO: 8, + COUNT: 9, + GET: 10, + POST: 11, + PUT: 12, + PATCH: 13, + DELETE: 14, + + QUERY: 15, + FIELDS: 16, + LIMIT: 17, + ORDER: 18, + + NOTIFY: 19, + NOTIFY_ON: 20, + NOTIFY_OFF: 21, + NOTIFY_PATH: 22, + + LOCK: 23, + UNLOCK: 24, + LOCK_ID: 25, + LOCK_STRATEGY: 26, + LOCK_STRATEGY_FAIL: 27, + LOCK_STRATEGY_WAIT: 28, + LOCK_KEYS: 29, + + COMMAND: 30, + STATUS: 31, ERROR: 100, @@ -42,7 +43,8 @@ const constants = { STATUS_BAD_REQUEST: 121, STATUS_NOT_FOUND: 122, STATUS_CREATED: 123, - STATUS_SERVER_ERROR: 124 + STATUS_SERVER_ERROR: 124, + STATUS_SERVER_UNHEALTHY: 125 }; Object.keys(constants).forEach(key => { diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 6b72eb2..c060ab3 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -25,11 +25,11 @@ async function patchController (context, socket, request, response) { ); const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; + return !result || result.command !== c.STATUS_OK; }); if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); + response.reply((errors[0] && errors[0].command) || c.STATUS_SERVER_ERROR, errors.data); return; } diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index ee88d41..7d5c228 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -23,7 +23,7 @@ async function postController (context, socket, request, response) { const results = await Promise.all( nodes.map(node => { - return node.client.send(c.POST, { + return node.client && node.client.send(c.POST, { [c.LOCK_ID]: requestData[c.LOCK_ID], [c.LOCK_STRATEGY]: requestData[c.LOCK_STRATEGY], [c.COLLECTION_ID]: collectionId, diff --git a/lib/controllers/index.js b/lib/controllers/index.js index 785a371..49b45b6 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -24,36 +24,51 @@ import internalNotifyOn from './internal/notifyOn.js'; import internalNotifyOff from './internal/notifyOff.js'; import internalNotify from './internal/notify.js'; +function rejectWhenUnhealthy (fn) { + return (context, socket, request, response) => { + if (context.thisNode.status === 'unhealthy') { + response.reply(c.STATUS_SERVER_UNHEALTHY); + return; + } + + fn(context, socket, request, response); + }; +} + const controllers = { + system: { + [c.INFO]: internalInfo + }, + internal: { - [c.INFO]: internalInfo, - [c.POST]: internalPost, - [c.COUNT]: internalCount, - [c.GET]: internalGet, - [c.PUT]: internalPut, - [c.PATCH]: internalPatch, - [c.DELETE]: internalDelete, - - [c.LOCK]: internalLock, - [c.UNLOCK]: internalUnlock, - - [c.NOTIFY]: internalNotify, - [c.NOTIFY_ON]: internalNotifyOn, - [c.NOTIFY_OFF]: internalNotifyOff + [c.POST]: rejectWhenUnhealthy(internalPost), + [c.COUNT]: rejectWhenUnhealthy(internalCount), + [c.GET]: rejectWhenUnhealthy(internalGet), + [c.PUT]: rejectWhenUnhealthy(internalPut), + [c.PATCH]: rejectWhenUnhealthy(internalPatch), + [c.DELETE]: rejectWhenUnhealthy(internalDelete), + + [c.LOCK]: rejectWhenUnhealthy(internalLock), + [c.UNLOCK]: rejectWhenUnhealthy(internalUnlock), + + [c.NOTIFY]: rejectWhenUnhealthy(internalNotify), + [c.NOTIFY_ON]: rejectWhenUnhealthy(internalNotifyOn), + [c.NOTIFY_OFF]: rejectWhenUnhealthy(internalNotifyOff) }, + external: { - [c.POST]: externalPost, - [c.COUNT]: externalCount, - [c.GET]: externalGet, - [c.PUT]: externalPut, - [c.PATCH]: externalPatch, - [c.DELETE]: externalDelete, - - [c.LOCK]: externalLock, - [c.UNLOCK]: externalUnlock, - - [c.NOTIFY_ON]: externalNotifyOn, - [c.NOTIFY_OFF]: externalNotifyOff + [c.POST]: rejectWhenUnhealthy(externalPost), + [c.COUNT]: rejectWhenUnhealthy(externalCount), + [c.GET]: rejectWhenUnhealthy(externalGet), + [c.PUT]: rejectWhenUnhealthy(externalPut), + [c.PATCH]: rejectWhenUnhealthy(externalPatch), + [c.DELETE]: rejectWhenUnhealthy(externalDelete), + + [c.LOCK]: rejectWhenUnhealthy(externalLock), + [c.UNLOCK]: rejectWhenUnhealthy(externalUnlock), + + [c.NOTIFY_ON]: rejectWhenUnhealthy(externalNotifyOn), + [c.NOTIFY_OFF]: rejectWhenUnhealthy(externalNotifyOff) } }; diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index 0e77853..68421fb 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -28,7 +28,7 @@ async function deleteController (context, socket, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); primaryReplicaDocuments.forEach(document => { - context.emit('notify', `DELETE:/${collectionId}/${document.id}`, collectionId, document.id, request); + context.emit('notify', `DELETE:/${collectionId}/${document.id}`, 'DELETE', collectionId, document.id, request); }); response.reply(c.STATUS_OK, { diff --git a/lib/controllers/internal/info.js b/lib/controllers/internal/info.js index e87e65f..52cff18 100644 --- a/lib/controllers/internal/info.js +++ b/lib/controllers/internal/info.js @@ -11,6 +11,7 @@ async function infoController (context, socket, request, response) { response.reply(c.STATUS_OK, { [c.DATA]: { nodeName: context.options.nodeName, + status: context?.thisNode?.status || 'unhealthy', nodes: context.nodes.map(node => ({ host: node.host, port: node.port diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index 5226aa0..62cfcd9 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -27,7 +27,7 @@ async function patchController (context, socket, request, response) { await context.driver.patch(collectionId, data, query); primaryReplicaDocuments.forEach(document => { - context.emit('notify', `PATCH:/${collectionId}/${document.id}`, collectionId, document.id, request); + context.emit('notify', `PATCH:/${collectionId}/${document.id}`, 'PATCH', collectionId, document.id, request); }); response.reply(c.STATUS_OK, { diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 05219c0..ff37f95 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -25,7 +25,7 @@ async function postController (context, socket, request, response) { // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); if (isDocumentPrimaryReplica(context, document)) { - context.emit('notify', `POST:/${collectionId}/${document.id}`, collectionId, document.id, request); + context.emit('notify', `POST:/${collectionId}/${document.id}`, 'POST', collectionId, document.id, request); } response.reply(c.STATUS_CREATED, { diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index e5f0538..004f6c0 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -28,7 +28,7 @@ async function putController (context, socket, request, response) { await context.driver.put(collectionId, data, query); primaryReplicaDocuments.forEach(document => { - context.emit('notify', `PUT:/${collectionId}/${document.id}`, collectionId, document.id, request); + context.emit('notify', `PUT:/${collectionId}/${document.id}`, 'PUT', collectionId, document.id, request); }); response.reply(c.STATUS_OK, { diff --git a/lib/createHandler.js b/lib/createHandler.js index 408f438..5b13810 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -17,7 +17,10 @@ function createHandler (context) { const requestData = request.data ? request.json() : {}; - const origin = requestData[c.INTERNAL] ? 'internal' : 'external'; + const origin = requestData[c.SYSTEM] + ? 'system' + : requestData[c.INTERNAL] ? 'internal' : 'external'; + const controller = await controllers[origin][request.command]; if (!controller) { diff --git a/lib/driver/index.js b/lib/driver/index.js index e0af922..ac08535 100644 --- a/lib/driver/index.js +++ b/lib/driver/index.js @@ -3,11 +3,15 @@ import fs from 'fs/promises'; import { EJDB2 } from 'node-ejdb-lite'; import mqlToJql from 'mql-to-jql'; +import waitUntil from '../utils/waitUntil.js'; + const convert = mqlToJql.convert; const createQuery = mqlToJql.createQuery; async function createEjdbDriver (state) { let connections = {}; + let closed = false; + let activeQueries = 0; await fs.mkdir(state.options.dataDirectory, { recursive: true }); @@ -22,6 +26,8 @@ async function createEjdbDriver (state) { } async function count (collectionId, query) { + activeQueries = activeQueries + 1; + const ejdbQuery = convert({ query }); const queryWithCount = { @@ -34,10 +40,14 @@ async function createEjdbDriver (state) { const count = await q.scalarInt(); + activeQueries = activeQueries - 1; + return count; } async function get (collectionId, query, fields, order, limit) { + activeQueries = activeQueries + 1; + if (fields && !fields.includes('id')) { fields.push('id'); } @@ -48,10 +58,14 @@ async function createEjdbDriver (state) { const q = createQuery(db, collectionId, ejdbQuery); const list = await q.list(); + activeQueries = activeQueries - 1; + return list.map(item => item.json); } async function post (collectionId, document) { + activeQueries = activeQueries + 1; + const db = await getDatabaseConnection(collectionId); const insertableRecord = { @@ -64,10 +78,14 @@ async function createEjdbDriver (state) { await db.put(collectionId, JSON.stringify(insertableRecord)); + activeQueries = activeQueries - 1; + return insertableRecord; } async function put (collectionId, document, query) { + activeQueries = activeQueries + 1; + const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -90,10 +108,14 @@ async function createEjdbDriver (state) { await Promise.all(promises); + activeQueries = activeQueries - 1; + return { changes: promises.length }; } async function patch (collectionId, document, query) { + activeQueries = activeQueries + 1; + const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -118,10 +140,14 @@ async function createEjdbDriver (state) { await Promise.all(promises); + activeQueries = activeQueries - 1; + return { changes: promises.length }; } async function del (collectionId, query) { + activeQueries = activeQueries + 1; + const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -133,10 +159,15 @@ async function createEjdbDriver (state) { await Promise.all(promises); + activeQueries = activeQueries - 1; + return { changes: promises.length }; } async function close () { + await waitUntil(() => activeQueries === 0); + + closed = true; for (const connection in connections) { if (connections[connection]) { await (await connections[connection]).close(); @@ -145,13 +176,23 @@ async function createEjdbDriver (state) { connections = {}; } + function throwIfClosed (fn) { + return (...args) => { + if (closed) { + throw new Error('canhazdb.driver: this instance is closed'); + } + + return fn(...args); + }; + } + return { - count, - get, - put, - post, - patch, - del, + count: throwIfClosed(count), + get: throwIfClosed(get), + put: throwIfClosed(put), + post: throwIfClosed(post), + patch: throwIfClosed(patch), + del: throwIfClosed(del), close }; diff --git a/lib/index.js b/lib/index.js index 4f83b3b..f959639 100644 --- a/lib/index.js +++ b/lib/index.js @@ -5,21 +5,27 @@ import EventEmitter from 'events'; import prepareOptions from './prepareOptions.js'; import createHandler from './createHandler.js'; import driver from './driver/index.js'; -import waitUntil from './utils/waitUntil.js'; import join from './utils/join.js'; import notifyModule from './modules/notify/index.js'; +import collectionsModule from './modules/collections/index.js'; import c from './constants.js'; +import conflictsModule from './modules/conflicts/index.js'; const log = logslot('canhazdb.server'); async function persistNode (context, node) { + if (context.closed) { + return; + } + const existingRecords = await context.driver.get('system.nodes', { name: node.name }); if (existingRecords.length === 0) { + process.context = context; await context.driver.post('system.nodes', { name: node.name, host: node.host, @@ -52,6 +58,8 @@ async function canhazdb (rawOptions) { ); notifyModule(context); + collectionsModule(context); + conflictsModule(context); context.driver = await driver(context); @@ -77,6 +85,9 @@ async function canhazdb (rawOptions) { await Promise.all( context.nodes.map(async node => { + if (!node.client) { + return; + } const result = await node.client.send(c.INFO, { [c.DATA]: { nodes: context.nodes.map(node => ({ @@ -84,7 +95,7 @@ async function canhazdb (rawOptions) { port: node.port })) }, - [c.INTERNAL]: true + [c.SYSTEM]: true }).catch(error => { log.warn('syncNodesInfo: client disconnected', { error: error.code }); return null; @@ -96,12 +107,18 @@ async function canhazdb (rawOptions) { const resultData = result.json(); - context.emit('node.infoReceived', resultData[c.DATA]); - - node.info = resultData; + node.info = resultData[c.DATA]; node.name = resultData[c.DATA].nodeName; + node.status = resultData[c.DATA].status; + + if (node.name) { + node.online = true; + } persistNode(context, node); + + context.thisNode = context.nodes.find(node => node.name === context.options.nodeName); + context.emit('node.infoReceived', node); }) ); @@ -109,11 +126,6 @@ async function canhazdb (rawOptions) { } syncNodesInfo(); - await waitUntil(() => { - const nodesWithName = context.nodes.filter(node => node.persisted); - return context.nodes.length === nodesWithName.length; - }); - context.close = async function () { context.closed = true; @@ -134,8 +146,6 @@ async function canhazdb (rawOptions) { ...context.options.tls }; - context.thisNode = context.nodes.find(node => node.name === context.options.nodeName); - return context; } diff --git a/lib/modules/collections/documentCountCollector.js b/lib/modules/collections/documentCountCollector.js new file mode 100644 index 0000000..8320e72 --- /dev/null +++ b/lib/modules/collections/documentCountCollector.js @@ -0,0 +1,41 @@ +import debarrel from 'debarrel'; + +function documentCountCollector (handler) { + const cache = {}; + let processing = false; + + async function processCache () { + if (processing) { + setTimeout(() => processCache(), 25); + return; + } + + processing = true; + + await handler(cache); + + processing = false; + } + + const watch = debarrel( + () => processCache(), + { + minimumFlushTime: 25, + maximumFlushTime: 100 + } + ); + + const add = watch((collectionId, count) => { + const collectionMetadata = cache[collectionId] = cache[collectionId] || { + documentCountAdd: 0 + }; + + collectionMetadata.documentCountAdd = collectionMetadata.documentCountAdd + count; + }); + + return { + add + }; +} + +export default documentCountCollector; diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js new file mode 100644 index 0000000..cdeb0e8 --- /dev/null +++ b/lib/modules/collections/index.js @@ -0,0 +1,63 @@ +import documentCountCollector from './documentCountCollector.js'; + +import c from '../../constants.js'; + +async function updateCollectionByAmount (context, collectionId, cachedItem) { + const collectionsQuery = await context.thisNode.client.send(c.GET, { + [c.COLLECTION_ID]: 'system.collections', + [c.QUERY]: { collectionId: collectionId } + }); + + const collection = collectionsQuery.json()[c.DATA][0]; + + if (collection) { + await context.thisNode.client.send(c.PATCH, { + [c.COLLECTION_ID]: 'system.collections', + [c.QUERY]: { collectionId: collectionId }, + [c.DATA]: { + documentCount: collection.documentCount + cachedItem.documentCountAdd + } + }); + } else { + await context.thisNode.client.send(c.POST, { + [c.COLLECTION_ID]: 'system.collections', + [c.DATA]: { + collectionId, + documentCount: cachedItem.documentCountAdd + } + }); + } +} + +function collectionsModule (context) { + const collector = documentCountCollector(async function (cache) { + if (context.closed) { + return; + } + + const promises = Object.keys(cache).map(async collectionId => { + const promise = updateCollectionByAmount(context, collectionId, cache[collectionId]) + .catch((error) => { + if (!context.closed) { + throw error; + } + }); + delete cache[collectionId]; + return promise; + }); + + await Promise.all(promises); + }); + + context.on('notify', (notifyPath, method, collectionId) => { + if (method === 'POST') { + collector.add(collectionId, 1); + } + + if (method === 'DELETE') { + collector.add(collectionId, -1); + } + }); +} + +export default collectionsModule; diff --git a/lib/modules/conflicts/index.js b/lib/modules/conflicts/index.js new file mode 100644 index 0000000..9148d69 --- /dev/null +++ b/lib/modules/conflicts/index.js @@ -0,0 +1,63 @@ +function syncServerHealth (context) { + const thisNodeHasConflicts = context.conflicts.items + .some(conflict => conflict.nodeName === context.thisNode.name); + + if (thisNodeHasConflicts) { + context.thisNode.status = 'unhealthy'; + console.log(` + THERE ARE CONFLICTS, BUT WE HAVE NOT IMPLEMENTED + RESOLVING THEM YET. OOPS! + `); + return; + } + + const totalNodes = context.nodes.length; + const onlineNodes = context.nodes.filter(node => node.online).length; + const percentageOnline = onlineNodes / totalNodes; + + if (percentageOnline > 0.5) { + context.thisNode.status = 'healthy'; + } else { + context.thisNode.status = 'unhealthy'; + } +} + +function upsertConflict (context, conflictCandidate) { + const existing = context.conflicts.find(conflict => conflict.id === conflictCandidate.id); + + if (existing) { + return; + } + + context.conflicts.items.push(conflictCandidate); +} + +function conflictsModule (context) { + context.conflicts = { + items: [] + }; + + context.on('node.infoReceived', function () { + if (!context.thisNode) { + return; + } + + context.nodes + .filter(node => { + return node.online; + }) + .forEach(node => { + node.info.conflicts.forEach(upsertConflict.bind(null, context)); + }); + + syncServerHealth(context); + }); + + context.info.generators.push(() => { + return { + conflicts: context.conflicts.items + }; + }); +} + +export default conflictsModule; diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index f8f78d6..3a9aa17 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -50,8 +50,8 @@ function notifyModule (context) { }; }); - context.on('node.infoReceived', infoData => { - infoData.internalNotifiers.forEach(newNotifier => { + context.on('node.infoReceived', node => { + node.info.internalNotifiers.forEach(newNotifier => { const existingNotifier = context.notify.internalNotifiers.find( notifier => notifier.nodeName === newNotifier.nodeName && notifier.path === newNotifier.path ); diff --git a/lib/utils/join.js b/lib/utils/join.js index eba0655..f176a6a 100644 --- a/lib/utils/join.js +++ b/lib/utils/join.js @@ -17,6 +17,7 @@ function join (context, host, port) { const node = { connected: false, + online: false, host, port, client: tcpocket.createClient({ @@ -33,6 +34,7 @@ function join (context, host, port) { function handleError (error) { node.connected = false; + node.online = false; if (node.closing || context.closed) { return; @@ -53,8 +55,11 @@ function join (context, host, port) { }); node.client.on('close', () => { + node.connected = false; + node.online = false; context.emit('node.disconnected', node); handleError(Object.assign(new Error('client closed'), { code: 'CLOSED' })); + delete node.client; }); node.client.on('error', handleError); @@ -63,9 +68,12 @@ function join (context, host, port) { return !(i.host === host && i.port === port); }); + node.status = 'unhealthy'; + node.close = () => { + node.online = false; node.closing = true; - return node.client.close(); + return node.client && node.client.close(); }; context.nodes.push(node); diff --git a/package.json b/package.json index 0d74466..ab2ceac 100644 --- a/package.json +++ b/package.json @@ -15,20 +15,22 @@ }, "license": "AGPL-3.0", "dependencies": { - "basictap": "^2.0.2", "chalk": "^4.1.2", + "debarrel": "^1.0.2", "lockbase": "^1.1.1", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.3.1" + "tcpocket": "^7.3.1", + "uuid": "^8.3.2" }, "devDependencies": { + "basictap": "^2.0.2", "c8": "^7.8.0", "eslint": "^7.32.0", "semistandard": "^16.0.1", - "uuid": "^8.3.2" + "wtfnode": "^0.9.1" } } diff --git a/test/features/basic.js b/test/features/basic.js index d9b966b..2d60ce8 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -45,7 +45,7 @@ test('info', async t => { await client.waitUntilConnected(); const result = await client.send(c.INFO, { - [c.INTERNAL]: true + [c.SYSTEM]: true }); t.equal(result.command, c.STATUS_OK, 'response had 200 status'); diff --git a/test/features/cluster.js b/test/features/cluster.js index 163aaeb..81acee9 100644 --- a/test/features/cluster.js +++ b/test/features/cluster.js @@ -63,10 +63,10 @@ test('cluster - post', async t => { }); test('cluster - post - two goes down', async t => { - t.plan(11); + t.plan(12); const servers = await createTestServers(3); - const client = tcpocket.createClient(servers[0].clientConfig); + let client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); const postResponses = await Promise.all([ @@ -120,6 +120,8 @@ test('cluster - post - two goes down', async t => { await client.close(); await servers.close(); + + t.pass(); }); test('cluster - syncing - node goes down', async t => { diff --git a/test/features/health.js b/test/features/health.js new file mode 100644 index 0000000..c0595af --- /dev/null +++ b/test/features/health.js @@ -0,0 +1,74 @@ +import test from 'basictap'; +import { v4 as uuid } from 'uuid'; +import { getNewPort, tls } from '../helpers/createTestServers.js'; + +import c from '../../lib/constants.js'; +import tcpocket from 'tcpocket'; +import canhazdb from '../../lib/index.js'; + +test('health - info system route works as intended', async t => { + t.plan(4); + + const port = getNewPort(); + const nodeName = uuid(); + + const server = await canhazdb({ + dataDirectory: './canhazdata/' + nodeName, + nodeName: nodeName, + host: 'localhost', + port: port, + join: ['localhost:10001'], + tls + }); + + const client = tcpocket.createClient(server.clientConfig); + await client.waitUntilConnected(); + + const result = await client.send(c.INFO, { + [c.SYSTEM]: true + }); + + const resultData = result.json()[c.DATA]; + + t.equal(server.thisNode.status, 'unhealthy', 'server had unhealthy status'); + + t.equal(result.command, c.STATUS_OK, 'response had 200 status'); + t.equal(resultData.nodeName.length, 36, 'nodeName has correct length'); + t.equal(resultData.nodes.length, 2, 'two nodes where returned'); + + await Promise.all([ + client.close(), + server.close() + ]); +}); + +test('health - unhealthy nodes reject external routes', async t => { + t.plan(2); + + const port = getNewPort(); + const nodeName = uuid(); + + const server = await canhazdb({ + dataDirectory: './canhazdata/' + nodeName, + nodeName: nodeName, + host: 'localhost', + port: port, + join: ['localhost:10001'], + tls + }); + + const client = tcpocket.createClient(server.clientConfig); + await client.waitUntilConnected(); + + const result = await client.send(c.GET, { + [c.COLLECTION_ID]: 'test' + }); + + t.equal(result.command, c.STATUS_SERVER_UNHEALTHY, 'response had offline status'); + t.equal(result.data, undefined); + + await Promise.all([ + client.close(), + server.close() + ]); +}); diff --git a/test/features/notify.js b/test/features/notify.js index b84a1e2..92e7cc1 100644 --- a/test/features/notify.js +++ b/test/features/notify.js @@ -31,7 +31,7 @@ test('notify', async t => { client.on('message', ({ command, data }) => { t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); const notifyResponse = await client.send(c.NOTIFY_ON, { @@ -78,7 +78,7 @@ test('notify - post', async t => { client.on('message', ({ command, data }) => { t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); const notifyResponse = await client.send(c.NOTIFY_ON, { @@ -112,7 +112,7 @@ test('notify - put', async t => { client.on('message', ({ command, data }) => { t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"PUT:/tests/' + documentId)); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"PUT:/tests/' + documentId)); }); const notifyResponse = await client.send(c.NOTIFY_ON, { @@ -149,7 +149,7 @@ test('notify - patch', async t => { client.on('message', ({ command, data }) => { t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"PATCH:/tests/' + documentId)); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"PATCH:/tests/' + documentId)); }); const notifyResponse = await client.send(c.NOTIFY_ON, { @@ -186,7 +186,7 @@ test('notify - delete', async t => { client.on('message', ({ command, data }) => { t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"DELETE:/tests/' + documentId)); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"DELETE:/tests/' + documentId)); }); const notifyResponse = await client.send(c.NOTIFY_ON, { @@ -228,7 +228,7 @@ test('notify - client disconnections clean up', async t => { await servers.close(); }); -test('notify - reconnections', async t => { +test.skip('notify - reconnections', async t => { t.plan(2); let [server1, server2] = await createTestServers(2); @@ -239,7 +239,7 @@ test('notify - reconnections', async t => { client1.on('message', ({ command, data }) => { t.equal(command, c.NOTIFY); - t.ok(data.toString().startsWith('{"5":"POST:/tests/')); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); await client1.send(c.NOTIFY_ON, { diff --git a/test/features/systemCollections.js b/test/features/systemCollections.js new file mode 100644 index 0000000..8829bf1 --- /dev/null +++ b/test/features/systemCollections.js @@ -0,0 +1,102 @@ +import test from 'basictap'; +import createTestServers from '../helpers/createTestServers.js'; + +import c from '../../lib/constants.js'; +import tcpocket from 'tcpocket'; + +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + +function createExampleDocuments (client, count, extraData) { + const counts = Array(count).fill('').map((_, index) => index); + + return Promise.all( + counts.map(count => { + return client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + ...extraData, + foo: 'bar' + (count + 1) + } + }); + }) + ); +} + +test('systemCollections - post increments documentCount', async t => { + t.plan(6); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const postResponses = await createExampleDocuments(client, 3); + + t.equal(postResponses[0].command, c.STATUS_CREATED, 'has correct status'); + + await sleep(250); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'system.collections', + [c.QUERY]: { collectionId: 'tests' } + }); + + const documents = getResponse.json()[c.DATA]; + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(documents.length, 1, 'returned 1 document'); + t.ok(documents[0].id, 'had id'); + t.equal(documents[0].collectionId, 'tests', 'collectionId is tests'); + t.equal(documents[0].documentCount, 3, 'documentCount is 3'); + + await client.close(); + await servers.close(); +}); + +test('systemCollections - post batch increments documentCount', async t => { + t.plan(10); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + // First batch + { + await createExampleDocuments(client, 3); + await sleep(250); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'system.collections', + [c.QUERY]: { collectionId: 'tests' } + }); + + const documents = getResponse.json()[c.DATA]; + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(documents.length, 1, 'returned 1 document'); + t.ok(documents[0].id, 'had id'); + t.equal(documents[0].collectionId, 'tests', 'collectionId is tests'); + t.equal(documents[0].documentCount, 3, 'documentCount is 3'); + } + + // Second batch + { + await createExampleDocuments(client, 3); + await sleep(250); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'system.collections', + [c.QUERY]: { collectionId: 'tests' } + }); + + const documents = getResponse.json()[c.DATA]; + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(documents.length, 1, 'returned 1 document'); + t.ok(documents[0].id, 'had id'); + t.equal(documents[0].collectionId, 'tests', 'collectionId is tests'); + t.equal(documents[0].documentCount, 6, 'documentCount is 6'); + } + + await client.close(); + await servers.close(); +}); diff --git a/test/helpers/createExampleDocuments.js b/test/helpers/createExampleDocuments.js new file mode 100644 index 0000000..0d44db4 --- /dev/null +++ b/test/helpers/createExampleDocuments.js @@ -0,0 +1,19 @@ +import c from '../../lib/constants.js'; + +function createExampleDocuments (client, count, extraData) { + const counts = Array(count).fill('').map((_, index) => index); + + return Promise.all( + counts.map(count => { + return client.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + ...extraData, + foo: 'bar' + (count + 1) + } + }); + }) + ); +} + +export default createExampleDocuments; diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index 8b67c5e..360dd1a 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -1,4 +1,5 @@ import fs from 'fs'; +import { promisify } from 'util'; import { v4 as uuid } from 'uuid'; import canhazdb from '../../lib/index.js'; @@ -7,7 +8,7 @@ try { } catch (error) {} fs.mkdirSync('./canhazdata'); -const tls = { +export const tls = { key: fs.readFileSync('./certs/localhost.privkey.pem'), cert: fs.readFileSync('./certs/localhost.cert.pem'), ca: [fs.readFileSync('./certs/ca.cert.pem')], @@ -15,12 +16,28 @@ const tls = { }; let lastUsedPort = 11000; -const getNewPort = () => { +export const getNewPort = () => { lastUsedPort = lastUsedPort + 1; return lastUsedPort; }; -async function createTestServers (count) { +const waitUntil = promisify(function (fn, cb) { + const result = fn(); + if (!result) { + setTimeout(() => waitUntil(fn, cb)); + return; + } + + cb(); +}); + +const defaultOptions = { + waitUntilOnline: true +}; + +async function createTestServers (count, options = {}) { + options = Object.assign({}, defaultOptions, options); + const join = []; const servers = await Promise.all( @@ -42,6 +59,12 @@ async function createTestServers (count) { server.recreate = create; + if (options.waitUntilOnline) { + await waitUntil(() => { + return server.thisNode && server.thisNode.status === 'healthy'; + }); + } + return server; }; diff --git a/test/index.js b/test/index.js index 5263e07..5a49d71 100644 --- a/test/index.js +++ b/test/index.js @@ -1,10 +1,20 @@ -import './features/basic.js'; -import './features/notify.js'; -import './features/lock.js'; -import './features/cluster.js'; +import wtfnode from 'wtfnode'; +import basictap from 'basictap'; -import './lib/driver/index.js'; -import './lib/prepareOptions.js'; +wtfnode.init(); -// import basictap from 'basictap'; -// basictap.maximumConcurrentTests = Infinity; +basictap.on('finish', () => { + setTimeout(() => { + wtfnode.dump(); + }, 500); +}); + +import('./features/basic.js'); +// import('./features/cluster.js'); +import('./features/health.js'); +import('./features/notify.js'); +import('./features/lock.js'); +import('./features/systemCollections.js'); + +import('./lib/driver/index.js'); +import('./lib/prepareOptions.js'); diff --git a/yarn.lock b/yarn.lock index d0af3f5..7046477 100644 --- a/yarn.lock +++ b/yarn.lock @@ -292,6 +292,11 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2: shebang-command "^2.0.0" which "^2.0.1" +debarrel@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/debarrel/-/debarrel-1.0.2.tgz#89a51733f840fb10580e3e21914220c32ba89e41" + integrity sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g== + debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" @@ -863,9 +868,9 @@ is-callable@^1.1.4, is-callable@^1.2.3: integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== is-core-module@^2.2.0, is-core-module@^2.4.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.5.0.tgz#f754843617c70bfd29b7bd87327400cda5c18491" - integrity sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg== + version "2.6.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.6.0.tgz#d7553b2526fe59b92ba3e40c8df757ec8a709e19" + integrity sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ== dependencies: has "^1.0.3" @@ -1786,6 +1791,11 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= +wtfnode@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/wtfnode/-/wtfnode-0.9.1.tgz#c385679d2df6fb4d64d734eeeaab767fcee3e0d3" + integrity sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA== + xdg-basedir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" From 0ae72909be6a23a60a8b303b81a8f2c26fc18c73 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 20 Aug 2021 21:57:28 +1000 Subject: [PATCH 31/73] Improve error handling flow --- lib/constants.js | 4 +- lib/controllers/external/get.js | 11 +- lib/controllers/index.js | 4 +- lib/controllers/internal/delete.js | 43 +-- lib/controllers/internal/get.js | 22 +- lib/controllers/internal/patch.js | 40 +-- lib/controllers/internal/post.js | 33 +- lib/controllers/internal/put.js | 41 +-- lib/createHandler.js | 36 +- lib/index.js | 16 +- lib/modules/notify/index.js | 10 +- lib/utils/isLockedOrWait.js | 18 +- lib/utils/join.js | 14 +- package.json | 2 +- test/features/cluster.js | 2 +- test/features/lock.js | 8 +- yarn.lock | 527 +++++++++++++++-------------- 17 files changed, 422 insertions(+), 409 deletions(-) diff --git a/lib/constants.js b/lib/constants.js index 0226128..0682ce6 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -44,7 +44,9 @@ const constants = { STATUS_NOT_FOUND: 122, STATUS_CREATED: 123, STATUS_SERVER_ERROR: 124, - STATUS_SERVER_UNHEALTHY: 125 + STATUS_SERVER_UNHEALTHY: 125, + STATUS_SERVER_CLOSED: 126, + STATUS_LOCKED: 127 }; Object.keys(constants).forEach(key => { diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index dd04050..3b3255d 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -21,6 +21,9 @@ async function getController (context, socket, request, response) { [c.INTERNAL]: true }).catch(error => { log.warn(error); + return { + command: c.STATUS_SERVER_ERROR + }; }); }) ); @@ -29,14 +32,16 @@ async function getController (context, socket, request, response) { return result && result.command !== c.STATUS_OK; }); - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); + if (errors.length > context.settings.replicas - 1) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: 'Not enough nodes responded successfully' + }); return; } let documents = results + .filter(result => result.command === c.STATUS_OK) .flatMap(result => result && result.json()[c.DATA]) - .filter(item => !!item) .map(item => { delete item._replicatedNodes; return item; diff --git a/lib/controllers/index.js b/lib/controllers/index.js index 49b45b6..20d717a 100644 --- a/lib/controllers/index.js +++ b/lib/controllers/index.js @@ -25,13 +25,13 @@ import internalNotifyOff from './internal/notifyOff.js'; import internalNotify from './internal/notify.js'; function rejectWhenUnhealthy (fn) { - return (context, socket, request, response) => { + return async (context, socket, request, response) => { if (context.thisNode.status === 'unhealthy') { response.reply(c.STATUS_SERVER_UNHEALTHY); return; } - fn(context, socket, request, response); + return fn(context, socket, request, response); }; } diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index 68421fb..aa93a30 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -13,33 +13,22 @@ async function deleteController (context, socket, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - try { - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const foundDocuments = await context.driver.get(collectionId, query); - const primaryReplicaDocuments = foundDocuments.filter( - isDocumentPrimaryReplica.bind(null, context) - ); - - await context.driver.del(collectionId, query); - - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - - primaryReplicaDocuments.forEach(document => { - context.emit('notify', `DELETE:/${collectionId}/${document.id}`, 'DELETE', collectionId, document.id, request); - }); - - response.reply(c.STATUS_OK, { - [c.DATA]: primaryReplicaDocuments.length - }); - } catch (error) { - response.reply(c.STATUS_BAD_REQUEST, { - [c.ERROR]: error.message - }); - log.warn('bad request from server', { error }); - } + await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + + const foundDocuments = await context.driver.get(collectionId, query); + const primaryReplicaDocuments = foundDocuments.filter( + isDocumentPrimaryReplica.bind(null, context) + ); + + await context.driver.del(collectionId, query); + + primaryReplicaDocuments.forEach(document => { + context.emit('notify', `DELETE:/${collectionId}/${document.id}`, 'DELETE', collectionId, document.id, request); + }); + + response.reply(c.STATUS_OK, { + [c.DATA]: primaryReplicaDocuments.length + }); } export default deleteController; diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index fb9cb8d..3861a1e 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -29,23 +29,17 @@ async function internalGetController (context, socket, request, response) { fields.push('_replicatedNodes'); } - try { - const documents = await context.driver.get(collectionId, query, fields, order, limit); + const documents = await context.driver.get(collectionId, query, fields, order, limit); - const connectedNodes = context.nodes.filter(node => node.connected); + const connectedNodes = context.nodes.filter(node => node.connected); - const filteredDocuments = documents.filter( - isFirstConnectedReplica(connectedNodes, context.thisNode.name) - ); + const filteredDocuments = documents.filter( + isFirstConnectedReplica(connectedNodes, context.thisNode.name) + ); - response.reply(c.STATUS_OK, { - [c.DATA]: filteredDocuments - }); - } catch (error) { - response.reply(c.STATUS_BAD_REQUEST, { - [c.ERROR]: error.message - }); - } + response.reply(c.STATUS_OK, { + [c.DATA]: filteredDocuments + }); } export default internalGetController; diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index 62cfcd9..80db510 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -14,31 +14,21 @@ async function patchController (context, socket, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - try { - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const foundDocuments = await context.driver.get(collectionId, query); - const primaryReplicaDocuments = foundDocuments.filter( - isDocumentPrimaryReplica.bind(null, context) - ); - - await context.driver.patch(collectionId, data, query); - - primaryReplicaDocuments.forEach(document => { - context.emit('notify', `PATCH:/${collectionId}/${document.id}`, 'PATCH', collectionId, document.id, request); - }); - - response.reply(c.STATUS_OK, { - [c.DATA]: primaryReplicaDocuments.length - }); - } catch (error) { - response.reply(c.STATUS_BAD_REQUEST, { - [c.ERROR]: error.message - }); - log.warn('bad request from server', { error }); - } + await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + const foundDocuments = await context.driver.get(collectionId, query); + const primaryReplicaDocuments = foundDocuments.filter( + isDocumentPrimaryReplica.bind(null, context) + ); + + await context.driver.patch(collectionId, data, query); + + primaryReplicaDocuments.forEach(document => { + context.emit('notify', `PATCH:/${collectionId}/${document.id}`, 'PATCH', collectionId, document.id, request); + }); + + response.reply(c.STATUS_OK, { + [c.DATA]: primaryReplicaDocuments.length + }); } export default patchController; diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index ff37f95..8830c55 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -14,29 +14,18 @@ async function postController (context, socket, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - try { - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - data._replicatedNodes = replicatedNodes.sort(); - const document = await context.driver.post(collectionId, data); - - // context.updateCollectionMetadata(collectionId, { documentCountAdd: 1 }); - - if (isDocumentPrimaryReplica(context, document)) { - context.emit('notify', `POST:/${collectionId}/${document.id}`, 'POST', collectionId, document.id, request); - } - - response.reply(c.STATUS_CREATED, { - [c.DATA]: document - }); - } catch (error) { - response.reply(c.STATUS_BAD_REQUEST, { - [c.ERROR]: error.message - }); - log.warn('bad request from server', { error }); + await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + + data._replicatedNodes = replicatedNodes.sort(); + const document = await context.driver.post(collectionId, data); + + if (isDocumentPrimaryReplica(context, document)) { + context.emit('notify', `POST:/${collectionId}/${document.id}`, 'POST', collectionId, document.id, request); } + + response.reply(c.STATUS_CREATED, { + [c.DATA]: document + }); } export default postController; diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index 004f6c0..d92b6d7 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -15,31 +15,22 @@ async function putController (context, socket, request, response) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - try { - if (await isLockedOrWait(context.locks, [collectionId], lockId, waitForUnlock)) { - throw Object.assign(new Error('lock prevented change'), { status: 409 }); - } - - const foundDocuments = await context.driver.get(collectionId, query); - const primaryReplicaDocuments = foundDocuments.filter( - isDocumentPrimaryReplica.bind(null, context) - ); - - await context.driver.put(collectionId, data, query); - - primaryReplicaDocuments.forEach(document => { - context.emit('notify', `PUT:/${collectionId}/${document.id}`, 'PUT', collectionId, document.id, request); - }); - - response.reply(c.STATUS_OK, { - [c.DATA]: primaryReplicaDocuments.length - }); - } catch (error) { - response.reply(c.STATUS_BAD_REQUEST, { - [c.ERROR]: error.message - }); - log.warn('bad request from server', { error }); - } + await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + + const foundDocuments = await context.driver.get(collectionId, query); + const primaryReplicaDocuments = foundDocuments.filter( + isDocumentPrimaryReplica.bind(null, context) + ); + + await context.driver.put(collectionId, data, query); + + primaryReplicaDocuments.forEach(document => { + context.emit('notify', `PUT:/${collectionId}/${document.id}`, 'PUT', collectionId, document.id, request); + }); + + response.reply(c.STATUS_OK, { + [c.DATA]: primaryReplicaDocuments.length + }); } export default putController; diff --git a/lib/createHandler.js b/lib/createHandler.js index 5b13810..5b3f502 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -6,10 +6,22 @@ import c from './constants.js'; const log = logslot('canhazdb.createHandler'); +function handleError (request, response, error) { + if (error.status) { + response.reply(error.status); + return; + } + + log.error(error); + response.reply(c.STATUS_SERVER_ERROR); +} + function createHandler (context) { const { port, tls } = context.options; const tcpServer = tcpocket.createServer({ port, ...tls }, async function (request, response) { + const socket = request.socket; + socket.activeRequests = socket.activeRequests + 1; // const remoteString = request.socket.remoteAddress + ':' + request.socket.remotePort; // logslot('canhazdb.comms').debug('received request ' + remoteString, { // data: request.data @@ -24,19 +36,41 @@ function createHandler (context) { const controller = await controllers[origin][request.command]; if (!controller) { + socket.activeRequests = socket.activeRequests - 1; response.reply(c.STATUS_NOT_FOUND); return; } - return controller(context, request.socket, request, response); + const result = await controller(context, request.socket, request, response) + .catch(error => { + handleError(request, response, error); + }) + .finally(() => { + socket.activeRequests = socket.activeRequests - 1; + }); + + return result; }); tcpServer.on('connection', (socket) => { + socket.activeRequests = 0; + socket.locks = []; + context.clients.push(socket); socket.state = {}; context.emit('client.connected', socket); socket.on('close', () => { + const clientIndex = context.clients.indexOf(socket); + if (clientIndex === -1) { + throw new Error('socket not found in client list'); + } + + socket.locks.forEach(lock => { + lock.cancel(); + }); + + context.clients.splice(clientIndex, 1); context.emit('client.closed', socket); }); diff --git a/lib/index.js b/lib/index.js index f959639..5339be4 100644 --- a/lib/index.js +++ b/lib/index.js @@ -6,6 +6,7 @@ import prepareOptions from './prepareOptions.js'; import createHandler from './createHandler.js'; import driver from './driver/index.js'; import join from './utils/join.js'; +import waitUntil from './utils/waitUntil.js'; import notifyModule from './modules/notify/index.js'; import collectionsModule from './modules/collections/index.js'; @@ -129,7 +130,19 @@ async function canhazdb (rawOptions) { context.close = async function () { context.closed = true; - context.locks.cancel(); + context.locks.cancel( + Object.assign(new Error('server was closed'), { status: c.STATUS_SERVER_CLOSED }) + ); + + await waitUntil(() => { + const activeRequests = context.clients.reduce((total, client) => { + return total + client.activeRequests; + }, 0); + + return activeRequests === 0; + }); + await new Promise(resolve => tcpServer.close(resolve)); + clearTimeout(context.syncNodesInfoTimer); await Promise.all(context.nodes.map(node => { @@ -137,7 +150,6 @@ async function canhazdb (rawOptions) { })); await context.driver.close(); - await new Promise(resolve => tcpServer.close(resolve)); }; context.clientConfig = { diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index 3a9aa17..e3f3828 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -6,13 +6,15 @@ const log = logslot('canhazdb.notify'); function askOnAllNodes (context, command, data) { return Promise.all( - context.nodes.map(node => - node.client.send(command, data).catch(error => { + context.nodes.map(node => { + return node.client && node.client.send(command, data).catch(error => { if (error.message.includes('client disconnected')) { log.warn(`could not send ${c[command]} to node('${node.name}') because it was not connected`); + } else { + throw error; } - }) - ) + }); + }) ); } diff --git a/lib/utils/isLockedOrWait.js b/lib/utils/isLockedOrWait.js index f122fe3..284de16 100644 --- a/lib/utils/isLockedOrWait.js +++ b/lib/utils/isLockedOrWait.js @@ -1,5 +1,7 @@ -async function isLockedOrWait (locks, keys, lockId, waitForUnlock) { - const locked = locks.check(keys); +import c from '../constants.js'; + +async function isLockedOrWait (context, socket, keys, lockId, waitForUnlock) { + const locked = context.locks.check(keys); if (!locked) { return false; @@ -10,15 +12,15 @@ async function isLockedOrWait (locks, keys, lockId, waitForUnlock) { } if (waitForUnlock) { - try { - await locks.wait(keys); - } catch (error) { - throw Object.assign(new Error('canhazdb cancelled all locks'), { status: 409 }); - } + const lock = context.locks.wait(keys); + socket.locks.push(lock); + await lock; return false; } - return true; + throw Object.assign( + new Error('canhazdb: locked ' + keys.toString()), { status: c.STATUS_LOCKED } + ); } export default isLockedOrWait; diff --git a/lib/utils/join.js b/lib/utils/join.js index f176a6a..6f8c573 100644 --- a/lib/utils/join.js +++ b/lib/utils/join.js @@ -15,17 +15,19 @@ function join (context, host, port) { log.info('joining node', { host, port }); + const client = tcpocket.createClient({ + host, + port, + servername, + ...context.options.tls + }); + const node = { connected: false, online: false, host, port, - client: tcpocket.createClient({ - host, - port, - servername, - ...context.options.tls - }) + client }; node.client.on('message', (message) => { diff --git a/package.json b/package.json index ab2ceac..ea0e5c9 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "dependencies": { "chalk": "^4.1.2", "debarrel": "^1.0.2", - "lockbase": "^1.1.1", + "lockbase": "^1.2.2", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", diff --git a/test/features/cluster.js b/test/features/cluster.js index 81acee9..1a40b3f 100644 --- a/test/features/cluster.js +++ b/test/features/cluster.js @@ -66,7 +66,7 @@ test('cluster - post - two goes down', async t => { t.plan(12); const servers = await createTestServers(3); - let client = tcpocket.createClient(servers[0].clientConfig); + const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); const postResponses = await Promise.all([ diff --git a/test/features/lock.js b/test/features/lock.js index 2f122b7..2d94fd8 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -157,7 +157,7 @@ test('lock: and post some data (conflict + fail)', async t => { await client.close(); await servers.close(); - t.equal(postRequest.command, c.STATUS_BAD_REQUEST); + t.equal(postRequest.command, c.STATUS_LOCKED); }); test('lock: and post some data (conflict + wait)', async t => { @@ -284,8 +284,8 @@ test('lock: and wait but client closes', async t => { } }).then(() => { t.fail('should not have resolved successfully'); - }).catch(error => { - servers.close(); + }).catch(async error => { + await servers.close(); t.equal(error.message, 'client disconnected'); }); @@ -312,7 +312,7 @@ test('lock: and wait but node closes', async t => { foo: 'bar' } }).then((postResponse) => { - t.equal(postResponse.command, c.STATUS_SERVER_ERROR); + t.equal(postResponse.command, c.STATUS_SERVER_CLOSED); client.close(); }); diff --git a/yarn.lock b/yarn.lock index 7046477..2a2110b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,19 +4,19 @@ "@babel/code-frame@7.12.11": version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== dependencies: "@babel/highlight" "^7.10.4" "@babel/helper-validator-identifier@^7.14.5": version "7.14.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== "@babel/highlight@^7.10.4": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== dependencies: "@babel/helper-validator-identifier" "^7.14.5" @@ -25,12 +25,12 @@ "@bcoe/v8-coverage@^0.2.3": version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@eslint/eslintrc@^0.4.3": version "0.4.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== dependencies: ajv "^6.12.4" @@ -45,7 +45,7 @@ "@humanwhocodes/config-array@^0.5.0": version "0.5.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== dependencies: "@humanwhocodes/object-schema" "^1.2.0" @@ -54,32 +54,32 @@ "@humanwhocodes/object-schema@^1.2.0": version "1.2.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" + resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz" integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== "@istanbuljs/schema@^0.1.2": version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@types/istanbul-lib-coverage@^2.0.1": version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== acorn-jsx@^5.3.1: version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn@^7.4.0: version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== ajv@^6.10.0, ajv@^6.12.4: version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -89,7 +89,7 @@ ajv@^6.10.0, ajv@^6.12.4: ajv@^8.0.1: version "8.6.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" + resolved "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz" integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== dependencies: fast-deep-equal "^3.1.1" @@ -99,38 +99,38 @@ ajv@^8.0.1: ansi-colors@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== ansi-regex@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" argparse@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" array-includes@^3.1.1, array-includes@^3.1.2, array-includes@^3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== dependencies: call-bind "^1.0.2" @@ -141,7 +141,7 @@ array-includes@^3.1.1, array-includes@^3.1.2, array-includes@^3.1.3: array.prototype.flat@^1.2.4: version "1.2.4" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== dependencies: call-bind "^1.0.0" @@ -150,7 +150,7 @@ array.prototype.flat@^1.2.4: array.prototype.flatmap@^1.2.3: version "1.2.4" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz#94cfd47cc1556ec0747d97f7c7738c58122004c9" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" integrity sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q== dependencies: call-bind "^1.0.0" @@ -160,17 +160,17 @@ array.prototype.flatmap@^1.2.3: astral-regex@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== basictap@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/basictap/-/basictap-2.0.2.tgz#ca96339afa11d2b0905fb26191479940eb7cd089" + resolved "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz" integrity sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q== dependencies: colorette "^1.2.2" @@ -179,7 +179,7 @@ basictap@^2.0.2: brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -187,7 +187,7 @@ brace-expansion@^1.1.7: c8@^7.8.0: version "7.8.0" - resolved "https://registry.yarnpkg.com/c8/-/c8-7.8.0.tgz#8fcfe848587d9d5796f22e9b0546a387a66d1b3b" + resolved "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz" integrity sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA== dependencies: "@bcoe/v8-coverage" "^0.2.3" @@ -205,7 +205,7 @@ c8@^7.8.0: call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== dependencies: function-bind "^1.1.1" @@ -213,12 +213,12 @@ call-bind@^1.0.0, call-bind@^1.0.2: callsites@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== chalk@^2.0.0: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -227,7 +227,7 @@ chalk@^2.0.0: chalk@^4.0.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -235,7 +235,7 @@ chalk@^4.0.0, chalk@^4.1.1, chalk@^4.1.2: cliui@^7.0.2: version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -244,48 +244,48 @@ cliui@^7.0.2: color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== colorette@^1.2.2: version "1.3.0" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.3.0.tgz#ff45d2f0edb244069d3b772adeb04fed38d0a0af" + resolved "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz" integrity sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= convert-source-map@^1.6.0: version "1.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== dependencies: safe-buffer "~5.1.1" cross-spawn@^7.0.0, cross-spawn@^7.0.2: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -294,78 +294,78 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2: debarrel@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/debarrel/-/debarrel-1.0.2.tgz#89a51733f840fb10580e3e21914220c32ba89e41" + resolved "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz" integrity sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g== debug@^2.6.9: version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@^3.2.7: version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" debug@^4.0.1, debug@^4.1.1: version "4.3.2" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== dependencies: ms "2.1.2" deep-is@^0.1.3: version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= define-properties@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== dependencies: object-keys "^1.0.12" doctrine@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== dependencies: esutils "^2.0.2" doctrine@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== enquirer@^2.3.5: version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== dependencies: ansi-colors "^4.1.1" error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: version "1.18.5" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.5.tgz#9b10de7d4c206a3581fd5b2124233e04db49ae19" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz" integrity sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA== dependencies: call-bind "^1.0.2" @@ -388,7 +388,7 @@ es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: es-to-primitive@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== dependencies: is-callable "^1.1.4" @@ -397,37 +397,37 @@ es-to-primitive@^1.2.1: escalade@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== eslint-config-semistandard@16.0.0: version "16.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz#45e06374707d86a87f54086e7b8bd0b7b74a197f" + resolved "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz" integrity sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ== eslint-config-standard-jsx@10.0.0: version "10.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz#dc24992661325a2e480e2c3091d669f19034e18d" + resolved "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz" integrity sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA== eslint-config-standard@16.0.3: version "16.0.3" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516" + resolved "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== eslint-import-resolver-node@^0.3.5: version "0.3.6" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" + resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz" integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== dependencies: debug "^3.2.7" @@ -435,7 +435,7 @@ eslint-import-resolver-node@^0.3.5: eslint-module-utils@^2.6.2: version "2.6.2" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz#94e5540dd15fe1522e8ffa3ec8db3b7fa7e7a534" + resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz" integrity sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q== dependencies: debug "^3.2.7" @@ -443,7 +443,7 @@ eslint-module-utils@^2.6.2: eslint-plugin-es@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" + resolved "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz" integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== dependencies: eslint-utils "^2.0.0" @@ -451,7 +451,7 @@ eslint-plugin-es@^3.0.0: eslint-plugin-import@^2.22.1: version "2.24.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.24.0.tgz#697ffd263e24da5e84e03b282f5fb62251777177" + resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.0.tgz" integrity sha512-Kc6xqT9hiYi2cgybOc0I2vC9OgAYga5o/rAFinam/yF/t5uBqxQbauNPMC6fgb640T/89P0gFoO27FOilJ/Cqg== dependencies: array-includes "^3.1.3" @@ -472,7 +472,7 @@ eslint-plugin-import@^2.22.1: eslint-plugin-node@^11.1.0: version "11.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" + resolved "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz" integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== dependencies: eslint-plugin-es "^3.0.0" @@ -484,12 +484,12 @@ eslint-plugin-node@^11.1.0: eslint-plugin-promise@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz#fb2188fb734e4557993733b41aa1a688f46c6f24" + resolved "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz" integrity sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng== eslint-plugin-react@~7.21.5: version "7.21.5" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz#50b21a412b9574bfe05b21db176e8b7b3b15bff3" + resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz" integrity sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== dependencies: array-includes "^3.1.1" @@ -506,7 +506,7 @@ eslint-plugin-react@~7.21.5: eslint-scope@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: esrecurse "^4.3.0" @@ -514,24 +514,24 @@ eslint-scope@^5.1.1: eslint-utils@^2.0.0, eslint-utils@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== dependencies: eslint-visitor-keys "^1.1.0" eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== eslint-visitor-keys@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== eslint@^7.27.0, eslint@^7.32.0: version "7.32.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + resolved "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== dependencies: "@babel/code-frame" "7.12.11" @@ -577,7 +577,7 @@ eslint@^7.27.0, eslint@^7.32.0: espree@^7.3.0, espree@^7.3.1: version "7.3.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== dependencies: acorn "^7.4.0" @@ -586,82 +586,82 @@ espree@^7.3.0, espree@^7.3.1: esprima@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.1.0, estraverse@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== esutils@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== events@^3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-json-stable-stringify@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-levenshtein@^2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= file-entry-cache@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" find-up@^2.0.0, find-up@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= dependencies: locate-path "^2.0.0" find-up@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== dependencies: locate-path "^3.0.0" find-up@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: locate-path "^6.0.0" @@ -669,7 +669,7 @@ find-up@^5.0.0: flat-cache@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: flatted "^3.1.0" @@ -677,12 +677,12 @@ flat-cache@^3.0.4: flatted@^3.1.0: version "3.2.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.2.tgz#64bfed5cb68fe3ca78b3eb214ad97b63bedce561" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz" integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== foreground-child@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" + resolved "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz" integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== dependencies: cross-spawn "^7.0.0" @@ -690,27 +690,27 @@ foreground-child@^2.0.0: fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== functional-red-black-tree@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== dependencies: function-bind "^1.1.1" @@ -719,19 +719,19 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: get-stdin@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== glob-parent@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob@^7.1.3, glob@^7.1.4: version "7.1.7" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== dependencies: fs.realpath "^1.0.0" @@ -743,73 +743,73 @@ glob@^7.1.3, glob@^7.1.4: globals@^13.6.0, globals@^13.9.0: version "13.11.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" + resolved "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz" integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== dependencies: type-fest "^0.20.2" graceful-fs@^4.1.15, graceful-fs@^4.1.2: version "4.2.8" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== has-bigints@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has-symbols@^1.0.1, has-symbols@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== has-tostringtag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== dependencies: has-symbols "^1.0.2" has@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" hosted-git-info@^2.1.4: version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== html-escaper@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== ignore@^4.0.6: version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== ignore@^5.1.1: version "5.1.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" @@ -817,12 +817,12 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" @@ -830,12 +830,12 @@ inflight@^1.0.4: inherits@2: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== internal-slot@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== dependencies: get-intrinsic "^1.1.0" @@ -844,19 +844,19 @@ internal-slot@^1.0.3: is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= is-bigint@^1.0.1: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== dependencies: has-bigints "^1.0.1" is-boolean-object@^1.1.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: call-bind "^1.0.2" @@ -864,55 +864,55 @@ is-boolean-object@^1.1.0: is-callable@^1.1.4, is-callable@^1.2.3: version "1.2.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== is-core-module@^2.2.0, is-core-module@^2.4.0: version "2.6.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.6.0.tgz#d7553b2526fe59b92ba3e40c8df757ec8a709e19" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz" integrity sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ== dependencies: has "^1.0.3" is-date-object@^1.0.1: version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== dependencies: has-tostringtag "^1.0.0" is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== dependencies: is-extglob "^2.1.1" is-negative-zero@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== is-number-object@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz" integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== dependencies: has-tostringtag "^1.0.0" is-regex@^1.1.3: version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== dependencies: call-bind "^1.0.2" @@ -920,31 +920,31 @@ is-regex@^1.1.3: is-string@^1.0.5, is-string@^1.0.6: version "1.0.7" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== dependencies: has-tostringtag "^1.0.0" is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== dependencies: has-symbols "^1.0.2" isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= istanbul-lib-coverage@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== istanbul-lib-report@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: istanbul-lib-coverage "^3.0.0" @@ -953,7 +953,7 @@ istanbul-lib-report@^3.0.0: istanbul-reports@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" + resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== dependencies: html-escaper "^2.0.0" @@ -961,12 +961,12 @@ istanbul-reports@^3.0.2: "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.13.1: version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -974,34 +974,34 @@ js-yaml@^3.13.1: json-parse-better-errors@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema-traverse@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json5@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== dependencies: minimist "^1.2.5" "jsx-ast-utils@^2.4.1 || ^3.0.0": version "3.2.0" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz#41108d2cec408c3453c1bbe8a4aae9e1e2bd8f82" + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== dependencies: array-includes "^3.1.2" @@ -1009,7 +1009,7 @@ json5@^2.2.0: levn@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -1017,7 +1017,7 @@ levn@^0.4.1: load-json-file@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= dependencies: graceful-fs "^4.1.2" @@ -1027,7 +1027,7 @@ load-json-file@^4.0.0: load-json-file@^5.2.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz" integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== dependencies: graceful-fs "^4.1.15" @@ -1038,7 +1038,7 @@ load-json-file@^5.2.0: locate-path@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= dependencies: p-locate "^2.0.0" @@ -1046,7 +1046,7 @@ locate-path@^2.0.0: locate-path@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== dependencies: p-locate "^3.0.0" @@ -1054,108 +1054,109 @@ locate-path@^3.0.0: locate-path@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: p-locate "^5.0.0" -lockbase@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/lockbase/-/lockbase-1.1.1.tgz#d53f0197c8159c7721f817657e6ec8fc11b7765f" - integrity sha512-8liYSBwSRfNE8MxSZij5C3RDB9Z8LDXeMpAuAITh1VYzm3cTt+Er7T8mxiLepLUepfjw0lAR1FBSGNUtpBufGQ== +lockbase@^1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz" + integrity sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg== dependencies: + c8 "^7.8.0" uuid "^8.3.2" lodash.clonedeep@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.truncate@^4.4.2: version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= logslot@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/logslot/-/logslot-2.1.0.tgz#2897d410e70c8b83fd90c67fb8f63c192d98156c" + resolved "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz" integrity sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q== dependencies: chalk "^4.1.1" loose-envify@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" make-dir@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" minimatch@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" minimist@^1.2.0, minimist@^1.2.5: version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== mql-to-jql@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/mql-to-jql/-/mql-to-jql-1.4.0.tgz#168d54c45749817a21a6134c70cd4c7bfe8ce4bc" + resolved "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz" integrity sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ== ms@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@^2.1.1: version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= node-ejdb-lite@^3.4.4: version "3.4.4" - resolved "https://registry.yarnpkg.com/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz#d13d530bcda6e3f1b2ccaa0898afd2383fe6c0e1" + resolved "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz" integrity sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg== dependencies: semver "^7.3.5" normalize-package-data@^2.3.2: version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" @@ -1165,22 +1166,22 @@ normalize-package-data@^2.3.2: object-assign@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= object-inspect@^1.11.0, object-inspect@^1.9.0: version "1.11.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz" integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== dependencies: call-bind "^1.0.0" @@ -1190,7 +1191,7 @@ object.assign@^4.1.2: object.entries@^1.1.2: version "1.1.4" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.4.tgz#43ccf9a50bc5fd5b649d45ab1a579f24e088cafd" + resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" integrity sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA== dependencies: call-bind "^1.0.2" @@ -1199,7 +1200,7 @@ object.entries@^1.1.2: object.fromentries@^2.0.2: version "2.0.4" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.4.tgz#26e1ba5c4571c5c6f0890cef4473066456a120b8" + resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz" integrity sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ== dependencies: call-bind "^1.0.2" @@ -1209,7 +1210,7 @@ object.fromentries@^2.0.2: object.values@^1.1.1, object.values@^1.1.3: version "1.1.4" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.4.tgz#0d273762833e816b693a637d30073e7051535b30" + resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== dependencies: call-bind "^1.0.2" @@ -1218,14 +1219,14 @@ object.values@^1.1.1, object.values@^1.1.3: once@^1.3.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" optionator@^0.9.1: version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: deep-is "^0.1.3" @@ -1237,66 +1238,66 @@ optionator@^0.9.1: p-limit@^1.1.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== dependencies: p-try "^1.0.0" p-limit@^2.0.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" p-limit@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-locate@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= dependencies: p-limit "^1.1.0" p-locate@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== dependencies: p-limit "^2.0.0" p-locate@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== dependencies: p-limit "^3.0.2" p-try@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= p-try@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" parse-json@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= dependencies: error-ex "^1.3.1" @@ -1304,49 +1305,49 @@ parse-json@^4.0.0: path-exists@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.6: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-type@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== dependencies: pify "^3.0.0" pify@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= pify@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== pkg-conf@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-3.1.0.tgz#d9f9c75ea1bae0e77938cde045b276dac7cc69ae" + resolved "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz" integrity sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ== dependencies: find-up "^3.0.0" @@ -1354,36 +1355,36 @@ pkg-conf@^3.1.0: pkg-dir@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= dependencies: find-up "^2.1.0" pkg-up@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" + resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= dependencies: find-up "^2.1.0" prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== progress@^2.0.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== promise-limit@^2.7.0: version "2.7.0" - resolved "https://registry.yarnpkg.com/promise-limit/-/promise-limit-2.7.0.tgz#eb5737c33342a030eaeaecea9b3d3a93cb592b26" + resolved "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz" integrity sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw== prop-types@^15.7.2: version "15.7.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== dependencies: loose-envify "^1.4.0" @@ -1392,17 +1393,17 @@ prop-types@^15.7.2: punycode@^2.1.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== react-is@^16.8.1: version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== read-pkg-up@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= dependencies: find-up "^2.0.0" @@ -1410,7 +1411,7 @@ read-pkg-up@^3.0.0: read-pkg@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= dependencies: load-json-file "^4.0.0" @@ -1419,7 +1420,7 @@ read-pkg@^3.0.0: regexp.prototype.flags@^1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== dependencies: call-bind "^1.0.2" @@ -1427,27 +1428,27 @@ regexp.prototype.flags@^1.3.1: regexpp@^3.0.0, regexpp@^3.1.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= require-from-string@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve@^1.10.0, resolve@^1.10.1, resolve@^1.18.1, resolve@^1.20.0: version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== dependencies: is-core-module "^2.2.0" @@ -1455,19 +1456,19 @@ resolve@^1.10.0, resolve@^1.10.1, resolve@^1.18.1, resolve@^1.20.0: rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== semistandard@^16.0.1: version "16.0.1" - resolved "https://registry.yarnpkg.com/semistandard/-/semistandard-16.0.1.tgz#8ed8590e848e74c24c77011df4350bb0327b31bb" + resolved "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz" integrity sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q== dependencies: eslint "^7.27.0" @@ -1482,41 +1483,41 @@ semistandard@^16.0.1: "semver@2 || 3 || 4 || 5": version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== semver@^6.0.0, semver@^6.1.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== semver@^7.2.1, semver@^7.3.5: version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== dependencies: lru-cache "^6.0.0" server-destroy@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" + resolved "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== side-channel@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== dependencies: call-bind "^1.0.0" @@ -1525,12 +1526,12 @@ side-channel@^1.0.4: signal-exit@^3.0.2: version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== slice-ansi@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== dependencies: ansi-styles "^4.0.0" @@ -1539,12 +1540,12 @@ slice-ansi@^4.0.0: source-map@^0.7.3: version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== spdx-correct@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== dependencies: spdx-expression-parse "^3.0.0" @@ -1552,12 +1553,12 @@ spdx-correct@^3.0.0: spdx-exceptions@^2.1.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" @@ -1565,17 +1566,17 @@ spdx-expression-parse@^3.0.0: spdx-license-ids@^3.0.0: version "3.0.10" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz" integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= standard-engine@^14.0.0: version "14.0.1" - resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-14.0.1.tgz#fe568e138c3d9768fc59ff81001f7049908a8156" + resolved "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz" integrity sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q== dependencies: get-stdin "^8.0.0" @@ -1585,7 +1586,7 @@ standard-engine@^14.0.0: string-width@^4.1.0, string-width@^4.2.0: version "4.2.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== dependencies: emoji-regex "^8.0.0" @@ -1594,7 +1595,7 @@ string-width@^4.1.0, string-width@^4.2.0: string.prototype.matchall@^4.0.2: version "4.0.5" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz#59370644e1db7e4c0c045277690cf7b01203c4da" + resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz" integrity sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q== dependencies: call-bind "^1.0.2" @@ -1608,7 +1609,7 @@ string.prototype.matchall@^4.0.2: string.prototype.trimend@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== dependencies: call-bind "^1.0.2" @@ -1616,7 +1617,7 @@ string.prototype.trimend@^1.0.4: string.prototype.trimstart@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== dependencies: call-bind "^1.0.2" @@ -1624,38 +1625,38 @@ string.prototype.trimstart@^1.0.4: strip-ansi@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== dependencies: ansi-regex "^5.0.0" strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" table@^6.0.9: version "6.7.1" - resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" + resolved "https://registry.npmjs.org/table/-/table-6.7.1.tgz" integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== dependencies: ajv "^8.0.1" @@ -1667,12 +1668,12 @@ table@^6.0.9: tcpocket@^7.3.1: version "7.3.1" - resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.3.1.tgz#4a19d19c95304e2c5709c3c99047300184adf4ec" + resolved "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz" integrity sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q== test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" @@ -1681,12 +1682,12 @@ test-exclude@^6.0.0: text-table@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= tsconfig-paths@^3.9.0: version "3.10.1" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz#79ae67a68c15289fdf5c51cb74f397522d795ed7" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" integrity sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q== dependencies: json5 "^2.2.0" @@ -1695,24 +1696,24 @@ tsconfig-paths@^3.9.0: type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== type-fest@^0.3.0: version "0.3.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== unbox-primitive@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== dependencies: function-bind "^1.1.1" @@ -1722,24 +1723,24 @@ unbox-primitive@^1.0.1: uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" uuid@^8.3.2: version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== v8-compile-cache@^2.0.3: version "2.3.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== v8-to-istanbul@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz" integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" @@ -1748,7 +1749,7 @@ v8-to-istanbul@^8.0.0: validate-npm-package-license@^3.0.1: version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" @@ -1756,7 +1757,7 @@ validate-npm-package-license@^3.0.1: which-boxed-primitive@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== dependencies: is-bigint "^1.0.1" @@ -1767,19 +1768,19 @@ which-boxed-primitive@^1.0.2: which@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" word-wrap@^1.2.3: version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -1788,37 +1789,37 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= wtfnode@^0.9.1: version "0.9.1" - resolved "https://registry.yarnpkg.com/wtfnode/-/wtfnode-0.9.1.tgz#c385679d2df6fb4d64d734eeeaab767fcee3e0d3" + resolved "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz" integrity sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA== xdg-basedir@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" + resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== y18n@^5.0.5: version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yargs-parser@^20.2.2, yargs-parser@^20.2.7: version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs@^16.2.0: version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" @@ -1831,5 +1832,5 @@ yargs@^16.2.0: yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From 26246d99a3c9c4d033df6c9c21f1653ec252e6c6 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 22 Aug 2021 20:58:05 +1000 Subject: [PATCH 32/73] Update get logic --- lib/controllers/external/delete.js | 3 + lib/controllers/external/get.js | 8 +- lib/controllers/external/patch.js | 3 + lib/controllers/external/put.js | 3 + lib/controllers/internal/put.js | 3 + lib/createHandler.js | 10 +- lib/driver/index.js | 50 +- lib/index.js | 1 + lib/utils/calculateAllowedErrorCount.js | 9 + lib/utils/isLockedOrWait.js | 4 +- lib/utils/validateRequestData.js | 22 + package.json | 2 +- test/index.js | 7 +- test/lib/utils/calculateAllowedErrorCount.js | 62 + yarn.lock | 3573 +++++++++--------- 15 files changed, 1929 insertions(+), 1831 deletions(-) create mode 100644 lib/utils/calculateAllowedErrorCount.js create mode 100644 lib/utils/validateRequestData.js create mode 100644 test/lib/utils/calculateAllowedErrorCount.js diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index a1b1446..760f102 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -1,12 +1,15 @@ import logslot from 'logslot'; import c from '../../constants.js'; +import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.delete'); async function deleteController (context, socket, request, response) { const requestData = request.json(); + await validateRequestData(context, requestData); + const collectionId = requestData[c.COLLECTION_ID]; const results = await Promise.all( diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 3b3255d..8464c08 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -2,12 +2,16 @@ import logslot from 'logslot'; import c from '../../constants.js'; import orderByFields from '../../utils/orderByFields.js'; +import calculateAllowedErrorCount from '../../utils/calculateAllowedErrorCount.js'; +import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.get'); async function getController (context, socket, request, response) { const requestData = request.json(); + await validateRequestData(context, requestData); + const results = await Promise.all( context.nodes .filter(node => node.connected) @@ -32,7 +36,9 @@ async function getController (context, socket, request, response) { return result && result.command !== c.STATUS_OK; }); - if (errors.length > context.settings.replicas - 1) { + const maximumErrorCount = calculateAllowedErrorCount(context.settings.replicas, context.nodes.length); + + if (errors.length > maximumErrorCount) { response.reply(c.STATUS_SERVER_ERROR, { [c.ERROR]: 'Not enough nodes responded successfully' }); diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index c060ab3..239e777 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -1,12 +1,15 @@ import logslot from 'logslot'; import c from '../../constants.js'; +import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.patch'); async function patchController (context, socket, request, response) { const requestData = request.json(); + await validateRequestData(context, requestData); + const collectionId = requestData[c.COLLECTION_ID]; const results = await Promise.all( diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 2c10da4..520666b 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -1,12 +1,15 @@ import logslot from 'logslot'; import c from '../../constants.js'; +import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.put'); async function putController (context, socket, request, response) { const requestData = request.json(); + await validateRequestData(context, requestData); + const collectionId = requestData[c.COLLECTION_ID]; const results = await Promise.all( diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index d92b6d7..51a06c2 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -3,12 +3,15 @@ import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; +import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.internal.put'); async function putController (context, socket, request, response) { const requestData = request.json(); + await validateRequestData(context, requestData); + const data = requestData[c.DATA]; const query = requestData[c.QUERY]; const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/createHandler.js b/lib/createHandler.js index 5b3f502..b56bd2b 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -8,11 +8,12 @@ const log = logslot('canhazdb.createHandler'); function handleError (request, response, error) { if (error.status) { - response.reply(error.status); + response.reply(error.status, { + [c.ERROR]: error?.error?.message || 'Unknown server error' + }); return; } - log.error(error); response.reply(c.STATUS_SERVER_ERROR); } @@ -54,7 +55,6 @@ function createHandler (context) { tcpServer.on('connection', (socket) => { socket.activeRequests = 0; - socket.locks = []; context.clients.push(socket); socket.state = {}; @@ -66,10 +66,6 @@ function createHandler (context) { throw new Error('socket not found in client list'); } - socket.locks.forEach(lock => { - lock.cancel(); - }); - context.clients.splice(clientIndex, 1); context.emit('client.closed', socket); }); diff --git a/lib/driver/index.js b/lib/driver/index.js index ac08535..1aaf002 100644 --- a/lib/driver/index.js +++ b/lib/driver/index.js @@ -26,8 +26,6 @@ async function createEjdbDriver (state) { } async function count (collectionId, query) { - activeQueries = activeQueries + 1; - const ejdbQuery = convert({ query }); const queryWithCount = { @@ -40,14 +38,10 @@ async function createEjdbDriver (state) { const count = await q.scalarInt(); - activeQueries = activeQueries - 1; - return count; } async function get (collectionId, query, fields, order, limit) { - activeQueries = activeQueries + 1; - if (fields && !fields.includes('id')) { fields.push('id'); } @@ -58,14 +52,10 @@ async function createEjdbDriver (state) { const q = createQuery(db, collectionId, ejdbQuery); const list = await q.list(); - activeQueries = activeQueries - 1; - return list.map(item => item.json); } async function post (collectionId, document) { - activeQueries = activeQueries + 1; - const db = await getDatabaseConnection(collectionId); const insertableRecord = { @@ -78,14 +68,10 @@ async function createEjdbDriver (state) { await db.put(collectionId, JSON.stringify(insertableRecord)); - activeQueries = activeQueries - 1; - return insertableRecord; } async function put (collectionId, document, query) { - activeQueries = activeQueries + 1; - const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -108,14 +94,10 @@ async function createEjdbDriver (state) { await Promise.all(promises); - activeQueries = activeQueries - 1; - return { changes: promises.length }; } async function patch (collectionId, document, query) { - activeQueries = activeQueries + 1; - const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -140,14 +122,10 @@ async function createEjdbDriver (state) { await Promise.all(promises); - activeQueries = activeQueries - 1; - return { changes: promises.length }; } async function del (collectionId, query) { - activeQueries = activeQueries + 1; - const ejdbQuery = convert({ query }); const db = await getDatabaseConnection(collectionId); @@ -159,8 +137,6 @@ async function createEjdbDriver (state) { await Promise.all(promises); - activeQueries = activeQueries - 1; - return { changes: promises.length }; } @@ -176,23 +152,31 @@ async function createEjdbDriver (state) { connections = {}; } - function throwIfClosed (fn) { - return (...args) => { + function wrapDataFunction (fn) { + return async (...args) => { if (closed) { throw new Error('canhazdb.driver: this instance is closed'); } - return fn(...args); + activeQueries = activeQueries + 1; + try { + const result = await fn(...args); + activeQueries = activeQueries - 1; + return result; + } catch (error) { + activeQueries = activeQueries - 1; + throw error; + } }; } return { - count: throwIfClosed(count), - get: throwIfClosed(get), - put: throwIfClosed(put), - post: throwIfClosed(post), - patch: throwIfClosed(patch), - del: throwIfClosed(del), + count: wrapDataFunction(count), + get: wrapDataFunction(get), + put: wrapDataFunction(put), + post: wrapDataFunction(post), + patch: wrapDataFunction(patch), + del: wrapDataFunction(del), close }; diff --git a/lib/index.js b/lib/index.js index 5339be4..2d1df61 100644 --- a/lib/index.js +++ b/lib/index.js @@ -141,6 +141,7 @@ async function canhazdb (rawOptions) { return activeRequests === 0; }); + await new Promise(resolve => tcpServer.close(resolve)); clearTimeout(context.syncNodesInfoTimer); diff --git a/lib/utils/calculateAllowedErrorCount.js b/lib/utils/calculateAllowedErrorCount.js new file mode 100644 index 0000000..9d54b3f --- /dev/null +++ b/lib/utils/calculateAllowedErrorCount.js @@ -0,0 +1,9 @@ +function calculateAllowedErrorCount (replicas, nodeCount) { + if (nodeCount <= replicas) { + return 0; + } + + return Math.min(replicas - 1, nodeCount - replicas); +} + +export default calculateAllowedErrorCount; diff --git a/lib/utils/isLockedOrWait.js b/lib/utils/isLockedOrWait.js index 284de16..cd7c180 100644 --- a/lib/utils/isLockedOrWait.js +++ b/lib/utils/isLockedOrWait.js @@ -12,9 +12,7 @@ async function isLockedOrWait (context, socket, keys, lockId, waitForUnlock) { } if (waitForUnlock) { - const lock = context.locks.wait(keys); - socket.locks.push(lock); - await lock; + await context.locks.wait(keys); return false; } diff --git a/lib/utils/validateRequestData.js b/lib/utils/validateRequestData.js new file mode 100644 index 0000000..839177d --- /dev/null +++ b/lib/utils/validateRequestData.js @@ -0,0 +1,22 @@ +import c from '../constants.js'; + +async function validateRequestData (context, requestData) { + const collectionId = requestData[c.COLLECTION_ID]; + const query = requestData[c.QUERY]; + const fields = requestData[c.FIELDS]; + const order = requestData[c.ORDER]; + const limit = requestData[c.LIMIT]; + + try { + await context.driver.get(collectionId, query, fields, order, limit); + } catch (error) { + throw Object.assign( + new Error('validation failed'), + { + status: c.STATUS_BAD_REQUEST, + error + }); + } +} + +export default validateRequestData; diff --git a/package.json b/package.json index ea0e5c9..ad04825 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.3.1", + "tcpocket": "^7.3.2", "uuid": "^8.3.2" }, "devDependencies": { diff --git a/test/index.js b/test/index.js index 5a49d71..1b51fd8 100644 --- a/test/index.js +++ b/test/index.js @@ -9,12 +9,13 @@ basictap.on('finish', () => { }, 500); }); +import('./lib/driver/index.js'); +import('./lib/utils/calculateAllowedErrorCount.js'); +import('./lib/prepareOptions.js'); + import('./features/basic.js'); // import('./features/cluster.js'); import('./features/health.js'); import('./features/notify.js'); import('./features/lock.js'); import('./features/systemCollections.js'); - -import('./lib/driver/index.js'); -import('./lib/prepareOptions.js'); diff --git a/test/lib/utils/calculateAllowedErrorCount.js b/test/lib/utils/calculateAllowedErrorCount.js new file mode 100644 index 0000000..7e37383 --- /dev/null +++ b/test/lib/utils/calculateAllowedErrorCount.js @@ -0,0 +1,62 @@ +import test from 'basictap'; +import calculateAllowedErrorCount from '../../../lib/utils/calculateAllowedErrorCount.js'; + +test('with 0 nodes', t => { + const result = calculateAllowedErrorCount(3, 0); + t.equal(result, 0); +}); + +test('with 1 nodes', t => { + const result = calculateAllowedErrorCount(3, 1); + t.equal(result, 0); +}); + +test('with 2 nodes', t => { + const result = calculateAllowedErrorCount(3, 2); + t.equal(result, 0); +}); + +test('with 3 nodes', t => { + const result = calculateAllowedErrorCount(3, 3); + t.equal(result, 0); +}); + +test('with 4 nodes', t => { + const result = calculateAllowedErrorCount(3, 4); + t.equal(result, 1); +}); + +test('with 5 nodes', t => { + const result = calculateAllowedErrorCount(3, 5); + t.equal(result, 2); +}); + +test('with 6 nodes', t => { + const result = calculateAllowedErrorCount(3, 6); + t.equal(result, 2); +}); + +test('with 7 nodes', t => { + const result = calculateAllowedErrorCount(3, 7); + t.equal(result, 2); +}); + +test('with 5 replicas 6 nodes', t => { + const result = calculateAllowedErrorCount(5, 6); + t.equal(result, 1); +}); + +test('with 5 replicas 10 nodes', t => { + const result = calculateAllowedErrorCount(5, 10); + t.equal(result, 4); +}); + +test('with 5 replicas 5 nodes', t => { + const result = calculateAllowedErrorCount(5, 5); + t.equal(result, 0); +}); + +test('with 5 replicas 2 nodes', t => { + const result = calculateAllowedErrorCount(5, 2); + t.equal(result, 0); +}); diff --git a/yarn.lock b/yarn.lock index 2a2110b..af0c3c8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,1834 +3,1841 @@ "@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + "integrity" "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==" + "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" + "version" "7.12.11" dependencies: "@babel/highlight" "^7.10.4" "@babel/helper-validator-identifier@^7.14.5": - version "7.14.9" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" - integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== + "integrity" "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" + "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" + "version" "7.14.9" "@babel/highlight@^7.10.4": - version "7.14.5" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" - integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== + "integrity" "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==" + "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" + "version" "7.14.5" dependencies: "@babel/helper-validator-identifier" "^7.14.5" - chalk "^2.0.0" - js-tokens "^4.0.0" + "chalk" "^2.0.0" + "js-tokens" "^4.0.0" "@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + "integrity" "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + "resolved" "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" + "version" "0.2.3" "@eslint/eslintrc@^0.4.3": - version "0.4.3" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" - integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== - dependencies: - ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^13.9.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" + "integrity" "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==" + "resolved" "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" + "version" "0.4.3" + dependencies: + "ajv" "^6.12.4" + "debug" "^4.1.1" + "espree" "^7.3.0" + "globals" "^13.9.0" + "ignore" "^4.0.6" + "import-fresh" "^3.2.1" + "js-yaml" "^3.13.1" + "minimatch" "^3.0.4" + "strip-json-comments" "^3.1.1" "@humanwhocodes/config-array@^0.5.0": - version "0.5.0" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" - integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== + "integrity" "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" + "version" "0.5.0" dependencies: "@humanwhocodes/object-schema" "^1.2.0" - debug "^4.1.1" - minimatch "^3.0.4" + "debug" "^4.1.1" + "minimatch" "^3.0.4" "@humanwhocodes/object-schema@^1.2.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz" - integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== + "integrity" "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz" + "version" "1.2.0" "@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + "integrity" "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" + "resolved" "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" + "version" "0.1.3" "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.3" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" - integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== - -acorn-jsx@^5.3.1: - version "5.3.2" - resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - -acorn@^7.4.0: - version "7.4.1" - resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -ajv@^6.10.0, ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^8.0.1: - version "8.6.2" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz" - integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -array-includes@^3.1.1, array-includes@^3.1.2, array-includes@^3.1.3: - version "3.1.3" - resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" - integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" - get-intrinsic "^1.1.1" - is-string "^1.0.5" - -array.prototype.flat@^1.2.4: - version "1.2.4" - resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" - integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.1" - -array.prototype.flatmap@^1.2.3: - version "1.2.4" - resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" - integrity sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.1" - function-bind "^1.1.1" - -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -basictap@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz" - integrity sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q== - dependencies: - colorette "^1.2.2" - events "^3.3.0" - promise-limit "^2.7.0" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -c8@^7.8.0: - version "7.8.0" - resolved "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz" - integrity sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA== + "integrity" "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + "resolved" "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" + "version" "2.0.3" + +"acorn-jsx@^5.3.1": + "integrity" "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" + "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" + "version" "5.3.2" + +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", "acorn@^7.4.0": + "integrity" "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + "resolved" "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" + "version" "7.4.1" + +"ajv@^6.10.0", "ajv@^6.12.4": + "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" + "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" + "version" "6.12.6" + dependencies: + "fast-deep-equal" "^3.1.1" + "fast-json-stable-stringify" "^2.0.0" + "json-schema-traverse" "^0.4.1" + "uri-js" "^4.2.2" + +"ajv@^8.0.1": + "integrity" "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==" + "resolved" "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz" + "version" "8.6.2" + dependencies: + "fast-deep-equal" "^3.1.1" + "json-schema-traverse" "^1.0.0" + "require-from-string" "^2.0.2" + "uri-js" "^4.2.2" + +"ansi-colors@^4.1.1": + "integrity" "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" + "resolved" "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" + "version" "4.1.1" + +"ansi-regex@^5.0.0": + "integrity" "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" + "version" "5.0.0" + +"ansi-styles@^3.2.1": + "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + "version" "3.2.1" + dependencies: + "color-convert" "^1.9.0" + +"ansi-styles@^4.0.0", "ansi-styles@^4.1.0": + "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "color-convert" "^2.0.1" + +"argparse@^1.0.7": + "integrity" "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==" + "resolved" "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" + "version" "1.0.10" + dependencies: + "sprintf-js" "~1.0.2" + +"array-includes@^3.1.1", "array-includes@^3.1.2", "array-includes@^3.1.3": + "integrity" "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==" + "resolved" "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" + "version" "3.1.3" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.2" + "get-intrinsic" "^1.1.1" + "is-string" "^1.0.5" + +"array.prototype.flat@^1.2.4": + "integrity" "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==" + "resolved" "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" + "version" "1.2.4" + dependencies: + "call-bind" "^1.0.0" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.1" + +"array.prototype.flatmap@^1.2.3": + "integrity" "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==" + "resolved" "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" + "version" "1.2.4" + dependencies: + "call-bind" "^1.0.0" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.1" + "function-bind" "^1.1.1" + +"astral-regex@^2.0.0": + "integrity" "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" + "resolved" "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" + "version" "2.0.0" + +"balanced-match@^1.0.0": + "integrity" "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" + "version" "1.0.2" + +"basictap@^2.0.2": + "integrity" "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==" + "resolved" "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "colorette" "^1.2.2" + "events" "^3.3.0" + "promise-limit" "^2.7.0" + +"brace-expansion@^1.1.7": + "integrity" "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==" + "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" + "version" "1.1.11" + dependencies: + "balanced-match" "^1.0.0" + "concat-map" "0.0.1" + +"c8@^7.8.0": + "integrity" "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==" + "resolved" "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz" + "version" "7.8.0" dependencies: "@bcoe/v8-coverage" "^0.2.3" "@istanbuljs/schema" "^0.1.2" - find-up "^5.0.0" - foreground-child "^2.0.0" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-report "^3.0.0" - istanbul-reports "^3.0.2" - rimraf "^3.0.0" - test-exclude "^6.0.0" - v8-to-istanbul "^8.0.0" - yargs "^16.2.0" - yargs-parser "^20.2.7" - -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0, chalk@^4.1.1, chalk@^4.1.2: - version "4.1.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -colorette@^1.2.2: - version "1.3.0" - resolved "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz" - integrity sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -convert-source-map@^1.6.0: - version "1.8.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" - -cross-spawn@^7.0.0, cross-spawn@^7.0.2: - version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -debarrel@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz" - integrity sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g== - -debug@^2.6.9: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -debug@^4.0.1, debug@^4.1.1: - version "4.3.2" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" - integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== - dependencies: - ms "2.1.2" - -deep-is@^0.1.3: - version "0.1.3" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -enquirer@^2.3.5: - version "2.3.6" - resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: - version "1.18.5" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz" - integrity sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA== - dependencies: - call-bind "^1.0.2" - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - get-intrinsic "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.2" - internal-slot "^1.0.3" - is-callable "^1.2.3" - is-negative-zero "^2.0.1" - is-regex "^1.1.3" - is-string "^1.0.6" - object-inspect "^1.11.0" - object-keys "^1.1.1" - object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.1" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-semistandard@16.0.0: - version "16.0.0" - resolved "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz" - integrity sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ== - -eslint-config-standard-jsx@10.0.0: - version "10.0.0" - resolved "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz" - integrity sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA== - -eslint-config-standard@16.0.3: - version "16.0.3" - resolved "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" - integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== - -eslint-import-resolver-node@^0.3.5: - version "0.3.6" - resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz" - integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== - dependencies: - debug "^3.2.7" - resolve "^1.20.0" - -eslint-module-utils@^2.6.2: - version "2.6.2" - resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz" - integrity sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q== - dependencies: - debug "^3.2.7" - pkg-dir "^2.0.0" - -eslint-plugin-es@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz" - integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== - dependencies: - eslint-utils "^2.0.0" - regexpp "^3.0.0" - -eslint-plugin-import@^2.22.1: - version "2.24.0" - resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.0.tgz" - integrity sha512-Kc6xqT9hiYi2cgybOc0I2vC9OgAYga5o/rAFinam/yF/t5uBqxQbauNPMC6fgb640T/89P0gFoO27FOilJ/Cqg== - dependencies: - array-includes "^3.1.3" - array.prototype.flat "^1.2.4" - debug "^2.6.9" - doctrine "^2.1.0" - eslint-import-resolver-node "^0.3.5" - eslint-module-utils "^2.6.2" - find-up "^2.0.0" - has "^1.0.3" - is-core-module "^2.4.0" - minimatch "^3.0.4" - object.values "^1.1.3" - pkg-up "^2.0.0" - read-pkg-up "^3.0.0" - resolve "^1.20.0" - tsconfig-paths "^3.9.0" - -eslint-plugin-node@^11.1.0: - version "11.1.0" - resolved "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz" - integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== - dependencies: - eslint-plugin-es "^3.0.0" - eslint-utils "^2.0.0" - ignore "^5.1.1" - minimatch "^3.0.4" - resolve "^1.10.1" - semver "^6.1.0" - -eslint-plugin-promise@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz" - integrity sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng== - -eslint-plugin-react@~7.21.5: - version "7.21.5" - resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz" - integrity sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== - dependencies: - array-includes "^3.1.1" - array.prototype.flatmap "^1.2.3" - doctrine "^2.1.0" - has "^1.0.3" - jsx-ast-utils "^2.4.1 || ^3.0.0" - object.entries "^1.1.2" - object.fromentries "^2.0.2" - object.values "^1.1.1" - prop-types "^15.7.2" - resolve "^1.18.1" - string.prototype.matchall "^4.0.2" - -eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-utils@^2.0.0, eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - -eslint@^7.27.0, eslint@^7.32.0: - version "7.32.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" - integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== + "find-up" "^5.0.0" + "foreground-child" "^2.0.0" + "istanbul-lib-coverage" "^3.0.0" + "istanbul-lib-report" "^3.0.0" + "istanbul-reports" "^3.0.2" + "rimraf" "^3.0.0" + "test-exclude" "^6.0.0" + "v8-to-istanbul" "^8.0.0" + "yargs" "^16.2.0" + "yargs-parser" "^20.2.7" + +"call-bind@^1.0.0", "call-bind@^1.0.2": + "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" + "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "function-bind" "^1.1.1" + "get-intrinsic" "^1.0.2" + +"callsites@^3.0.0": + "integrity" "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + "resolved" "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + "version" "3.1.0" + +"chalk@^2.0.0": + "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + "version" "2.4.2" + dependencies: + "ansi-styles" "^3.2.1" + "escape-string-regexp" "^1.0.5" + "supports-color" "^5.3.0" + +"chalk@^4.0.0", "chalk@^4.1.1", "chalk@^4.1.2": + "integrity" "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "ansi-styles" "^4.1.0" + "supports-color" "^7.1.0" + +"cliui@^7.0.2": + "integrity" "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==" + "resolved" "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" + "version" "7.0.4" + dependencies: + "string-width" "^4.2.0" + "strip-ansi" "^6.0.0" + "wrap-ansi" "^7.0.0" + +"color-convert@^1.9.0": + "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + "version" "1.9.3" + dependencies: + "color-name" "1.1.3" + +"color-convert@^2.0.1": + "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "color-name" "~1.1.4" + +"color-name@~1.1.4": + "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + "version" "1.1.4" + +"color-name@1.1.3": + "integrity" "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + "version" "1.1.3" + +"colorette@^1.2.2": + "integrity" "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w==" + "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz" + "version" "1.3.0" + +"concat-map@0.0.1": + "integrity" "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "version" "0.0.1" + +"convert-source-map@^1.6.0": + "integrity" "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==" + "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" + "version" "1.8.0" + dependencies: + "safe-buffer" "~5.1.1" + +"cross-spawn@^7.0.0", "cross-spawn@^7.0.2": + "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==" + "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + "version" "7.0.3" + dependencies: + "path-key" "^3.1.0" + "shebang-command" "^2.0.0" + "which" "^2.0.1" + +"debarrel@^1.0.2": + "integrity" "sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g==" + "resolved" "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz" + "version" "1.0.2" + +"debug@^2.6.9": + "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" + "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + "version" "2.6.9" + dependencies: + "ms" "2.0.0" + +"debug@^3.2.7": + "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==" + "resolved" "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" + "version" "3.2.7" + dependencies: + "ms" "^2.1.1" + +"debug@^4.0.1", "debug@^4.1.1": + "integrity" "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==" + "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" + "version" "4.3.2" + dependencies: + "ms" "2.1.2" + +"deep-is@^0.1.3": + "integrity" "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" + "version" "0.1.3" + +"define-properties@^1.1.3": + "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" + "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "object-keys" "^1.0.12" + +"doctrine@^2.1.0": + "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "esutils" "^2.0.2" + +"doctrine@^3.0.0": + "integrity" "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "esutils" "^2.0.2" + +"emoji-regex@^8.0.0": + "integrity" "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" + "version" "8.0.0" + +"enquirer@^2.3.5": + "integrity" "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==" + "resolved" "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" + "version" "2.3.6" + dependencies: + "ansi-colors" "^4.1.1" + +"error-ex@^1.3.1": + "integrity" "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==" + "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + "version" "1.3.2" + dependencies: + "is-arrayish" "^0.2.1" + +"es-abstract@^1.18.0-next.1", "es-abstract@^1.18.0-next.2", "es-abstract@^1.18.2": + "integrity" "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==" + "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz" + "version" "1.18.5" + dependencies: + "call-bind" "^1.0.2" + "es-to-primitive" "^1.2.1" + "function-bind" "^1.1.1" + "get-intrinsic" "^1.1.1" + "has" "^1.0.3" + "has-symbols" "^1.0.2" + "internal-slot" "^1.0.3" + "is-callable" "^1.2.3" + "is-negative-zero" "^2.0.1" + "is-regex" "^1.1.3" + "is-string" "^1.0.6" + "object-inspect" "^1.11.0" + "object-keys" "^1.1.1" + "object.assign" "^4.1.2" + "string.prototype.trimend" "^1.0.4" + "string.prototype.trimstart" "^1.0.4" + "unbox-primitive" "^1.0.1" + +"es-to-primitive@^1.2.1": + "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" + "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" + "version" "1.2.1" + dependencies: + "is-callable" "^1.1.4" + "is-date-object" "^1.0.1" + "is-symbol" "^1.0.2" + +"escalade@^3.1.1": + "integrity" "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" + "version" "3.1.1" + +"escape-string-regexp@^1.0.5": + "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + "version" "1.0.5" + +"escape-string-regexp@^4.0.0": + "integrity" "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" + "version" "4.0.0" + +"eslint-config-semistandard@16.0.0": + "integrity" "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==" + "resolved" "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz" + "version" "16.0.0" + +"eslint-config-standard-jsx@10.0.0": + "integrity" "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==" + "resolved" "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz" + "version" "10.0.0" + +"eslint-config-standard@>=16.0.3", "eslint-config-standard@16.0.3": + "integrity" "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==" + "resolved" "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" + "version" "16.0.3" + +"eslint-import-resolver-node@^0.3.5": + "integrity" "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==" + "resolved" "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz" + "version" "0.3.6" + dependencies: + "debug" "^3.2.7" + "resolve" "^1.20.0" + +"eslint-module-utils@^2.6.2": + "integrity" "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==" + "resolved" "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz" + "version" "2.6.2" + dependencies: + "debug" "^3.2.7" + "pkg-dir" "^2.0.0" + +"eslint-plugin-es@^3.0.0": + "integrity" "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "eslint-utils" "^2.0.0" + "regexpp" "^3.0.0" + +"eslint-plugin-import@^2.22.1", "eslint-plugin-import@>=2.22.1": + "integrity" "sha512-Kc6xqT9hiYi2cgybOc0I2vC9OgAYga5o/rAFinam/yF/t5uBqxQbauNPMC6fgb640T/89P0gFoO27FOilJ/Cqg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.0.tgz" + "version" "2.24.0" + dependencies: + "array-includes" "^3.1.3" + "array.prototype.flat" "^1.2.4" + "debug" "^2.6.9" + "doctrine" "^2.1.0" + "eslint-import-resolver-node" "^0.3.5" + "eslint-module-utils" "^2.6.2" + "find-up" "^2.0.0" + "has" "^1.0.3" + "is-core-module" "^2.4.0" + "minimatch" "^3.0.4" + "object.values" "^1.1.3" + "pkg-up" "^2.0.0" + "read-pkg-up" "^3.0.0" + "resolve" "^1.20.0" + "tsconfig-paths" "^3.9.0" + +"eslint-plugin-node@^11.1.0", "eslint-plugin-node@>=11.1.0": + "integrity" "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==" + "resolved" "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz" + "version" "11.1.0" + dependencies: + "eslint-plugin-es" "^3.0.0" + "eslint-utils" "^2.0.0" + "ignore" "^5.1.1" + "minimatch" "^3.0.4" + "resolve" "^1.10.1" + "semver" "^6.1.0" + +"eslint-plugin-promise@^4.2.1 || ^5.0.0", "eslint-plugin-promise@^5.1.0", "eslint-plugin-promise@>=4.2.1": + "integrity" "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==" + "resolved" "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz" + "version" "5.1.0" + +"eslint-plugin-react@^7.21.5", "eslint-plugin-react@~7.21.5": + "integrity" "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==" + "resolved" "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz" + "version" "7.21.5" + dependencies: + "array-includes" "^3.1.1" + "array.prototype.flatmap" "^1.2.3" + "doctrine" "^2.1.0" + "has" "^1.0.3" + "jsx-ast-utils" "^2.4.1 || ^3.0.0" + "object.entries" "^1.1.2" + "object.fromentries" "^2.0.2" + "object.values" "^1.1.1" + "prop-types" "^15.7.2" + "resolve" "^1.18.1" + "string.prototype.matchall" "^4.0.2" + +"eslint-scope@^5.1.1": + "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==" + "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" + "version" "5.1.1" + dependencies: + "esrecurse" "^4.3.0" + "estraverse" "^4.1.1" + +"eslint-utils@^2.0.0", "eslint-utils@^2.1.0": + "integrity" "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==" + "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "eslint-visitor-keys" "^1.1.0" + +"eslint-visitor-keys@^1.1.0", "eslint-visitor-keys@^1.3.0": + "integrity" "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" + "version" "1.3.0" + +"eslint-visitor-keys@^2.0.0": + "integrity" "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" + "version" "2.1.0" + +"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0", "eslint@^3 || ^4 || ^5 || ^6 || ^7", "eslint@^7.0.0", "eslint@^7.12.1", "eslint@^7.27.0", "eslint@^7.32.0", "eslint@>=4.19.1", "eslint@>=5.16.0", "eslint@>=7.12.1": + "integrity" "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==" + "resolved" "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" + "version" "7.32.0" dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.3" "@humanwhocodes/config-array" "^0.5.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - escape-string-regexp "^4.0.0" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.1.2" - globals "^13.6.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^6.0.9" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== - dependencies: - acorn "^7.4.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" - integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -events@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" - integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - version "3.1.3" - resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== - dependencies: - flatted "^3.1.0" - rimraf "^3.0.2" - -flatted@^3.1.0: - version "3.2.2" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz" - integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== - -foreground-child@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz" - integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== - dependencies: - cross-spawn "^7.0.0" - signal-exit "^3.0.2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - -get-stdin@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" - integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== - -glob-parent@^5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob@^7.1.3, glob@^7.1.4: - version "7.1.7" - resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" - integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^13.6.0, globals@^13.9.0: - version "13.11.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz" - integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== - dependencies: - type-fest "^0.20.2" - -graceful-fs@^4.1.15, graceful-fs@^4.1.2: - version "4.2.8" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" - integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== - -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== - -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== - dependencies: - has-symbols "^1.0.2" - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.1: - version "5.1.8" - resolved "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" - integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== - -import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -internal-slot@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" - integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== - dependencies: - get-intrinsic "^1.1.0" - has "^1.0.3" - side-channel "^1.0.4" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-bigint@^1.0.1: - version "1.0.4" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" - integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== - dependencies: - has-bigints "^1.0.1" - -is-boolean-object@^1.1.0: - version "1.1.2" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" - integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-callable@^1.1.4, is-callable@^1.2.3: - version "1.2.4" - resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" - integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== - -is-core-module@^2.2.0, is-core-module@^2.4.0: - version "2.6.0" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz" - integrity sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ== - dependencies: - has "^1.0.3" - -is-date-object@^1.0.1: - version "1.0.5" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== - dependencies: - has-tostringtag "^1.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^4.0.0, is-glob@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-negative-zero@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" - integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== - -is-number-object@^1.0.4: - version "1.0.6" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz" - integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== - dependencies: - has-tostringtag "^1.0.0" - -is-regex@^1.1.3: - version "1.1.4" - resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-string@^1.0.5, is-string@^1.0.6: - version "1.0.7" - resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" - integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== - dependencies: - has-tostringtag "^1.0.0" + "ajv" "^6.10.0" + "chalk" "^4.0.0" + "cross-spawn" "^7.0.2" + "debug" "^4.0.1" + "doctrine" "^3.0.0" + "enquirer" "^2.3.5" + "escape-string-regexp" "^4.0.0" + "eslint-scope" "^5.1.1" + "eslint-utils" "^2.1.0" + "eslint-visitor-keys" "^2.0.0" + "espree" "^7.3.1" + "esquery" "^1.4.0" + "esutils" "^2.0.2" + "fast-deep-equal" "^3.1.3" + "file-entry-cache" "^6.0.1" + "functional-red-black-tree" "^1.0.1" + "glob-parent" "^5.1.2" + "globals" "^13.6.0" + "ignore" "^4.0.6" + "import-fresh" "^3.0.0" + "imurmurhash" "^0.1.4" + "is-glob" "^4.0.0" + "js-yaml" "^3.13.1" + "json-stable-stringify-without-jsonify" "^1.0.1" + "levn" "^0.4.1" + "lodash.merge" "^4.6.2" + "minimatch" "^3.0.4" + "natural-compare" "^1.4.0" + "optionator" "^0.9.1" + "progress" "^2.0.0" + "regexpp" "^3.1.0" + "semver" "^7.2.1" + "strip-ansi" "^6.0.0" + "strip-json-comments" "^3.1.0" + "table" "^6.0.9" + "text-table" "^0.2.0" + "v8-compile-cache" "^2.0.3" + +"espree@^7.3.0", "espree@^7.3.1": + "integrity" "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==" + "resolved" "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" + "version" "7.3.1" + dependencies: + "acorn" "^7.4.0" + "acorn-jsx" "^5.3.1" + "eslint-visitor-keys" "^1.3.0" + +"esprima@^4.0.0": + "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + "version" "4.0.1" + +"esquery@^1.4.0": + "integrity" "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==" + "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "estraverse" "^5.1.0" + +"esrecurse@^4.3.0": + "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==" + "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "estraverse" "^5.2.0" + +"estraverse@^4.1.1": + "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" + "version" "4.3.0" + +"estraverse@^5.1.0", "estraverse@^5.2.0": + "integrity" "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" + "version" "5.2.0" + +"esutils@^2.0.2": + "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + "version" "2.0.3" + +"events@^3.3.0": + "integrity" "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + "resolved" "https://registry.npmjs.org/events/-/events-3.3.0.tgz" + "version" "3.3.0" + +"fast-deep-equal@^3.1.1", "fast-deep-equal@^3.1.3": + "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + "version" "3.1.3" + +"fast-json-stable-stringify@^2.0.0": + "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + "version" "2.1.0" + +"fast-levenshtein@^2.0.6": + "integrity" "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + "version" "2.0.6" + +"file-entry-cache@^6.0.1": + "integrity" "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==" + "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" + "version" "6.0.1" + dependencies: + "flat-cache" "^3.0.4" + +"find-up@^2.0.0", "find-up@^2.1.0": + "integrity" "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "locate-path" "^2.0.0" + +"find-up@^3.0.0": + "integrity" "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "locate-path" "^3.0.0" + +"find-up@^5.0.0": + "integrity" "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "locate-path" "^6.0.0" + "path-exists" "^4.0.0" + +"flat-cache@^3.0.4": + "integrity" "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==" + "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "flatted" "^3.1.0" + "rimraf" "^3.0.2" + +"flatted@^3.1.0": + "integrity" "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==" + "resolved" "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz" + "version" "3.2.2" + +"foreground-child@^2.0.0": + "integrity" "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==" + "resolved" "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "cross-spawn" "^7.0.0" + "signal-exit" "^3.0.2" + +"fs.realpath@^1.0.0": + "integrity" "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + "version" "1.0.0" + +"function-bind@^1.1.1": + "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + "version" "1.1.1" + +"functional-red-black-tree@^1.0.1": + "integrity" "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + "resolved" "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" + "version" "1.0.1" + +"get-caller-file@^2.0.5": + "integrity" "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" + "version" "2.0.5" + +"get-intrinsic@^1.0.2", "get-intrinsic@^1.1.0", "get-intrinsic@^1.1.1": + "integrity" "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==" + "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "function-bind" "^1.1.1" + "has" "^1.0.3" + "has-symbols" "^1.0.1" + +"get-stdin@^8.0.0": + "integrity" "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" + "resolved" "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" + "version" "8.0.0" + +"glob-parent@^5.1.2": + "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==" + "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + "version" "5.1.2" + dependencies: + "is-glob" "^4.0.1" + +"glob@^7.1.3", "glob@^7.1.4": + "integrity" "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==" + "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" + "version" "7.1.7" + dependencies: + "fs.realpath" "^1.0.0" + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "^3.0.4" + "once" "^1.3.0" + "path-is-absolute" "^1.0.0" + +"globals@^13.6.0", "globals@^13.9.0": + "integrity" "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==" + "resolved" "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz" + "version" "13.11.0" + dependencies: + "type-fest" "^0.20.2" + +"graceful-fs@^4.1.15", "graceful-fs@^4.1.2": + "integrity" "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" + "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" + "version" "4.2.8" + +"has-bigints@^1.0.1": + "integrity" "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" + "resolved" "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" + "version" "1.0.1" + +"has-flag@^3.0.0": + "integrity" "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + "version" "3.0.0" + +"has-flag@^4.0.0": + "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" + "version" "4.0.0" + +"has-symbols@^1.0.1", "has-symbols@^1.0.2": + "integrity" "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" + "version" "1.0.2" + +"has-tostringtag@^1.0.0": + "integrity" "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==" + "resolved" "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "has-symbols" "^1.0.2" + +"has@^1.0.3": + "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" + "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "function-bind" "^1.1.1" + +"hosted-git-info@^2.1.4": + "integrity" "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" + "version" "2.8.9" + +"html-escaper@^2.0.0": + "integrity" "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + "resolved" "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" + "version" "2.0.2" + +"ignore@^4.0.6": + "integrity" "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" + "version" "4.0.6" + +"ignore@^5.1.1": + "integrity" "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" + "version" "5.1.8" + +"import-fresh@^3.0.0", "import-fresh@^3.2.1": + "integrity" "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==" + "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + "version" "3.3.0" + dependencies: + "parent-module" "^1.0.0" + "resolve-from" "^4.0.0" + +"imurmurhash@^0.1.4": + "integrity" "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + "version" "0.1.4" + +"inflight@^1.0.4": + "integrity" "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" + "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "once" "^1.3.0" + "wrappy" "1" + +"inherits@2": + "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + "version" "2.0.4" + +"internal-slot@^1.0.3": + "integrity" "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==" + "resolved" "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "get-intrinsic" "^1.1.0" + "has" "^1.0.3" + "side-channel" "^1.0.4" + +"is-arrayish@^0.2.1": + "integrity" "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + "version" "0.2.1" + +"is-bigint@^1.0.1": + "integrity" "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==" + "resolved" "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "has-bigints" "^1.0.1" + +"is-boolean-object@^1.1.0": + "integrity" "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==" + "resolved" "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-callable@^1.1.4", "is-callable@^1.2.3": + "integrity" "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==" + "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" + "version" "1.2.4" + +"is-core-module@^2.2.0", "is-core-module@^2.4.0": + "integrity" "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==" + "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz" + "version" "2.6.0" + dependencies: + "has" "^1.0.3" + +"is-date-object@^1.0.1": + "integrity" "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==" + "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-extglob@^2.1.1": + "integrity" "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + "version" "2.1.1" + +"is-fullwidth-code-point@^3.0.0": + "integrity" "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + "version" "3.0.0" + +"is-glob@^4.0.0", "is-glob@^4.0.1": + "integrity" "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==" + "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "is-extglob" "^2.1.1" + +"is-negative-zero@^2.0.1": + "integrity" "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" + "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" + "version" "2.0.1" + +"is-number-object@^1.0.4": + "integrity" "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==" + "resolved" "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-regex@^1.1.3": + "integrity" "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==" + "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-string@^1.0.5", "is-string@^1.0.6": + "integrity" "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==" + "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" + "version" "1.0.7" + dependencies: + "has-tostringtag" "^1.0.0" -is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.4" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" - integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== - dependencies: - has-symbols "^1.0.2" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= +"is-symbol@^1.0.2", "is-symbol@^1.0.3": + "integrity" "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==" + "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "has-symbols" "^1.0.2" + +"isexe@^2.0.0": + "integrity" "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + "version" "2.0.0" -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== +"istanbul-lib-coverage@^3.0.0": + "integrity" "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" + "resolved" "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" + "version" "3.0.0" -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== +"istanbul-lib-report@^3.0.0": + "integrity" "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==" + "resolved" "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" + "version" "3.0.0" dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" + "istanbul-lib-coverage" "^3.0.0" + "make-dir" "^3.0.0" + "supports-color" "^7.1.0" -istanbul-reports@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" - integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" +"istanbul-reports@^3.0.2": + "integrity" "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==" + "resolved" "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "html-escaper" "^2.0.0" + "istanbul-lib-report" "^3.0.0" -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== +"js-tokens@^3.0.0 || ^4.0.0", "js-tokens@^4.0.0": + "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + "version" "4.0.0" + +"js-yaml@^3.13.1": + "integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==" + "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" + "version" "3.14.1" dependencies: - argparse "^1.0.7" - esprima "^4.0.0" + "argparse" "^1.0.7" + "esprima" "^4.0.0" -json-parse-better-errors@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== +"json-parse-better-errors@^1.0.1": + "integrity" "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + "resolved" "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" + "version" "1.0.2" -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json5@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== +"json-schema-traverse@^0.4.1": + "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + "version" "0.4.1" + +"json-schema-traverse@^1.0.0": + "integrity" "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" + "version" "1.0.0" + +"json-stable-stringify-without-jsonify@^1.0.1": + "integrity" "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + "resolved" "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" + "version" "1.0.1" + +"json5@^2.2.0": + "integrity" "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==" + "resolved" "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" + "version" "2.2.0" dependencies: - minimist "^1.2.5" + "minimist" "^1.2.5" "jsx-ast-utils@^2.4.1 || ^3.0.0": - version "3.2.0" - resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" - integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== - dependencies: - array-includes "^3.1.2" - object.assign "^4.1.2" - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" + "integrity" "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==" + "resolved" "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "array-includes" "^3.1.2" + "object.assign" "^4.1.2" + +"levn@^0.4.1": + "integrity" "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==" + "resolved" "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" + "version" "0.4.1" + dependencies: + "prelude-ls" "^1.2.1" + "type-check" "~0.4.0" -load-json-file@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" - integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= - dependencies: - graceful-fs "^4.1.2" - parse-json "^4.0.0" - pify "^3.0.0" - strip-bom "^3.0.0" - -load-json-file@^5.2.0: - version "5.3.0" - resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz" - integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== - dependencies: - graceful-fs "^4.1.15" - parse-json "^4.0.0" - pify "^4.0.1" - strip-bom "^3.0.0" - type-fest "^0.3.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -lockbase@^1.2.2: - version "1.2.2" - resolved "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz" - integrity sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg== - dependencies: - c8 "^7.8.0" - uuid "^8.3.2" - -lodash.clonedeep@^4.5.0: - version "4.5.0" - resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" - integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.truncate@^4.4.2: - version "4.4.2" - resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" - integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= - -logslot@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz" - integrity sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q== - dependencies: - chalk "^4.1.1" - -loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -make-dir@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.2.0, minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -mql-to-jql@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz" - integrity sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ== - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@^2.1.1: - version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -node-ejdb-lite@^3.4.4: - version "3.4.4" - resolved "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz" - integrity sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg== - dependencies: - semver "^7.3.5" - -normalize-package-data@^2.3.2: - version "2.5.0" - resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-inspect@^1.11.0, object-inspect@^1.9.0: - version "1.11.0" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz" - integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== - -object-keys@^1.0.12, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@^4.1.2: - version "4.1.2" - resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" - integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - has-symbols "^1.0.1" - object-keys "^1.1.1" - -object.entries@^1.1.2: - version "1.1.4" - resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" - integrity sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.2" - -object.fromentries@^2.0.2: - version "2.0.4" - resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz" - integrity sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" - has "^1.0.3" - -object.values@^1.1.1, object.values@^1.1.3: - version "1.1.4" - resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" - integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.2" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.3" - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.3.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.6: - version "1.0.7" - resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -pkg-conf@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz" - integrity sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ== - dependencies: - find-up "^3.0.0" - load-json-file "^5.2.0" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -promise-limit@^2.7.0: - version "2.7.0" - resolved "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz" - integrity sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw== - -prop-types@^15.7.2: - version "15.7.2" - resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" - integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.8.1" - -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -react-is@^16.8.1: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -read-pkg-up@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" - integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= - dependencies: - find-up "^2.0.0" - read-pkg "^3.0.0" - -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" - integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= - dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" - -regexp.prototype.flags@^1.3.1: - version "1.3.1" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" - integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -regexpp@^3.0.0, regexpp@^3.1.0: - version "3.2.0" - resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve@^1.10.0, resolve@^1.10.1, resolve@^1.18.1, resolve@^1.20.0: - version "1.20.0" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== - dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" - -rimraf@^3.0.0, rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -semistandard@^16.0.1: - version "16.0.1" - resolved "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz" - integrity sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q== - dependencies: - eslint "^7.27.0" - eslint-config-semistandard "16.0.0" - eslint-config-standard "16.0.3" - eslint-config-standard-jsx "10.0.0" - eslint-plugin-import "^2.22.1" - eslint-plugin-node "^11.1.0" - eslint-plugin-promise "^5.1.0" - eslint-plugin-react "~7.21.5" - standard-engine "^14.0.0" +"load-json-file@^4.0.0": + "integrity" "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=" + "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "graceful-fs" "^4.1.2" + "parse-json" "^4.0.0" + "pify" "^3.0.0" + "strip-bom" "^3.0.0" + +"load-json-file@^5.2.0": + "integrity" "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==" + "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz" + "version" "5.3.0" + dependencies: + "graceful-fs" "^4.1.15" + "parse-json" "^4.0.0" + "pify" "^4.0.1" + "strip-bom" "^3.0.0" + "type-fest" "^0.3.0" + +"locate-path@^2.0.0": + "integrity" "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "p-locate" "^2.0.0" + "path-exists" "^3.0.0" + +"locate-path@^3.0.0": + "integrity" "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "p-locate" "^3.0.0" + "path-exists" "^3.0.0" + +"locate-path@^6.0.0": + "integrity" "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "p-locate" "^5.0.0" + +"lockbase@^1.2.2": + "integrity" "sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg==" + "resolved" "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz" + "version" "1.2.2" + dependencies: + "c8" "^7.8.0" + "uuid" "^8.3.2" + +"lodash.clonedeep@^4.5.0": + "integrity" "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + "resolved" "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" + "version" "4.5.0" + +"lodash.merge@^4.6.2": + "integrity" "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + "resolved" "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" + "version" "4.6.2" + +"lodash.truncate@^4.4.2": + "integrity" "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" + "resolved" "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" + "version" "4.4.2" + +"logslot@^2.1.0": + "integrity" "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==" + "resolved" "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "chalk" "^4.1.1" + +"loose-envify@^1.4.0": + "integrity" "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==" + "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "js-tokens" "^3.0.0 || ^4.0.0" + +"lru-cache@^6.0.0": + "integrity" "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "yallist" "^4.0.0" + +"make-dir@^3.0.0": + "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" + "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "semver" "^6.0.0" + +"minimatch@^3.0.4": + "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "brace-expansion" "^1.1.7" + +"minimist@^1.2.0", "minimist@^1.2.5": + "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" + "version" "1.2.5" + +"mql-to-jql@^1.4.0": + "integrity" "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" + "resolved" "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz" + "version" "1.4.0" + +"ms@^2.1.1": + "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + "version" "2.1.3" + +"ms@2.0.0": + "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" + "version" "2.0.0" + +"ms@2.1.2": + "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + "version" "2.1.2" + +"natural-compare@^1.4.0": + "integrity" "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" + "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + "version" "1.4.0" + +"node-ejdb-lite@^3.4.4": + "integrity" "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==" + "resolved" "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz" + "version" "3.4.4" + dependencies: + "semver" "^7.3.5" + +"normalize-package-data@^2.3.2": + "integrity" "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==" + "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + "version" "2.5.0" + dependencies: + "hosted-git-info" "^2.1.4" + "resolve" "^1.10.0" + "semver" "2 || 3 || 4 || 5" + "validate-npm-package-license" "^3.0.1" + +"object-assign@^4.1.1": + "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "version" "4.1.1" + +"object-inspect@^1.11.0", "object-inspect@^1.9.0": + "integrity" "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" + "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz" + "version" "1.11.0" + +"object-keys@^1.0.12", "object-keys@^1.1.1": + "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" + "version" "1.1.1" + +"object.assign@^4.1.2": + "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" + "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "call-bind" "^1.0.0" + "define-properties" "^1.1.3" + "has-symbols" "^1.0.1" + "object-keys" "^1.1.1" + +"object.entries@^1.1.2": + "integrity" "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==" + "resolved" "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.2" + +"object.fromentries@^2.0.2": + "integrity" "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==" + "resolved" "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz" + "version" "2.0.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.0-next.2" + "has" "^1.0.3" + +"object.values@^1.1.1", "object.values@^1.1.3": + "integrity" "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==" + "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.2" + +"once@^1.3.0": + "integrity" "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" + "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "wrappy" "1" + +"optionator@^0.9.1": + "integrity" "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==" + "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" + "version" "0.9.1" + dependencies: + "deep-is" "^0.1.3" + "fast-levenshtein" "^2.0.6" + "levn" "^0.4.1" + "prelude-ls" "^1.2.1" + "type-check" "^0.4.0" + "word-wrap" "^1.2.3" + +"p-limit@^1.1.0": + "integrity" "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" + "version" "1.3.0" + dependencies: + "p-try" "^1.0.0" + +"p-limit@^2.0.0": + "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "p-try" "^2.0.0" + +"p-limit@^3.0.2": + "integrity" "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "yocto-queue" "^0.1.0" + +"p-locate@^2.0.0": + "integrity" "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "p-limit" "^1.1.0" + +"p-locate@^3.0.0": + "integrity" "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "p-limit" "^2.0.0" + +"p-locate@^5.0.0": + "integrity" "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "p-limit" "^3.0.2" + +"p-try@^1.0.0": + "integrity" "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + "resolved" "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" + "version" "1.0.0" + +"p-try@^2.0.0": + "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" + "version" "2.2.0" + +"parent-module@^1.0.0": + "integrity" "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==" + "resolved" "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "callsites" "^3.0.0" + +"parse-json@^4.0.0": + "integrity" "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=" + "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "error-ex" "^1.3.1" + "json-parse-better-errors" "^1.0.1" + +"path-exists@^3.0.0": + "integrity" "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" + "version" "3.0.0" + +"path-exists@^4.0.0": + "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" + "version" "4.0.0" + +"path-is-absolute@^1.0.0": + "integrity" "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "version" "1.0.1" + +"path-key@^3.1.0": + "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + "version" "3.1.1" + +"path-parse@^1.0.6": + "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" + "version" "1.0.7" + +"path-type@^3.0.0": + "integrity" "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==" + "resolved" "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "pify" "^3.0.0" + +"pify@^3.0.0": + "integrity" "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "resolved" "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" + "version" "3.0.0" + +"pify@^4.0.1": + "integrity" "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + "resolved" "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" + "version" "4.0.1" + +"pkg-conf@^3.1.0": + "integrity" "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==" + "resolved" "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "find-up" "^3.0.0" + "load-json-file" "^5.2.0" + +"pkg-dir@^2.0.0": + "integrity" "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=" + "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "find-up" "^2.1.0" + +"pkg-up@^2.0.0": + "integrity" "sha1-yBmscoBZpGHKscOImivjxJoATX8=" + "resolved" "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "find-up" "^2.1.0" + +"prelude-ls@^1.2.1": + "integrity" "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" + "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" + "version" "1.2.1" + +"progress@^2.0.0": + "integrity" "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + "resolved" "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" + "version" "2.0.3" + +"promise-limit@^2.7.0": + "integrity" "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" + "resolved" "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz" + "version" "2.7.0" + +"prop-types@^15.7.2": + "integrity" "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==" + "resolved" "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" + "version" "15.7.2" + dependencies: + "loose-envify" "^1.4.0" + "object-assign" "^4.1.1" + "react-is" "^16.8.1" + +"punycode@^2.1.0": + "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" + "version" "2.1.1" + +"react-is@^16.8.1": + "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + "version" "16.13.1" + +"read-pkg-up@^3.0.0": + "integrity" "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=" + "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "find-up" "^2.0.0" + "read-pkg" "^3.0.0" + +"read-pkg@^3.0.0": + "integrity" "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=" + "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "load-json-file" "^4.0.0" + "normalize-package-data" "^2.3.2" + "path-type" "^3.0.0" + +"regexp.prototype.flags@^1.3.1": + "integrity" "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==" + "resolved" "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"regexpp@^3.0.0", "regexpp@^3.1.0": + "integrity" "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" + "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" + "version" "3.2.0" + +"require-directory@^2.1.1": + "integrity" "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" + "version" "2.1.1" + +"require-from-string@^2.0.2": + "integrity" "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" + "resolved" "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" + "version" "2.0.2" + +"resolve-from@^4.0.0": + "integrity" "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + "version" "4.0.0" + +"resolve@^1.10.0", "resolve@^1.10.1", "resolve@^1.18.1", "resolve@^1.20.0": + "integrity" "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==" + "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" + "version" "1.20.0" + dependencies: + "is-core-module" "^2.2.0" + "path-parse" "^1.0.6" + +"rimraf@^3.0.0", "rimraf@^3.0.2": + "integrity" "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "glob" "^7.1.3" + +"safe-buffer@~5.1.1": + "integrity" "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" + "version" "5.1.2" + +"semistandard@^16.0.1": + "integrity" "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==" + "resolved" "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz" + "version" "16.0.1" + dependencies: + "eslint" "^7.27.0" + "eslint-config-semistandard" "16.0.0" + "eslint-config-standard" "16.0.3" + "eslint-config-standard-jsx" "10.0.0" + "eslint-plugin-import" "^2.22.1" + "eslint-plugin-node" "^11.1.0" + "eslint-plugin-promise" "^5.1.0" + "eslint-plugin-react" "~7.21.5" + "standard-engine" "^14.0.0" + +"semver@^6.0.0", "semver@^6.1.0": + "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + "version" "6.3.0" + +"semver@^7.2.1": + "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" + "version" "7.3.5" + dependencies: + "lru-cache" "^6.0.0" + +"semver@^7.3.5": + "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" + "version" "7.3.5" + dependencies: + "lru-cache" "^6.0.0" "semver@2 || 3 || 4 || 5": - version "5.7.1" - resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@^6.0.0, semver@^6.1.0: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^7.2.1, semver@^7.3.5: - version "7.3.5" - resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== - dependencies: - lru-cache "^6.0.0" - -server-destroy@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" - integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== - dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" - -signal-exit@^3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - -slice-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.10" - resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz" - integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -standard-engine@^14.0.0: - version "14.0.1" - resolved "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz" - integrity sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q== - dependencies: - get-stdin "^8.0.0" - minimist "^1.2.5" - pkg-conf "^3.1.0" - xdg-basedir "^4.0.0" - -string-width@^4.1.0, string-width@^4.2.0: - version "4.2.2" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" - integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string.prototype.matchall@^4.0.2: - version "4.0.5" - resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz" - integrity sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.2" - get-intrinsic "^1.1.1" - has-symbols "^1.0.2" - internal-slot "^1.0.3" - regexp.prototype.flags "^1.3.1" - side-channel "^1.0.4" - -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -table@^6.0.9: - version "6.7.1" - resolved "https://registry.npmjs.org/table/-/table-6.7.1.tgz" - integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== - dependencies: - ajv "^8.0.1" - lodash.clonedeep "^4.5.0" - lodash.truncate "^4.4.2" - slice-ansi "^4.0.0" - string-width "^4.2.0" - strip-ansi "^6.0.0" - -tcpocket@^7.3.1: - version "7.3.1" - resolved "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.1.tgz" - integrity sha512-zloGtNVrx4YPUCMPuoFpF6cOC5G/ueXHwNqx51d/VfsMhYjufCmSSZQdfm3R7E/g1xJvGvWEhANBQRe9mvUE0Q== - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" + "version" "5.7.1" + +"server-destroy@^1.0.1": + "integrity" "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + "resolved" "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" + "version" "1.0.1" + +"shebang-command@^2.0.0": + "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==" + "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "shebang-regex" "^3.0.0" + +"shebang-regex@^3.0.0": + "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + "version" "3.0.0" + +"side-channel@^1.0.4": + "integrity" "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==" + "resolved" "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.0" + "get-intrinsic" "^1.0.2" + "object-inspect" "^1.9.0" + +"signal-exit@^3.0.2": + "integrity" "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" + "version" "3.0.3" + +"slice-ansi@^4.0.0": + "integrity" "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==" + "resolved" "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "ansi-styles" "^4.0.0" + "astral-regex" "^2.0.0" + "is-fullwidth-code-point" "^3.0.0" + +"source-map@^0.7.3": + "integrity" "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" + "version" "0.7.3" + +"spdx-correct@^3.0.0": + "integrity" "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==" + "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" + "version" "3.1.1" + dependencies: + "spdx-expression-parse" "^3.0.0" + "spdx-license-ids" "^3.0.0" + +"spdx-exceptions@^2.1.0": + "integrity" "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "resolved" "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" + "version" "2.3.0" + +"spdx-expression-parse@^3.0.0": + "integrity" "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==" + "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "spdx-exceptions" "^2.1.0" + "spdx-license-ids" "^3.0.0" + +"spdx-license-ids@^3.0.0": + "integrity" "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==" + "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz" + "version" "3.0.10" + +"sprintf-js@~1.0.2": + "integrity" "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + "version" "1.0.3" + +"standard-engine@^14.0.0": + "integrity" "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==" + "resolved" "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz" + "version" "14.0.1" + dependencies: + "get-stdin" "^8.0.0" + "minimist" "^1.2.5" + "pkg-conf" "^3.1.0" + "xdg-basedir" "^4.0.0" + +"string-width@^4.1.0", "string-width@^4.2.0": + "integrity" "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" + "version" "4.2.2" + dependencies: + "emoji-regex" "^8.0.0" + "is-fullwidth-code-point" "^3.0.0" + "strip-ansi" "^6.0.0" + +"string.prototype.matchall@^4.0.2": + "integrity" "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==" + "resolved" "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz" + "version" "4.0.5" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.18.2" + "get-intrinsic" "^1.1.1" + "has-symbols" "^1.0.2" + "internal-slot" "^1.0.3" + "regexp.prototype.flags" "^1.3.1" + "side-channel" "^1.0.4" + +"string.prototype.trimend@^1.0.4": + "integrity" "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==" + "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"string.prototype.trimstart@^1.0.4": + "integrity" "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==" + "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"strip-ansi@^6.0.0": + "integrity" "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "ansi-regex" "^5.0.0" + +"strip-bom@^3.0.0": + "integrity" "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" + "version" "3.0.0" + +"strip-json-comments@^3.1.0", "strip-json-comments@^3.1.1": + "integrity" "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" + "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + "version" "3.1.1" + +"supports-color@^5.3.0": + "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + "version" "5.5.0" + dependencies: + "has-flag" "^3.0.0" + +"supports-color@^7.1.0": + "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" + "version" "7.2.0" + dependencies: + "has-flag" "^4.0.0" + +"table@^6.0.9": + "integrity" "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==" + "resolved" "https://registry.npmjs.org/table/-/table-6.7.1.tgz" + "version" "6.7.1" + dependencies: + "ajv" "^8.0.1" + "lodash.clonedeep" "^4.5.0" + "lodash.truncate" "^4.4.2" + "slice-ansi" "^4.0.0" + "string-width" "^4.2.0" + "strip-ansi" "^6.0.0" + +"tcpocket@^7.3.2": + "integrity" "sha512-RhiQc2w6aPrOFGFnkQJwAVIS2KNhhmltOw+X3w1I4WCPZ1TMGuh0D+kUU3f5yzr0SQ77YV//cFKcxTy34Ko7zA==" + "resolved" "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.2.tgz" + "version" "7.3.2" + +"test-exclude@^6.0.0": + "integrity" "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==" + "resolved" "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" + "version" "6.0.0" dependencies: "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -tsconfig-paths@^3.9.0: - version "3.10.1" - resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" - integrity sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q== - dependencies: - json5 "^2.2.0" - minimist "^1.2.0" - strip-bom "^3.0.0" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^0.3.0: - version "0.3.1" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" - integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== - -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== - dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" - which-boxed-primitive "^1.0.2" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - -v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== - -v8-to-istanbul@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz" - integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== + "glob" "^7.1.4" + "minimatch" "^3.0.4" + +"text-table@^0.2.0": + "integrity" "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + "version" "0.2.0" + +"tsconfig-paths@^3.9.0": + "integrity" "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==" + "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" + "version" "3.10.1" + dependencies: + "json5" "^2.2.0" + "minimist" "^1.2.0" + "strip-bom" "^3.0.0" + +"type-check@^0.4.0", "type-check@~0.4.0": + "integrity" "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==" + "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + "version" "0.4.0" + dependencies: + "prelude-ls" "^1.2.1" + +"type-fest@^0.20.2": + "integrity" "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" + "version" "0.20.2" + +"type-fest@^0.3.0": + "integrity" "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" + "version" "0.3.1" + +"unbox-primitive@^1.0.1": + "integrity" "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==" + "resolved" "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "function-bind" "^1.1.1" + "has-bigints" "^1.0.1" + "has-symbols" "^1.0.2" + "which-boxed-primitive" "^1.0.2" + +"uri-js@^4.2.2": + "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==" + "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + "version" "4.4.1" + dependencies: + "punycode" "^2.1.0" + +"uuid@^8.3.2": + "integrity" "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + "resolved" "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" + "version" "8.3.2" + +"v8-compile-cache@^2.0.3": + "integrity" "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" + "resolved" "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" + "version" "2.3.0" + +"v8-to-istanbul@^8.0.0": + "integrity" "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==" + "resolved" "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz" + "version" "8.0.0" dependencies: "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -which-boxed-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" - integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== - dependencies: - is-bigint "^1.0.1" - is-boolean-object "^1.1.0" - is-number-object "^1.0.4" - is-string "^1.0.5" - is-symbol "^1.0.3" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -word-wrap@^1.2.3: - version "1.2.3" - resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -wtfnode@^0.9.1: - version "0.9.1" - resolved "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz" - integrity sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA== - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" - integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== - -y18n@^5.0.5: - version "5.0.8" - resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" - integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@^20.2.2, yargs-parser@^20.2.7: - version "20.2.9" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + "convert-source-map" "^1.6.0" + "source-map" "^0.7.3" + +"validate-npm-package-license@^3.0.1": + "integrity" "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==" + "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "spdx-correct" "^3.0.0" + "spdx-expression-parse" "^3.0.0" + +"which-boxed-primitive@^1.0.2": + "integrity" "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==" + "resolved" "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "is-bigint" "^1.0.1" + "is-boolean-object" "^1.1.0" + "is-number-object" "^1.0.4" + "is-string" "^1.0.5" + "is-symbol" "^1.0.3" + +"which@^2.0.1": + "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==" + "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "isexe" "^2.0.0" + +"word-wrap@^1.2.3": + "integrity" "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + "resolved" "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" + "version" "1.2.3" + +"wrap-ansi@^7.0.0": + "integrity" "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + "version" "7.0.0" + dependencies: + "ansi-styles" "^4.0.0" + "string-width" "^4.1.0" + "strip-ansi" "^6.0.0" + +"wrappy@1": + "integrity" "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "version" "1.0.2" + +"wtfnode@^0.9.1": + "integrity" "sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA==" + "resolved" "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz" + "version" "0.9.1" + +"xdg-basedir@^4.0.0": + "integrity" "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" + "resolved" "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" + "version" "4.0.0" + +"y18n@^5.0.5": + "integrity" "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + "resolved" "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" + "version" "5.0.8" + +"yallist@^4.0.0": + "integrity" "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + "version" "4.0.0" + +"yargs-parser@^20.2.2", "yargs-parser@^20.2.7": + "integrity" "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" + "version" "20.2.9" + +"yargs@^16.2.0": + "integrity" "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==" + "resolved" "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" + "version" "16.2.0" + dependencies: + "cliui" "^7.0.2" + "escalade" "^3.1.1" + "get-caller-file" "^2.0.5" + "require-directory" "^2.1.1" + "string-width" "^4.2.0" + "y18n" "^5.0.5" + "yargs-parser" "^20.2.2" + +"yocto-queue@^0.1.0": + "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" + "version" "0.1.0" From d78ae905588b0a1179caf8beef3c8816e7ee0e9d Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Mon, 23 Aug 2021 21:12:56 +1000 Subject: [PATCH 33/73] Fixed a bunch of race conditions and hanging connections when closing server --- lib/controllers/external/delete.js | 12 +++++++ lib/controllers/external/patch.js | 12 +++++++ lib/controllers/external/post.js | 2 ++ lib/controllers/external/put.js | 12 +++++++ lib/controllers/internal/delete.js | 13 +------- lib/controllers/internal/notifyOn.js | 17 +++++++--- lib/controllers/internal/patch.js | 13 +------- lib/controllers/internal/post.js | 8 ----- lib/controllers/internal/put.js | 14 +------- lib/driver/index.js | 7 ++-- lib/modules/collections/index.js | 11 ++++++- lib/modules/conflicts/index.js | 6 +++- lib/modules/notify/index.js | 6 ++++ lib/utils/calculateAllowedErrorCount.js | 5 ++- lib/utils/isDocumentPrimaryReplica.js | 12 ++++++- package.json | 2 +- test/features/basic.js | 6 ++-- test/features/cluster.js | 7 ++-- test/features/notify.js | 30 +++++++++++------ test/helpers/createTestServers.js | 5 ++- test/index.js | 13 +------- test/lib/utils/calculateAllowedErrorCount.js | 15 +++++---- yarn.lock | 34 ++++++++++---------- 23 files changed, 150 insertions(+), 112 deletions(-) diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index 760f102..a2ad654 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -36,6 +36,18 @@ async function deleteController (context, socket, request, response) { return; } + const effectedDocumentIds = results.reduce((ids, result) => { + if (result.command === c.STATUS_OK) { + return ids.concat(result.json()[c.DATA]); + } + + return ids; + }, []); + + effectedDocumentIds.forEach(documentId => { + context.emit('notify', `DELETE:/${collectionId}/${documentId}`, 'DELETE', collectionId, documentId, request); + }); + response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 239e777..f033936 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -36,6 +36,18 @@ async function patchController (context, socket, request, response) { return; } + const effectedDocumentIds = results.reduce((ids, result) => { + if (result.command === c.STATUS_OK) { + return ids.concat(result.json()[c.DATA]); + } + + return ids; + }, []); + + effectedDocumentIds.forEach(documentId => { + context.emit('notify', `PATCH:/${collectionId}/${documentId}`, 'PATCH', collectionId, documentId, request); + }); + response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index 7d5c228..5e64cda 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -45,6 +45,8 @@ async function postController (context, socket, request, response) { return; } + context.emit('notify', `POST:/${collectionId}/${document.id}`, 'POST', collectionId, document.id, request); + response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 520666b..0815f3f 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -36,6 +36,18 @@ async function putController (context, socket, request, response) { return; } + const effectedDocumentIds = results.reduce((ids, result) => { + if (result.command === c.STATUS_OK) { + return ids.concat(result.json()[c.DATA]); + } + + return ids; + }, []); + + effectedDocumentIds.forEach(documentId => { + context.emit('notify', `PUT:/${collectionId}/${documentId}`, 'PUT', collectionId, documentId, request); + }); + response.reply(c.STATUS_OK, results .filter(result => !!result) diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index aa93a30..364608d 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -1,9 +1,5 @@ -import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; - -const log = logslot('canhazdb.controllers.internal.delete'); async function deleteController (context, socket, request, response) { const requestData = request.json(); @@ -16,18 +12,11 @@ async function deleteController (context, socket, request, response) { await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); const foundDocuments = await context.driver.get(collectionId, query); - const primaryReplicaDocuments = foundDocuments.filter( - isDocumentPrimaryReplica.bind(null, context) - ); await context.driver.del(collectionId, query); - primaryReplicaDocuments.forEach(document => { - context.emit('notify', `DELETE:/${collectionId}/${document.id}`, 'DELETE', collectionId, document.id, request); - }); - response.reply(c.STATUS_OK, { - [c.DATA]: primaryReplicaDocuments.length + [c.DATA]: foundDocuments.map(document => document.id) }); } diff --git a/lib/controllers/internal/notifyOn.js b/lib/controllers/internal/notifyOn.js index fc74677..4cd2f23 100644 --- a/lib/controllers/internal/notifyOn.js +++ b/lib/controllers/internal/notifyOn.js @@ -4,15 +4,22 @@ import c from '../../constants.js'; async function internalNotifyOnController (context, socket, request, response) { const requestData = request.json(); + const nodeName = requestData[c.INTERNAL]; const notifyPath = requestData[c.NOTIFY_PATH]; const notifiers = context.notify.internalNotifiers; - notifiers.push({ - path: notifyPath, - regex: new RegExp(notifyPath), - nodeName: requestData[c.INTERNAL] - }); + const existingNotifier = context.notify.internalNotifiers.find( + notifier => notifier.nodeName === nodeName && notifier.path === notifyPath + ); + + if (!existingNotifier) { + notifiers.push({ + path: notifyPath, + regex: new RegExp(notifyPath), + nodeName: requestData[c.INTERNAL] + }); + } response.reply(c.STATUS_OK); } diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index 80db510..7edc8e9 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -1,9 +1,5 @@ -import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; - -const log = logslot('canhazdb.controllers.internal.patch'); async function patchController (context, socket, request, response) { const requestData = request.json(); @@ -16,18 +12,11 @@ async function patchController (context, socket, request, response) { await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); const foundDocuments = await context.driver.get(collectionId, query); - const primaryReplicaDocuments = foundDocuments.filter( - isDocumentPrimaryReplica.bind(null, context) - ); await context.driver.patch(collectionId, data, query); - primaryReplicaDocuments.forEach(document => { - context.emit('notify', `PATCH:/${collectionId}/${document.id}`, 'PATCH', collectionId, document.id, request); - }); - response.reply(c.STATUS_OK, { - [c.DATA]: primaryReplicaDocuments.length + [c.DATA]: foundDocuments.map(document => document.id) }); } diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 8830c55..87260ca 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -1,9 +1,5 @@ -import logslot from 'logslot'; import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; - -const log = logslot('canhazdb.controllers.internal.post'); async function postController (context, socket, request, response) { const requestData = request.json(); @@ -19,10 +15,6 @@ async function postController (context, socket, request, response) { data._replicatedNodes = replicatedNodes.sort(); const document = await context.driver.post(collectionId, data); - if (isDocumentPrimaryReplica(context, document)) { - context.emit('notify', `POST:/${collectionId}/${document.id}`, 'POST', collectionId, document.id, request); - } - response.reply(c.STATUS_CREATED, { [c.DATA]: document }); diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index 51a06c2..b396f6a 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -1,12 +1,7 @@ -import logslot from 'logslot'; - import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -import isDocumentPrimaryReplica from '../../utils/isDocumentPrimaryReplica.js'; import validateRequestData from '../../utils/validateRequestData.js'; -const log = logslot('canhazdb.controllers.internal.put'); - async function putController (context, socket, request, response) { const requestData = request.json(); @@ -21,18 +16,11 @@ async function putController (context, socket, request, response) { await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); const foundDocuments = await context.driver.get(collectionId, query); - const primaryReplicaDocuments = foundDocuments.filter( - isDocumentPrimaryReplica.bind(null, context) - ); await context.driver.put(collectionId, data, query); - primaryReplicaDocuments.forEach(document => { - context.emit('notify', `PUT:/${collectionId}/${document.id}`, 'PUT', collectionId, document.id, request); - }); - response.reply(c.STATUS_OK, { - [c.DATA]: primaryReplicaDocuments.length + [c.DATA]: foundDocuments.map(document => document.id) }); } diff --git a/lib/driver/index.js b/lib/driver/index.js index 1aaf002..c4752dc 100644 --- a/lib/driver/index.js +++ b/lib/driver/index.js @@ -160,12 +160,9 @@ async function createEjdbDriver (state) { activeQueries = activeQueries + 1; try { - const result = await fn(...args); + return await fn(...args); + } finally { activeQueries = activeQueries - 1; - return result; - } catch (error) { - activeQueries = activeQueries - 1; - throw error; } }; } diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js index cdeb0e8..34bfe05 100644 --- a/lib/modules/collections/index.js +++ b/lib/modules/collections/index.js @@ -1,13 +1,22 @@ +import logslot from 'logslot'; import documentCountCollector from './documentCountCollector.js'; - import c from '../../constants.js'; +const log = logslot('canhazdb.collections'); async function updateCollectionByAmount (context, collectionId, cachedItem) { const collectionsQuery = await context.thisNode.client.send(c.GET, { [c.COLLECTION_ID]: 'system.collections', [c.QUERY]: { collectionId: collectionId } }); + if (collectionsQuery.command !== c.STATUS_OK) { + log.warn('could not updateCollectionByAmount', { + command: collectionsQuery.command, + data: collectionsQuery.data && collectionsQuery.data.toString() + }); + return; + } + const collection = collectionsQuery.json()[c.DATA][0]; if (collection) { diff --git a/lib/modules/conflicts/index.js b/lib/modules/conflicts/index.js index 9148d69..e5921d5 100644 --- a/lib/modules/conflicts/index.js +++ b/lib/modules/conflicts/index.js @@ -1,3 +1,6 @@ +import logslot from 'logslot'; +const log = logslot('canhazdb.conflicts'); + function syncServerHealth (context) { const thisNodeHasConflicts = context.conflicts.items .some(conflict => conflict.nodeName === context.thisNode.name); @@ -13,11 +16,12 @@ function syncServerHealth (context) { const totalNodes = context.nodes.length; const onlineNodes = context.nodes.filter(node => node.online).length; - const percentageOnline = onlineNodes / totalNodes; + const percentageOnline = parseFloat((onlineNodes / totalNodes).toFixed(2)); if (percentageOnline > 0.5) { context.thisNode.status = 'healthy'; } else { + log.warn('less than 51% of the cluster is healthy', { onlineNodes, totalNodes, percentageOnline }); context.thisNode.status = 'unhealthy'; } } diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index e3f3828..5abb479 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -94,6 +94,12 @@ function notifyModule (context) { node.client.send(c.NOTIFY, { [c.INTERNAL]: context.thisNode.name, [c.DATA]: notifyPath + }).catch(error => { + if (error.message.includes('client disconnected')) { + log.warn('could not send notify because client was not connected'); + } else { + throw error; + } }); }); }); diff --git a/lib/utils/calculateAllowedErrorCount.js b/lib/utils/calculateAllowedErrorCount.js index 9d54b3f..abbce44 100644 --- a/lib/utils/calculateAllowedErrorCount.js +++ b/lib/utils/calculateAllowedErrorCount.js @@ -1,6 +1,9 @@ function calculateAllowedErrorCount (replicas, nodeCount) { + if (nodeCount < 1) { + throw new Error('calculateAllowedErrorCount: nodeCount can not be less than 1'); + } if (nodeCount <= replicas) { - return 0; + return Math.max(0, nodeCount - 1); } return Math.min(replicas - 1, nodeCount - replicas); diff --git a/lib/utils/isDocumentPrimaryReplica.js b/lib/utils/isDocumentPrimaryReplica.js index d04362c..d02deb7 100644 --- a/lib/utils/isDocumentPrimaryReplica.js +++ b/lib/utils/isDocumentPrimaryReplica.js @@ -1,5 +1,15 @@ function isDocumentPrimaryReplica (context, document) { - return document._replicatedNodes[0] === context.thisNode.name; + const connectedNodes = context.nodes.filter(node => node.status === 'healthy'); + + const availableReplicatedNodes = document._replicatedNodes + .sort() + .filter(nodeName => { + return !!connectedNodes.find(cnode => cnode.name === nodeName); + }); + + if (availableReplicatedNodes[0] === context.thisNode.name) { + return true; + } } export default isDocumentPrimaryReplica; diff --git a/package.json b/package.json index ad04825..8abfffd 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "uuid": "^8.3.2" }, "devDependencies": { - "basictap": "^2.0.2", + "basictap": "^2.2.1", "c8": "^7.8.0", "eslint": "^7.32.0", "semistandard": "^16.0.1", diff --git a/test/features/basic.js b/test/features/basic.js index 2d60ce8..a8e5cf9 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -184,7 +184,7 @@ test('put', async t => { .map(item => item.foo); t.deepEqual(foos, ['barz', 'barz', 'barz'], 'returned 1 document'); - t.equal(putResponses.json()[c.DATA], 3, 'altered the correct number of documents'); + t.equal(putResponses.json()[c.DATA].length, 3, 'altered the correct number of documents'); await client.close(); await servers.close(); }); @@ -220,7 +220,7 @@ test('patch', async t => { { foo: 'barz', b: 1 } ], 'returned 1 document'); - t.equal(putResponses.json()[c.DATA], 3, 'altered the correct number of documents'); + t.equal(putResponses.json()[c.DATA].length, 3, 'altered the correct number of documents'); await client.close(); await servers.close(); }); @@ -240,7 +240,7 @@ test('delete', async t => { }); t.equal(deleteResponse.command, c.STATUS_OK, 'has status'); - t.equal(deleteResponse.json()[c.DATA], 1, 'returned 1 change'); + t.equal(deleteResponse.json()[c.DATA].length, 1, 'returned 1 change'); await client.close(); await servers.close(); diff --git a/test/features/cluster.js b/test/features/cluster.js index 1a40b3f..4de91e9 100644 --- a/test/features/cluster.js +++ b/test/features/cluster.js @@ -62,7 +62,7 @@ test('cluster - post', async t => { await servers.close(); }); -test('cluster - post - two goes down', async t => { +test('cluster - post - one goes down', async t => { t.plan(12); const servers = await createTestServers(3); @@ -97,15 +97,14 @@ test('cluster - post - two goes down', async t => { t.equal(postResponses[0].json()[c.DATA].foo, 'bar1', 'has foo property'); await Promise.all([ - servers[1].close(), - servers[2].close() + servers[1].close() ]); const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests' }); - t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.command, c.STATUS_OK, 'getResponse has status'); t.equal(getResponse.json()[c.DATA].length, 3, 'returned 1 document'); const sortedDocuments = getResponse.json()[c.DATA] diff --git a/test/features/notify.js b/test/features/notify.js index 92e7cc1..e5819a3 100644 --- a/test/features/notify.js +++ b/test/features/notify.js @@ -22,8 +22,10 @@ function createExampleDocuments (client, count, extraData) { ); } +test.todo('notify - with multiple servers'); + test('notify', async t => { - t.plan(3); + t.plan(4); const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); @@ -45,13 +47,17 @@ test('notify', async t => { } }); - await client.send(c.POST, { + const postResponse = await client.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar' } }); + t.equal(postResponse.command, c.STATUS_CREATED, 'postResponse has STATUS_CREATED'); + + await sleep(200); + await client.send(c.NOTIFY_OFF, { [c.NOTIFY_PATH]: '.*:/tests/.*' }); @@ -65,8 +71,11 @@ test('notify', async t => { t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); - await client.close(); - await servers.close(); + setTimeout(async () => { + await client.close(); + await servers.close(); + t.pass('instance closed successfully'); + }, 200); }); test('notify - post', async t => { @@ -228,10 +237,10 @@ test('notify - client disconnections clean up', async t => { await servers.close(); }); -test.skip('notify - reconnections', async t => { - t.plan(2); +test('notify - reconnections', async t => { + t.plan(3); - let [server1, server2] = await createTestServers(2); + let [server1, server2, server3] = await createTestServers(3); const [client1] = [ tcpocket.createClient(server1.clientConfig) ]; @@ -254,19 +263,22 @@ test.skip('notify - reconnections', async t => { const client2 = tcpocket.createClient(server2.clientConfig); await client2.waitUntilConnected(); - await client2.send(c.POST, { + const postResponse = await client2.send(c.POST, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'bar' } }); + t.equal(postResponse.command, c.STATUS_CREATED); + await sleep(200); await Promise.all([ client1.close(), client2.close(), server1.close(), - server2.close() + server2.close(), + server3.close() ]); }); diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index 360dd1a..5114ca6 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -61,7 +61,10 @@ async function createTestServers (count, options = {}) { if (options.waitUntilOnline) { await waitUntil(() => { - return server.thisNode && server.thisNode.status === 'healthy'; + return ( + server.thisNode && server.thisNode.status === 'healthy' && + server.nodes.every(node => node.status === 'healthy') + ); }); } diff --git a/test/index.js b/test/index.js index 1b51fd8..dac9815 100644 --- a/test/index.js +++ b/test/index.js @@ -1,20 +1,9 @@ -import wtfnode from 'wtfnode'; -import basictap from 'basictap'; - -wtfnode.init(); - -basictap.on('finish', () => { - setTimeout(() => { - wtfnode.dump(); - }, 500); -}); - import('./lib/driver/index.js'); import('./lib/utils/calculateAllowedErrorCount.js'); import('./lib/prepareOptions.js'); import('./features/basic.js'); -// import('./features/cluster.js'); +import('./features/cluster.js'); import('./features/health.js'); import('./features/notify.js'); import('./features/lock.js'); diff --git a/test/lib/utils/calculateAllowedErrorCount.js b/test/lib/utils/calculateAllowedErrorCount.js index 7e37383..455e183 100644 --- a/test/lib/utils/calculateAllowedErrorCount.js +++ b/test/lib/utils/calculateAllowedErrorCount.js @@ -2,8 +2,11 @@ import test from 'basictap'; import calculateAllowedErrorCount from '../../../lib/utils/calculateAllowedErrorCount.js'; test('with 0 nodes', t => { - const result = calculateAllowedErrorCount(3, 0); - t.equal(result, 0); + try { + calculateAllowedErrorCount(3, 0); + } catch (error) { + t.equal(error.message, 'calculateAllowedErrorCount: nodeCount can not be less than 1'); + } }); test('with 1 nodes', t => { @@ -13,12 +16,12 @@ test('with 1 nodes', t => { test('with 2 nodes', t => { const result = calculateAllowedErrorCount(3, 2); - t.equal(result, 0); + t.equal(result, 1); }); test('with 3 nodes', t => { const result = calculateAllowedErrorCount(3, 3); - t.equal(result, 0); + t.equal(result, 2); }); test('with 4 nodes', t => { @@ -53,10 +56,10 @@ test('with 5 replicas 10 nodes', t => { test('with 5 replicas 5 nodes', t => { const result = calculateAllowedErrorCount(5, 5); - t.equal(result, 0); + t.equal(result, 4); }); test('with 5 replicas 2 nodes', t => { const result = calculateAllowedErrorCount(5, 2); - t.equal(result, 0); + t.equal(result, 1); }); diff --git a/yarn.lock b/yarn.lock index af0c3c8..ff3efd8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -168,12 +168,12 @@ "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" "version" "1.0.2" -"basictap@^2.0.2": - "integrity" "sha512-VOdXq35elvFV8MEwUuR/huFAMMiPNfo1HpJpATtCxoWyKSGjlL6Y2ZR6IOl7nwj7YMCJxPAwTR7thRfipNOX3Q==" - "resolved" "https://registry.npmjs.org/basictap/-/basictap-2.0.2.tgz" - "version" "2.0.2" +"basictap@^2.2.1": + "integrity" "sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw==" + "resolved" "https://registry.npmjs.org/basictap/-/basictap-2.2.1.tgz" + "version" "2.2.1" dependencies: - "colorette" "^1.2.2" + "colorette" "^1.3.0" "events" "^3.3.0" "promise-limit" "^2.7.0" @@ -266,7 +266,7 @@ "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" "version" "1.1.3" -"colorette@^1.2.2": +"colorette@^1.3.0": "integrity" "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w==" "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz" "version" "1.3.0" @@ -425,7 +425,7 @@ "resolved" "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" "version" "16.0.3" -"eslint-import-resolver-node@^0.3.5": +"eslint-import-resolver-node@^0.3.6": "integrity" "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==" "resolved" "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz" "version" "0.3.6" @@ -450,25 +450,25 @@ "regexpp" "^3.0.0" "eslint-plugin-import@^2.22.1", "eslint-plugin-import@>=2.22.1": - "integrity" "sha512-Kc6xqT9hiYi2cgybOc0I2vC9OgAYga5o/rAFinam/yF/t5uBqxQbauNPMC6fgb640T/89P0gFoO27FOilJ/Cqg==" - "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.0.tgz" - "version" "2.24.0" + "integrity" "sha512-KSFWhNxPH8OGJwpRJJs+Z7I0a13E2iFQZJIvSnCu6KUs4qmgAm3xN9GYBCSoiGWmwA7gERZPXqYQjcoCROnYhQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.1.tgz" + "version" "2.24.1" dependencies: "array-includes" "^3.1.3" "array.prototype.flat" "^1.2.4" "debug" "^2.6.9" "doctrine" "^2.1.0" - "eslint-import-resolver-node" "^0.3.5" + "eslint-import-resolver-node" "^0.3.6" "eslint-module-utils" "^2.6.2" "find-up" "^2.0.0" "has" "^1.0.3" - "is-core-module" "^2.4.0" + "is-core-module" "^2.6.0" "minimatch" "^3.0.4" - "object.values" "^1.1.3" + "object.values" "^1.1.4" "pkg-up" "^2.0.0" "read-pkg-up" "^3.0.0" "resolve" "^1.20.0" - "tsconfig-paths" "^3.9.0" + "tsconfig-paths" "^3.10.1" "eslint-plugin-node@^11.1.0", "eslint-plugin-node@>=11.1.0": "integrity" "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==" @@ -867,7 +867,7 @@ "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" "version" "1.2.4" -"is-core-module@^2.2.0", "is-core-module@^2.4.0": +"is-core-module@^2.2.0", "is-core-module@^2.6.0": "integrity" "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==" "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz" "version" "2.6.0" @@ -1208,7 +1208,7 @@ "es-abstract" "^1.18.0-next.2" "has" "^1.0.3" -"object.values@^1.1.1", "object.values@^1.1.3": +"object.values@^1.1.1", "object.values@^1.1.4": "integrity" "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==" "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" "version" "1.1.4" @@ -1692,7 +1692,7 @@ "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" "version" "0.2.0" -"tsconfig-paths@^3.9.0": +"tsconfig-paths@^3.10.1": "integrity" "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==" "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" "version" "3.10.1" From 78438e53eba7fccec48e8a8397e7d3f36bb2d2f8 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Mon, 23 Aug 2021 21:21:23 +1000 Subject: [PATCH 34/73] Implement multiple server notify test --- test/features/notify.js | 57 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/test/features/notify.js b/test/features/notify.js index e5819a3..89e8e1c 100644 --- a/test/features/notify.js +++ b/test/features/notify.js @@ -22,7 +22,62 @@ function createExampleDocuments (client, count, extraData) { ); } -test.todo('notify - with multiple servers'); +test('notify - with multiple servers', async t => { + t.plan(4); + + const servers = await createTestServers(2); + const client1 = tcpocket.createClient(servers[0].clientConfig); + const client2 = tcpocket.createClient(servers[1].clientConfig); + await client1.waitUntilConnected(); + await client2.waitUntilConnected(); + + client1.on('message', ({ command, data }) => { + t.equal(command, c.NOTIFY); + t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); + }); + + const notifyResponse = await client1.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + await client2.send(c.POST, { + [c.COLLECTION_ID]: 'notests', + [c.DATA]: { + baz: 'baz' + } + }); + + const postResponse = await client2.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + t.equal(postResponse.command, c.STATUS_CREATED, 'postResponse has STATUS_CREATED'); + + await sleep(200); + + await client1.send(c.NOTIFY_OFF, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + await client2.send(c.POST, { + [c.COLLECTION_ID]: 'tests', + [c.DATA]: { + foo: 'bar' + } + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + setTimeout(async () => { + await client1.close(); + await client2.close(); + await servers.close(); + t.pass('instance closed successfully'); + }, 200); +}); test('notify', async t => { t.plan(4); From 067cd2158116566b5c5f171fd565509d6c9aa9bd Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 13:48:07 +1000 Subject: [PATCH 35/73] Implement conflicts --- docs/consistency.md | 83 + lib/constants.js | 7 +- lib/controllers/external/count.js | 2 +- lib/controllers/external/delete.js | 11 +- lib/controllers/external/get.js | 2 +- lib/controllers/external/lock.js | 2 +- lib/controllers/external/notifyOff.js | 2 +- lib/controllers/external/notifyOn.js | 2 +- lib/controllers/external/patch.js | 11 +- lib/controllers/external/post.js | 67 +- lib/controllers/external/put.js | 11 +- lib/controllers/external/unlock.js | 2 +- lib/controllers/index.js | 75 - lib/controllers/internal/count.js | 2 +- lib/controllers/internal/delete.js | 2 +- lib/controllers/internal/get.js | 2 +- lib/controllers/internal/info.js | 2 +- lib/controllers/internal/lock.js | 2 +- lib/controllers/internal/notify.js | 2 +- lib/controllers/internal/notifyOff.js | 2 +- lib/controllers/internal/notifyOn.js | 2 +- lib/controllers/internal/patch.js | 2 +- lib/controllers/internal/post.js | 2 +- lib/controllers/internal/put.js | 2 +- lib/controllers/internal/unlock.js | 2 +- lib/createHandler.js | 15 +- lib/index.js | 19 +- lib/modules/conflicts/index.js | 180 +- .../controllers/createControllerStore.js | 36 + lib/modules/controllers/index.js | 169 + package.json | 2 +- test/features/basic.js | 6 +- test/features/conflicts.js | 128 + test/features/lock.js | 4 +- test/index.js | 3 + .../controllers/createControllerStore.js | 84 + yarn.lock | 3588 +++++++++-------- 37 files changed, 2560 insertions(+), 1975 deletions(-) create mode 100644 docs/consistency.md delete mode 100644 lib/controllers/index.js create mode 100644 lib/modules/controllers/createControllerStore.js create mode 100644 lib/modules/controllers/index.js create mode 100644 test/features/conflicts.js create mode 100644 test/modules/controllers/createControllerStore.js diff --git a/docs/consistency.md b/docs/consistency.md new file mode 100644 index 0000000..7b44caf --- /dev/null +++ b/docs/consistency.md @@ -0,0 +1,83 @@ +# Terminology +## Route Types +- external +- internal +- system + +## Node States +connected = true if a socket is open, false if not. +online = true if has connected and had at least one full sync + +## Node Health +healthy = node is fully functional, accept all routes +unhealthy = node has conflicts, accepts only system routes +critical = node had conflicts, but could not resolve them + +# Node Workflow +- Process starts +- Status is unhealthy +- Attempts to join any previous known nodes +- Attempts to join any specified nodes in options +- Server is started, for system communication only +- Wait until 51% of node are online +- Resolve any conflicts +- Status is healthy +- Server accepts all communication + +# Health +When a node comes online, it's default state is "unhealthy". + +A node can be in only one of the following states: +- healthy = is online, can communicate and is ready for querying +- unhealthy = is online, can communicate but only for system commands +- fatal = is online, but has conflicts that it's unable to resolve +- offline = is offline and can't do anything + +When a node establishes a connection with another node, it learns about any conflicts that node knows about, and adds them to it's own conflict array. + +If there are any conflicts, they are resolved (see [conflicts](#conflicts) section). If there are none, or once they are all resolved, the node will broadcast to all other node that it's state is "healthy" during the next sync. + +# Conflicts +When a node goes offline, is unresponsive or has some sort of internal error, it's possible for it's data to become out of sync with the cluster. + +Every node keeps an inmemory array of all conflicts. + +When an external query attempts to mutate a record, but one of the replica nodes fail to respond, it will: +- Add an item to the conflicts array +- Tell all other online nodes about the conflict + +If a node learns it has a conflict, from another node or during startup, it will change it's health to 'unhealthy' and attempt to resolve the conflicts. + +## Resolutions +When a node learns it has a conflict, it changes it's state to 'unhealthy', therefore refusing to answer any internal or external actions. + +A conflict contains a `uuid`, `nodeName`, `method`, `collectionId`, `documentId`, `data` and `timestamp`. + +For each conflict, the owning node, will try to sync it's own data with the other nodes. + +Conflicts can only be resolved if more than 51% of the cluster is online. + +The process is: +1. Replace own data record, or delete, as stated via the `method` +2. Broadcasts the conflict `uuid` has been resolved +3. Each node then removes the conflict + +# External Actions + +## post /test { color: 'blue' } +- selects 3 nodes +- all 3 nodes respond with STATUS_CREATED + +## get /test { color: 'blue } +- receives 1 document out of 3 replications + +## put /test { color: 'red' } +### full green +- all 3 nodes respond with STATUS_OK +- put was successful +### partial green +- 2 nodes respond with STATUS_OK +- 1 node does not respond +- adds new conflict [{ method, collectionId, documentId, data, timestamp }] +- other nodes change unresponsive node's health to "unhealthy" +- put was successful diff --git a/lib/constants.js b/lib/constants.js index 0682ce6..d6bb7ad 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -46,7 +46,12 @@ const constants = { STATUS_SERVER_ERROR: 124, STATUS_SERVER_UNHEALTHY: 125, STATUS_SERVER_CLOSED: 126, - STATUS_LOCKED: 127 + STATUS_LOCKED: 127, + + CONFLICT_GET: 150, + CONFLICT_RAISE: 151, + CONFLICT_RESOLVE: 152, + CONFLICT_CLEANUP: 153 }; Object.keys(constants).forEach(key => { diff --git a/lib/controllers/external/count.js b/lib/controllers/external/count.js index 120ace2..f873f81 100644 --- a/lib/controllers/external/count.js +++ b/lib/controllers/external/count.js @@ -4,7 +4,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.count'); -async function countController (context, socket, request, response) { +async function countController ({ context, socket, request, response }) { const requestData = request.json(); const results = await Promise.all( diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index a2ad654..cef9411 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -5,7 +5,7 @@ import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.delete'); -async function deleteController (context, socket, request, response) { +async function deleteController ({ context, socket, request, response }) { const requestData = request.json(); await validateRequestData(context, requestData); @@ -48,12 +48,9 @@ async function deleteController (context, socket, request, response) { context.emit('notify', `DELETE:/${collectionId}/${documentId}`, 'DELETE', collectionId, documentId, request); }); - response.reply(c.STATUS_OK, - results - .filter(result => !!result) - .map(result => result.json()) - .reduce((a, b) => a + b) - ); + response.reply(c.STATUS_OK, { + [c.DATA]: effectedDocumentIds + }); } export default deleteController; diff --git a/lib/controllers/external/get.js b/lib/controllers/external/get.js index 8464c08..318a69b 100644 --- a/lib/controllers/external/get.js +++ b/lib/controllers/external/get.js @@ -7,7 +7,7 @@ import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.get'); -async function getController (context, socket, request, response) { +async function getController ({ context, socket, request, response }) { const requestData = request.json(); await validateRequestData(context, requestData); diff --git a/lib/controllers/external/lock.js b/lib/controllers/external/lock.js index 34215ce..a18f676 100644 --- a/lib/controllers/external/lock.js +++ b/lib/controllers/external/lock.js @@ -5,7 +5,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.lock'); -async function lockController (context, socket, request, response) { +async function lockController ({ context, socket, request, response }) { const requestData = request.json(); const id = uuid(); diff --git a/lib/controllers/external/notifyOff.js b/lib/controllers/external/notifyOff.js index d3d12a6..b368aa2 100644 --- a/lib/controllers/external/notifyOff.js +++ b/lib/controllers/external/notifyOff.js @@ -2,7 +2,7 @@ import c from '../../constants.js'; -async function externalNotifyOffController (context, socket, request, response) { +async function externalNotifyOffController ({ context, socket, request, response }) { const requestData = request.json(); const notifyPath = requestData[c.NOTIFY_PATH]; diff --git a/lib/controllers/external/notifyOn.js b/lib/controllers/external/notifyOn.js index 671bf30..2eb88d6 100644 --- a/lib/controllers/external/notifyOn.js +++ b/lib/controllers/external/notifyOn.js @@ -2,7 +2,7 @@ import c from '../../constants.js'; -async function externalNotifyOnController (context, socket, request, response) { +async function externalNotifyOnController ({ context, socket, request, response }) { const requestData = request.json(); const notifyPath = requestData[c.NOTIFY_PATH]; diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index f033936..6e99e42 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -5,7 +5,7 @@ import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.patch'); -async function patchController (context, socket, request, response) { +async function patchController ({ context, socket, request, response }) { const requestData = request.json(); await validateRequestData(context, requestData); @@ -48,12 +48,9 @@ async function patchController (context, socket, request, response) { context.emit('notify', `PATCH:/${collectionId}/${documentId}`, 'PATCH', collectionId, documentId, request); }); - response.reply(c.STATUS_OK, - results - .filter(result => !!result) - .map(result => result.json()) - .reduce((a, b) => a + b) - ); + response.reply(c.STATUS_OK, { + [c.DATA]: effectedDocumentIds + }); } export default patchController; diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index 5e64cda..3a516c0 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -6,7 +6,7 @@ import selectRandomItemsFromArray from '../../utils/selectRandomItemsFromArray.j const log = logslot('canhazdb.controllers.external.post'); -async function postController (context, socket, request, response) { +async function postController ({ context, socket, request, response }) { const nodes = selectRandomItemsFromArray( context.nodes, Math.min(context.settings.replicas, context.nodes.length) @@ -15,33 +15,68 @@ async function postController (context, socket, request, response) { const requestData = request.json(); const document = { - ...requestData[c.DATA], - id: uuid() + id: uuid(), + ...requestData[c.DATA] }; const collectionId = requestData[c.COLLECTION_ID]; + const internalRequestData = { + [c.LOCK_ID]: requestData[c.LOCK_ID], + [c.LOCK_STRATEGY]: requestData[c.LOCK_STRATEGY], + [c.COLLECTION_ID]: collectionId, + [c.REPLICATED_NODES]: nodes.map(node => node.name), + [c.DATA]: document, + [c.INTERNAL]: true + }; + const results = await Promise.all( nodes.map(node => { - return node.client && node.client.send(c.POST, { - [c.LOCK_ID]: requestData[c.LOCK_ID], - [c.LOCK_STRATEGY]: requestData[c.LOCK_STRATEGY], - [c.COLLECTION_ID]: collectionId, - [c.REPLICATED_NODES]: nodes.map(node => node.name), - [c.DATA]: document, - [c.INTERNAL]: true - }).catch(error => { - log.warn('node send failed', error); - }); + if (!node.client) { + return { + node, + error: new Error('client not connected') + }; + } + + return node.client.send(c.POST, internalRequestData) + .then(result => { + return { + node, + ...result + }; + }) + .catch(error => { + log.warn('node send failed', error); + return { + node, + error + }; + }); }) ); const errors = results.filter(result => { - return !result || result.command !== c.STATUS_CREATED; + return !result || result.command !== c.STATUS_CREATED || result.error; + }); + + errors.forEach(error => { + context.emit('conflict', { + id: uuid(), + nodeName: error.node.name, + method: 'POST', + request: internalRequestData, + collectionId, + documentId: document.id, + document, + timestamp: new Date() + }); }); - if (errors.length > 0) { - response.reply((errors[0] && errors[0].command) || c.STATUS_SERVER_ERROR, errors.data); + if (results.length - errors.length === 0) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: 'No node in the cluster responded successfully' + }); return; } diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 0815f3f..48cc2d5 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -5,7 +5,7 @@ import validateRequestData from '../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.put'); -async function putController (context, socket, request, response) { +async function putController ({ context, socket, request, response }) { const requestData = request.json(); await validateRequestData(context, requestData); @@ -48,12 +48,9 @@ async function putController (context, socket, request, response) { context.emit('notify', `PUT:/${collectionId}/${documentId}`, 'PUT', collectionId, documentId, request); }); - response.reply(c.STATUS_OK, - results - .filter(result => !!result) - .map(result => result.json()) - .reduce((a, b) => a + b) - ); + response.reply(c.STATUS_OK, { + [c.DATA]: effectedDocumentIds + }); } export default putController; diff --git a/lib/controllers/external/unlock.js b/lib/controllers/external/unlock.js index 0222a2d..a6ae81d 100644 --- a/lib/controllers/external/unlock.js +++ b/lib/controllers/external/unlock.js @@ -4,7 +4,7 @@ import c from '../../constants.js'; const log = logslot('canhazdb.controllers.external.unlock'); -async function unlockController (context, socket, request, response) { +async function unlockController ({ context, socket, request, response }) { const requestData = request.json(); const results = await Promise.all( diff --git a/lib/controllers/index.js b/lib/controllers/index.js deleted file mode 100644 index 20d717a..0000000 --- a/lib/controllers/index.js +++ /dev/null @@ -1,75 +0,0 @@ -import c from '../constants.js'; -import internalInfo from './internal/info.js'; -import internalPost from './internal/post.js'; -import internalCount from './internal/count.js'; -import internalGet from './internal/get.js'; -import internalPut from './internal/put.js'; -import internalPatch from './internal/patch.js'; -import internalDelete from './internal/delete.js'; -import internalLock from './internal/lock.js'; -import internalUnlock from './internal/unlock.js'; - -import externalPost from './external/post.js'; -import externalCount from './external/count.js'; -import externalGet from './external/get.js'; -import externalPut from './external/put.js'; -import externalPatch from './external/patch.js'; -import externalDelete from './external/delete.js'; -import externalLock from './external/lock.js'; -import externalUnlock from './external/unlock.js'; - -import externalNotifyOn from './external/notifyOn.js'; -import externalNotifyOff from './external/notifyOff.js'; -import internalNotifyOn from './internal/notifyOn.js'; -import internalNotifyOff from './internal/notifyOff.js'; -import internalNotify from './internal/notify.js'; - -function rejectWhenUnhealthy (fn) { - return async (context, socket, request, response) => { - if (context.thisNode.status === 'unhealthy') { - response.reply(c.STATUS_SERVER_UNHEALTHY); - return; - } - - return fn(context, socket, request, response); - }; -} - -const controllers = { - system: { - [c.INFO]: internalInfo - }, - - internal: { - [c.POST]: rejectWhenUnhealthy(internalPost), - [c.COUNT]: rejectWhenUnhealthy(internalCount), - [c.GET]: rejectWhenUnhealthy(internalGet), - [c.PUT]: rejectWhenUnhealthy(internalPut), - [c.PATCH]: rejectWhenUnhealthy(internalPatch), - [c.DELETE]: rejectWhenUnhealthy(internalDelete), - - [c.LOCK]: rejectWhenUnhealthy(internalLock), - [c.UNLOCK]: rejectWhenUnhealthy(internalUnlock), - - [c.NOTIFY]: rejectWhenUnhealthy(internalNotify), - [c.NOTIFY_ON]: rejectWhenUnhealthy(internalNotifyOn), - [c.NOTIFY_OFF]: rejectWhenUnhealthy(internalNotifyOff) - }, - - external: { - [c.POST]: rejectWhenUnhealthy(externalPost), - [c.COUNT]: rejectWhenUnhealthy(externalCount), - [c.GET]: rejectWhenUnhealthy(externalGet), - [c.PUT]: rejectWhenUnhealthy(externalPut), - [c.PATCH]: rejectWhenUnhealthy(externalPatch), - [c.DELETE]: rejectWhenUnhealthy(externalDelete), - - [c.LOCK]: rejectWhenUnhealthy(externalLock), - [c.UNLOCK]: rejectWhenUnhealthy(externalUnlock), - - [c.NOTIFY_ON]: rejectWhenUnhealthy(externalNotifyOn), - [c.NOTIFY_OFF]: rejectWhenUnhealthy(externalNotifyOff) - } -}; - -export default controllers; diff --git a/lib/controllers/internal/count.js b/lib/controllers/internal/count.js index ed56999..f967fbb 100644 --- a/lib/controllers/internal/count.js +++ b/lib/controllers/internal/count.js @@ -16,7 +16,7 @@ function isFirstConnectedReplica (connectedNodes, nodeName) { }; } -async function internalCountController (context, socket, request, response) { +async function internalCountController ({ context, socket, request, response }) { const requestData = request.json(); const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/controllers/internal/delete.js b/lib/controllers/internal/delete.js index 364608d..82e9281 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/controllers/internal/delete.js @@ -1,7 +1,7 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -async function deleteController (context, socket, request, response) { +async function deleteController ({ context, socket, request, response }) { const requestData = request.json(); const query = requestData[c.QUERY]; diff --git a/lib/controllers/internal/get.js b/lib/controllers/internal/get.js index 3861a1e..94ac3e9 100644 --- a/lib/controllers/internal/get.js +++ b/lib/controllers/internal/get.js @@ -16,7 +16,7 @@ function isFirstConnectedReplica (connectedNodes, nodeName) { }; } -async function internalGetController (context, socket, request, response) { +async function internalGetController ({ context, socket, request, response }) { const requestData = request.json(); const collectionId = requestData[c.COLLECTION_ID]; diff --git a/lib/controllers/internal/info.js b/lib/controllers/internal/info.js index 52cff18..d7161ef 100644 --- a/lib/controllers/internal/info.js +++ b/lib/controllers/internal/info.js @@ -1,6 +1,6 @@ import c from '../../constants.js'; -async function infoController (context, socket, request, response) { +async function infoController ({ context, socket, request, response }) { const data = context.info.generators.reduce((data, generator) => { return { ...data, diff --git a/lib/controllers/internal/lock.js b/lib/controllers/internal/lock.js index c9b8346..4e69561 100644 --- a/lib/controllers/internal/lock.js +++ b/lib/controllers/internal/lock.js @@ -1,6 +1,6 @@ import c from '../../constants.js'; -async function lockController (context, socket, request, response) { +async function lockController ({ context, socket, request, response }) { const requestData = request.json(); const keys = requestData[c.LOCK_KEYS]; diff --git a/lib/controllers/internal/notify.js b/lib/controllers/internal/notify.js index b4c3a99..88d0c1d 100644 --- a/lib/controllers/internal/notify.js +++ b/lib/controllers/internal/notify.js @@ -2,7 +2,7 @@ import c from '../../constants.js'; -async function internalNotifyController (context, socket, request, response) { +async function internalNotifyController ({ context, socket, request, response }) { const requestData = request.json(); const notifyPath = requestData[c.DATA]; diff --git a/lib/controllers/internal/notifyOff.js b/lib/controllers/internal/notifyOff.js index 412f52a..f1461b8 100644 --- a/lib/controllers/internal/notifyOff.js +++ b/lib/controllers/internal/notifyOff.js @@ -2,7 +2,7 @@ import c from '../../constants.js'; -async function internalNotifyOffController (context, socket, request, response) { +async function internalNotifyOffController ({ context, socket, request, response }) { const requestData = request.json(); const notifyPath = requestData[c.NOTIFY_PATH]; diff --git a/lib/controllers/internal/notifyOn.js b/lib/controllers/internal/notifyOn.js index 4cd2f23..5e680fd 100644 --- a/lib/controllers/internal/notifyOn.js +++ b/lib/controllers/internal/notifyOn.js @@ -2,7 +2,7 @@ import c from '../../constants.js'; -async function internalNotifyOnController (context, socket, request, response) { +async function internalNotifyOnController ({ context, socket, request, response }) { const requestData = request.json(); const nodeName = requestData[c.INTERNAL]; const notifyPath = requestData[c.NOTIFY_PATH]; diff --git a/lib/controllers/internal/patch.js b/lib/controllers/internal/patch.js index 7edc8e9..6e2f39a 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/controllers/internal/patch.js @@ -1,7 +1,7 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -async function patchController (context, socket, request, response) { +async function patchController ({ context, socket, request, response }) { const requestData = request.json(); const data = requestData[c.DATA]; diff --git a/lib/controllers/internal/post.js b/lib/controllers/internal/post.js index 87260ca..75a647c 100644 --- a/lib/controllers/internal/post.js +++ b/lib/controllers/internal/post.js @@ -1,7 +1,7 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; -async function postController (context, socket, request, response) { +async function postController ({ context, socket, request, response }) { const requestData = request.json(); const data = requestData[c.DATA]; diff --git a/lib/controllers/internal/put.js b/lib/controllers/internal/put.js index b396f6a..e99a45f 100644 --- a/lib/controllers/internal/put.js +++ b/lib/controllers/internal/put.js @@ -2,7 +2,7 @@ import c from '../../constants.js'; import isLockedOrWait from '../../utils/isLockedOrWait.js'; import validateRequestData from '../../utils/validateRequestData.js'; -async function putController (context, socket, request, response) { +async function putController ({ context, socket, request, response }) { const requestData = request.json(); await validateRequestData(context, requestData); diff --git a/lib/controllers/internal/unlock.js b/lib/controllers/internal/unlock.js index 8fca0bf..60433ad 100644 --- a/lib/controllers/internal/unlock.js +++ b/lib/controllers/internal/unlock.js @@ -1,6 +1,6 @@ import c from '../../constants.js'; -async function unlockController (context, socket, request, response) { +async function unlockController ({ context, socket, request, response }) { const requestData = request.json(); const id = requestData[c.LOCK_ID]; diff --git a/lib/createHandler.js b/lib/createHandler.js index b56bd2b..b98f4e2 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -1,12 +1,12 @@ import logslot from 'logslot'; import tcpocket from 'tcpocket'; -import controllers from './controllers/index.js'; import c from './constants.js'; const log = logslot('canhazdb.createHandler'); function handleError (request, response, error) { + log.error(error.message, error); if (error.status) { response.reply(error.status, { [c.ERROR]: error?.error?.message || 'Unknown server error' @@ -30,19 +30,24 @@ function createHandler (context) { const requestData = request.data ? request.json() : {}; - const origin = requestData[c.SYSTEM] + const requestType = requestData[c.SYSTEM] ? 'system' : requestData[c.INTERNAL] ? 'internal' : 'external'; - const controller = await controllers[origin][request.command]; + const controllers = await context.controllers[requestType].find(request); - if (!controller) { + if (controllers.length === 0) { socket.activeRequests = socket.activeRequests - 1; response.reply(c.STATUS_NOT_FOUND); return; } - const result = await controller(context, request.socket, request, response) + const result = await controllers[0].handler({ + context, + socket: request.socket, + request, + response + }) .catch(error => { handleError(request, response, error); }) diff --git a/lib/index.js b/lib/index.js index 2d1df61..11b798b 100644 --- a/lib/index.js +++ b/lib/index.js @@ -9,10 +9,11 @@ import join from './utils/join.js'; import waitUntil from './utils/waitUntil.js'; import notifyModule from './modules/notify/index.js'; +import controllersModule from './modules/controllers/index.js'; import collectionsModule from './modules/collections/index.js'; +import conflictsModule from './modules/conflicts/index.js'; import c from './constants.js'; -import conflictsModule from './modules/conflicts/index.js'; const log = logslot('canhazdb.server'); @@ -47,6 +48,7 @@ async function canhazdb (rawOptions) { closed: false, clients: [], settings: { + syncInterval: 250, replicas: 3 }, info: { @@ -58,9 +60,12 @@ async function canhazdb (rawOptions) { } ); - notifyModule(context); - collectionsModule(context); - conflictsModule(context); + const activeModules = [ + controllersModule(context), + notifyModule(context), + collectionsModule(context), + conflictsModule(context) + ]; context.driver = await driver(context); @@ -123,7 +128,7 @@ async function canhazdb (rawOptions) { }) ); - context.syncNodesInfoTimer = setTimeout(syncNodesInfo, 250); + context.syncNodesInfoTimer = setTimeout(syncNodesInfo, context.settings.syncInterval); } syncNodesInfo(); @@ -150,6 +155,10 @@ async function canhazdb (rawOptions) { return node.close(); })); + await Promise.all( + activeModules.filter(item => !!item).map(item => item.cleanup && item.cleanup()) + ); + await context.driver.close(); }; diff --git a/lib/modules/conflicts/index.js b/lib/modules/conflicts/index.js index e5921d5..520eb11 100644 --- a/lib/modules/conflicts/index.js +++ b/lib/modules/conflicts/index.js @@ -1,39 +1,120 @@ import logslot from 'logslot'; +import c from '../../constants.js'; const log = logslot('canhazdb.conflicts'); -function syncServerHealth (context) { - const thisNodeHasConflicts = context.conflicts.items - .some(conflict => conflict.nodeName === context.thisNode.name); +function onlyOnce (fn) { + let isRunning = false; - if (thisNodeHasConflicts) { - context.thisNode.status = 'unhealthy'; - console.log(` - THERE ARE CONFLICTS, BUT WE HAVE NOT IMPLEMENTED - RESOLVING THEM YET. OOPS! - `); - return; - } + return async (...args) => { + if (isRunning) { + return; + } + isRunning = true; + await fn(...args); + isRunning = false; + }; +} - const totalNodes = context.nodes.length; - const onlineNodes = context.nodes.filter(node => node.online).length; - const percentageOnline = parseFloat((onlineNodes / totalNodes).toFixed(2)); +function sendToAllClients (context, command, data) { + return Promise.all( + context.nodes + .filter(node => node.connected) + .map(node => { + return node.client.send(command, data).catch(error => { + log.warn(error); + return { + command: c.STATUS_SERVER_ERROR + }; + }); + }) + ); +} + +async function resolveConflict (context, conflict) { + try { + const result = await context.thisNode.client + .send(c[conflict.method], conflict.request); - if (percentageOnline > 0.5) { - context.thisNode.status = 'healthy'; - } else { - log.warn('less than 51% of the cluster is healthy', { onlineNodes, totalNodes, percentageOnline }); - context.thisNode.status = 'unhealthy'; + if (![c.STATUS_CREATED, c.STATUS_OK].includes(result.command)) { + throw Object.assign(new Error('conflict could not resolve'), { result }); + } + + return sendToAllClients(context, c.CONFLICT_RESOLVE, { + [c.INTERNAL]: true, + [c.DATA]: conflict + }); + } catch (error) { + log.error('could not resolve conflict', error); } } -function upsertConflict (context, conflictCandidate) { - const existing = context.conflicts.find(conflict => conflict.id === conflictCandidate.id); +const syncServerHealth = onlyOnce( + async function syncServerHealth (context) { + const ownConflicts = context.conflicts.items + .filter(conflict => !conflict.resolved && conflict.nodeName === context.thisNode.name); + + if (ownConflicts.length > 0) { + context.thisNode.status = 'unhealthy'; + + await Promise.all( + ownConflicts + .filter(conflict => !conflict.resolved) + .map(resolveConflict.bind(null, context)) + ); + + return; + } + + const totalNodes = context.nodes.length; + const onlineNodes = context.nodes.filter(node => node.online).length; + const percentageOnline = parseFloat((onlineNodes / totalNodes).toFixed(2)); + + if (percentageOnline > 0.5) { + context.thisNode.status = 'healthy'; + } else { + log.warn('less than 51% of the cluster is online', { onlineNodes, totalNodes, percentageOnline }); + context.thisNode.status = 'unhealthy'; + } + } +); + +function upsertConflict (context, data) { + const existing = context.conflicts.items + .find(item => item.id === data.id); if (existing) { return; } - context.conflicts.items.push(conflictCandidate); + context.conflicts.items.push(data); +} + +async function conflictRaiseHandler ({ context, socket, request, response }) { + const requestData = request.json(); + const data = requestData[c.DATA]; + + upsertConflict(context, data); +} + +async function conflictResolveHandler ({ context, socket, request, response }) { + const requestData = request.json(); + const data = requestData[c.DATA]; + + const existing = context.conflicts.items + .find(item => item.id === data.id); + + if (!existing) { + return; + } + + existing.resolved = true; + response.reply(c.STATUS_OK); +} + +async function conflictGetHandler ({ context, socket, request, response }) { + response.reply(c.STATUS_OK, { + [c.DATA]: context.conflicts.items + }); } function conflictsModule (context) { @@ -41,27 +122,50 @@ function conflictsModule (context) { items: [] }; - context.on('node.infoReceived', function () { - if (!context.thisNode) { - return; - } + context.controllers.internal.add({ + command: c.CONFLICT_GET, + handler: conflictGetHandler + }); - context.nodes - .filter(node => { - return node.online; - }) - .forEach(node => { - node.info.conflicts.forEach(upsertConflict.bind(null, context)); - }); + context.controllers.internal.add({ + command: c.CONFLICT_RAISE, + handler: conflictRaiseHandler + }); - syncServerHealth(context); + context.controllers.internal.add({ + command: c.CONFLICT_RESOLVE, + handler: conflictResolveHandler }); - context.info.generators.push(() => { - return { - conflicts: context.conflicts.items - }; + context.on('node.connected', async function (node) { + const conflicts = await node.client.send(c.CONFLICT_GET, { + [c.INTERNAL]: true + }); + + conflicts.json()[c.DATA].forEach(conflictData => { + upsertConflict(context, conflictData); + }); }); + + context.on('conflict', async function (data) { + return sendToAllClients(context, c.CONFLICT_RAISE, { + [c.INTERNAL]: true, + [c.DATA]: data + }); + }); + + const syncTimer = setInterval(() => { + if (!context?.thisNode?.client) { + return; + } + syncServerHealth(context); + }, 100); + + return { + cleanup: () => { + clearInterval(syncTimer); + } + }; } export default conflictsModule; diff --git a/lib/modules/controllers/createControllerStore.js b/lib/modules/controllers/createControllerStore.js new file mode 100644 index 0000000..b1da460 --- /dev/null +++ b/lib/modules/controllers/createControllerStore.js @@ -0,0 +1,36 @@ +function createControllerStore () { + const data = {}; + + function add ({ command, index, conditions, handler }) { + if (!data[command]) { + data[command] = []; + } + + data[command].splice(index || 0, 0, { conditions, handler }); + } + + function find (request) { + if (!data[request.command]) { + return []; + } + + return data[request.command].filter(controller => { + if (!controller.conditions) { + return true; + } + + const conditionResults = controller.conditions + .map(condition => condition({ request })); + + return conditionResults.every(result => result === true); + }); + } + + return { + data, + find, + add + }; +} + +export default createControllerStore; diff --git a/lib/modules/controllers/index.js b/lib/modules/controllers/index.js new file mode 100644 index 0000000..876decf --- /dev/null +++ b/lib/modules/controllers/index.js @@ -0,0 +1,169 @@ +import c from '../../constants.js'; + +import createControllerStore from './createControllerStore.js'; + +import internalInfo from '../../controllers/internal/info.js'; +import internalPost from '../../controllers/internal/post.js'; +import internalCount from '../../controllers/internal/count.js'; +import internalGet from '../../controllers/internal/get.js'; +import internalPut from '../../controllers/internal/put.js'; +import internalPatch from '../../controllers/internal/patch.js'; +import internalDelete from '../../controllers/internal/delete.js'; +import internalLock from '../../controllers/internal/lock.js'; +import internalUnlock from '../../controllers/internal/unlock.js'; + +import externalPost from '../../controllers/external/post.js'; +import externalCount from '../../controllers/external/count.js'; +import externalGet from '../../controllers/external/get.js'; +import externalPut from '../../controllers/external/put.js'; +import externalPatch from '../../controllers/external/patch.js'; +import externalDelete from '../../controllers/external/delete.js'; +import externalLock from '../../controllers/external/lock.js'; +import externalUnlock from '../../controllers/external/unlock.js'; + +import externalNotifyOn from '../../controllers/external/notifyOn.js'; +import externalNotifyOff from '../../controllers/external/notifyOff.js'; +import internalNotifyOn from '../../controllers/internal/notifyOn.js'; +import internalNotifyOff from '../../controllers/internal/notifyOff.js'; +import internalNotify from '../../controllers/internal/notify.js'; + +function rejectWhenUnhealthy (fn) { + return async (options) => { + const { context, response } = options; + if (context.thisNode.status === 'unhealthy') { + response.reply(c.STATUS_SERVER_UNHEALTHY); + return; + } + + return fn(options); + }; +} + +function controllersModule (context) { + context.controllers = { + system: createControllerStore(), + internal: createControllerStore(), + external: createControllerStore() + }; + + // System + context.controllers.system.add({ + command: c.INFO, + handler: internalInfo + }); + + // Internal + context.controllers.internal.add({ + command: c.POST, + conditions: [], + handler: internalPost + }); + context.controllers.internal.add({ + command: c.COUNT, + conditions: [], + handler: internalCount + }); + context.controllers.internal.add({ + command: c.GET, + conditions: [], + handler: internalGet + }); + context.controllers.internal.add({ + command: c.PUT, + conditions: [], + handler: internalPut + }); + context.controllers.internal.add({ + command: c.PATCH, + conditions: [], + handler: internalPatch + }); + context.controllers.internal.add({ + command: c.DELETE, + conditions: [], + handler: internalDelete + }); + + context.controllers.internal.add({ + command: c.LOCK, + conditions: [], + handler: internalLock + }); + context.controllers.internal.add({ + command: c.UNLOCK, + conditions: [], + handler: internalUnlock + }); + + context.controllers.internal.add({ + command: c.NOTIFY, + conditions: [], + handler: internalNotify + }); + context.controllers.internal.add({ + command: c.NOTIFY_ON, + conditions: [], + handler: internalNotifyOn + }); + context.controllers.internal.add({ + command: c.NOTIFY_OFF, + conditions: [], + handler: internalNotifyOff + }); + + // External + context.controllers.external.add({ + command: c.POST, + conditions: [], + handler: rejectWhenUnhealthy(externalPost) + }); + context.controllers.external.add({ + command: c.COUNT, + conditions: [], + handler: rejectWhenUnhealthy(externalCount) + }); + context.controllers.external.add({ + command: c.GET, + conditions: [], + handler: rejectWhenUnhealthy(externalGet) + }); + context.controllers.external.add({ + command: c.PUT, + conditions: [], + handler: rejectWhenUnhealthy(externalPut) + }); + context.controllers.external.add({ + command: c.PATCH, + conditions: [], + handler: rejectWhenUnhealthy(externalPatch) + }); + context.controllers.external.add({ + command: c.DELETE, + conditions: [], + handler: rejectWhenUnhealthy(externalDelete) + }); + + context.controllers.external.add({ + command: c.LOCK, + conditions: [], + handler: rejectWhenUnhealthy(externalLock) + }); + context.controllers.external.add({ + command: c.UNLOCK, + conditions: [], + handler: rejectWhenUnhealthy(externalUnlock) + }); + + context.controllers.external.add({ + command: c.NOTIFY_ON, + conditions: [], + handler: rejectWhenUnhealthy(externalNotifyOn) + }); + context.controllers.external.add({ + command: c.NOTIFY_OFF, + conditions: [], + handler: rejectWhenUnhealthy(externalNotifyOff) + }); +} + +export default controllersModule; diff --git a/package.json b/package.json index 8abfffd..7488b45 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "basictap": "^2.2.1", - "c8": "^7.8.0", + "c8": "^7.9.0", "eslint": "^7.32.0", "semistandard": "^16.0.1", "wtfnode": "^0.9.1" diff --git a/test/features/basic.js b/test/features/basic.js index a8e5cf9..25cee66 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -29,7 +29,7 @@ test('invalid command', async t => { await createExampleDocuments(client, 1); - const getResponse = await client.send(255); + const getResponse = await client.send(254); t.equal(getResponse.command, c.STATUS_NOT_FOUND, 'has status'); @@ -198,7 +198,7 @@ test('patch', async t => { await createExampleDocuments(client, 3, { b: 1 }); - const putResponses = await client.send(c.PATCH, { + const patchResponses = await client.send(c.PATCH, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'barz' } }); @@ -220,7 +220,7 @@ test('patch', async t => { { foo: 'barz', b: 1 } ], 'returned 1 document'); - t.equal(putResponses.json()[c.DATA].length, 3, 'altered the correct number of documents'); + t.equal(patchResponses.json()[c.DATA].length, 3, 'altered the correct number of documents'); await client.close(); await servers.close(); }); diff --git a/test/features/conflicts.js b/test/features/conflicts.js new file mode 100644 index 0000000..72490a6 --- /dev/null +++ b/test/features/conflicts.js @@ -0,0 +1,128 @@ +import c from '../../lib/constants.js'; +import createTestServers from '../helpers/createTestServers.js'; +import tcpocket from 'tcpocket'; +import test from 'basictap'; + +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + +test('conflicts - post failure creates conflict', async t => { + t.plan(7); + t.timeout(3000); + + const servers = await createTestServers(2); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + // Let us fake an error from one of the servers + let disablePost = true; + + servers[1].controllers.internal.add({ + command: c.POST, + conditions: [() => disablePost], + handler: async () => { + throw new Error('some error, preventing post'); + } + }); + + // Post a new document + const result = await client.send(c.POST, { + [c.COLLECTION_ID]: 'test', + [c.DATA]: { + foo: 'bar' + } + }); + + t.equal(result.command, c.STATUS_CREATED, 'post should return STATUS_CREATED'); + + // Test all servers receive the conflict + await sleep(500); + + for (const server of servers) { + const foundConflict = server.conflicts.items.find(conflict => { + return conflict.document && conflict.document.foo === 'bar'; + }); + + t.ok(foundConflict, 'found conflict'); + } + + // Disable our fake error and test all servers receive the resolution + disablePost = false; + + await sleep(500); + + for (const server of servers) { + const foundConflict = server.conflicts.items.find(conflict => { + return !conflict.resolved && conflict.document && conflict.document.foo === 'bar'; + }); + + t.equal(foundConflict, undefined, 'conflict not found'); + } + + await sleep(500); + + for (const server of servers) { + console.log(server); + t.equal(server.thisNode.status, 'healthy', 'server status is healthy'); + } + + await Promise.all([ + client.close(), + servers.close() + ]); +}); + +test('conflicts - post to offline node', async t => { + t.plan(9); + t.timeout(5000); + + const servers = await createTestServers(3); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await servers[2].close(); + + // Post a new document + const result = await client.send(c.POST, { + [c.COLLECTION_ID]: 'test', + [c.DATA]: { + foo: 'bar' + } + }); + + t.equal(result.command, c.STATUS_CREATED, 'post should return STATUS_CREATED'); + + // Test all servers receive the conflict + await sleep(500); + + for (const server of servers.slice(0, -1)) { + const foundConflict = server.conflicts.items.find(conflict => { + return conflict.document && conflict.document.foo === 'bar'; + }); + + t.ok(foundConflict, 'found conflict'); + } + + // Disable our fake error and test all servers receive the resolution + servers[2] = await servers[2].recreate(); + + await sleep(500); + + for (const server of servers) { + const foundConflict = server.conflicts.items.find(conflict => { + return !conflict.resolved && conflict.document && conflict.document.foo === 'bar'; + }); + + t.equal(foundConflict, undefined, 'conflict not found'); + } + + await sleep(500); + + for (const server of servers) { + t.equal(server.thisNode.status, 'healthy', 'server status is healthy'); + } + + await Promise.all([ + client.close(), + servers.close() + ]); +}); diff --git a/test/features/lock.js b/test/features/lock.js index 2d94fd8..6cdf39e 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -157,7 +157,7 @@ test('lock: and post some data (conflict + fail)', async t => { await client.close(); await servers.close(); - t.equal(postRequest.command, c.STATUS_LOCKED); + t.equal(postRequest.command, c.STATUS_SERVER_ERROR); }); test('lock: and post some data (conflict + wait)', async t => { @@ -312,7 +312,7 @@ test('lock: and wait but node closes', async t => { foo: 'bar' } }).then((postResponse) => { - t.equal(postResponse.command, c.STATUS_SERVER_CLOSED); + t.equal(postResponse.command, c.STATUS_SERVER_ERROR); client.close(); }); diff --git a/test/index.js b/test/index.js index dac9815..772415b 100644 --- a/test/index.js +++ b/test/index.js @@ -4,7 +4,10 @@ import('./lib/prepareOptions.js'); import('./features/basic.js'); import('./features/cluster.js'); +import('./features/conflicts.js'); import('./features/health.js'); import('./features/notify.js'); import('./features/lock.js'); import('./features/systemCollections.js'); + +import('./modules/controllers/createControllerStore.js'); diff --git a/test/modules/controllers/createControllerStore.js b/test/modules/controllers/createControllerStore.js new file mode 100644 index 0000000..0d798cb --- /dev/null +++ b/test/modules/controllers/createControllerStore.js @@ -0,0 +1,84 @@ +import test from 'basictap'; +import createControllerStore from '../../../lib/modules/controllers/createControllerStore.js'; + +test('createControllerStore: no applicable controller test', t => { + t.pass(); + + const controllerStore = createControllerStore(); + + controllerStore.add({ + command: 2, + conditions: [], + handler: request => console.log() + }); + + controllerStore.add({ + command: 1, + conditions: [], + handler: request => console.log() + }); + + const controllers = controllerStore.find({ + command: 3, + json: () => ({ + test: 2 + }) + }); + + t.ok(controllers.length === 0, 'has 0 controllers'); +}); + +test('createControllerStore: one applicable controller test', t => { + t.pass(); + + const controllerStore = createControllerStore(); + + controllerStore.add({ + command: 2, + conditions: [], + handler: request => console.log() + }); + + controllerStore.add({ + command: 1, + conditions: [], + handler: request => console.log() + }); + + const controllers = controllerStore.find({ + command: 1, + json: () => ({ + test: 2 + }) + }); + + t.ok(controllers.length === 1, 'has 1 controller'); +}); + +test('createControllerStore: multiple controller test with condition', t => { + t.pass(); + + const controllerStore = createControllerStore(); + + controllerStore.add({ + command: 1, + conditions: [], + handler: () => 10 + }); + + controllerStore.add({ + command: 1, + conditions: [() => false], + handler: () => 20 + }); + + const controllers = controllerStore.find({ + command: 1, + json: () => ({ + test: 2 + }) + }); + + t.ok(controllers.length === 1, 'has 1 controller'); + t.equal(controllers[0].handler(), 10, 'handler returned correctly'); +}); diff --git a/yarn.lock b/yarn.lock index ff3efd8..8c1cad7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,1841 +3,1849 @@ "@babel/code-frame@7.12.11": - "integrity" "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==" - "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" - "version" "7.12.11" + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== dependencies: "@babel/highlight" "^7.10.4" "@babel/helper-validator-identifier@^7.14.5": - "integrity" "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" - "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" - "version" "7.14.9" + version "7.14.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" + integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== "@babel/highlight@^7.10.4": - "integrity" "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==" - "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" - "version" "7.14.5" + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" + integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== dependencies: "@babel/helper-validator-identifier" "^7.14.5" - "chalk" "^2.0.0" - "js-tokens" "^4.0.0" + chalk "^2.0.0" + js-tokens "^4.0.0" "@bcoe/v8-coverage@^0.2.3": - "integrity" "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" - "resolved" "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" - "version" "0.2.3" + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@eslint/eslintrc@^0.4.3": - "integrity" "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==" - "resolved" "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" - "version" "0.4.3" - dependencies: - "ajv" "^6.12.4" - "debug" "^4.1.1" - "espree" "^7.3.0" - "globals" "^13.9.0" - "ignore" "^4.0.6" - "import-fresh" "^3.2.1" - "js-yaml" "^3.13.1" - "minimatch" "^3.0.4" - "strip-json-comments" "^3.1.1" + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^13.9.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" "@humanwhocodes/config-array@^0.5.0": - "integrity" "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==" - "resolved" "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" - "version" "0.5.0" + version "0.5.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== dependencies: "@humanwhocodes/object-schema" "^1.2.0" - "debug" "^4.1.1" - "minimatch" "^3.0.4" + debug "^4.1.1" + minimatch "^3.0.4" "@humanwhocodes/object-schema@^1.2.0": - "integrity" "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==" - "resolved" "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz" - "version" "1.2.0" + version "1.2.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" + integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== "@istanbuljs/schema@^0.1.2": - "integrity" "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" - "resolved" "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" - "version" "0.1.3" + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@types/istanbul-lib-coverage@^2.0.1": - "integrity" "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" - "resolved" "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz" - "version" "2.0.3" - -"acorn-jsx@^5.3.1": - "integrity" "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" - "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" - "version" "5.3.2" - -"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", "acorn@^7.4.0": - "integrity" "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" - "resolved" "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" - "version" "7.4.1" - -"ajv@^6.10.0", "ajv@^6.12.4": - "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" - "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - "version" "6.12.6" - dependencies: - "fast-deep-equal" "^3.1.1" - "fast-json-stable-stringify" "^2.0.0" - "json-schema-traverse" "^0.4.1" - "uri-js" "^4.2.2" - -"ajv@^8.0.1": - "integrity" "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==" - "resolved" "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz" - "version" "8.6.2" - dependencies: - "fast-deep-equal" "^3.1.1" - "json-schema-traverse" "^1.0.0" - "require-from-string" "^2.0.2" - "uri-js" "^4.2.2" - -"ansi-colors@^4.1.1": - "integrity" "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" - "resolved" "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" - "version" "4.1.1" - -"ansi-regex@^5.0.0": - "integrity" "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" - "version" "5.0.0" - -"ansi-styles@^3.2.1": - "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" - "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" - "version" "3.2.1" - dependencies: - "color-convert" "^1.9.0" - -"ansi-styles@^4.0.0", "ansi-styles@^4.1.0": - "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" - "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" - "version" "4.3.0" - dependencies: - "color-convert" "^2.0.1" - -"argparse@^1.0.7": - "integrity" "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==" - "resolved" "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" - "version" "1.0.10" - dependencies: - "sprintf-js" "~1.0.2" - -"array-includes@^3.1.1", "array-includes@^3.1.2", "array-includes@^3.1.3": - "integrity" "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==" - "resolved" "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" - "version" "3.1.3" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.2" - "get-intrinsic" "^1.1.1" - "is-string" "^1.0.5" - -"array.prototype.flat@^1.2.4": - "integrity" "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==" - "resolved" "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" - "version" "1.2.4" - dependencies: - "call-bind" "^1.0.0" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.1" - -"array.prototype.flatmap@^1.2.3": - "integrity" "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==" - "resolved" "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" - "version" "1.2.4" - dependencies: - "call-bind" "^1.0.0" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.1" - "function-bind" "^1.1.1" - -"astral-regex@^2.0.0": - "integrity" "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" - "resolved" "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" - "version" "2.0.0" - -"balanced-match@^1.0.0": - "integrity" "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" - "version" "1.0.2" - -"basictap@^2.2.1": - "integrity" "sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw==" - "resolved" "https://registry.npmjs.org/basictap/-/basictap-2.2.1.tgz" - "version" "2.2.1" - dependencies: - "colorette" "^1.3.0" - "events" "^3.3.0" - "promise-limit" "^2.7.0" - -"brace-expansion@^1.1.7": - "integrity" "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==" - "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - "version" "1.1.11" - dependencies: - "balanced-match" "^1.0.0" - "concat-map" "0.0.1" - -"c8@^7.8.0": - "integrity" "sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==" - "resolved" "https://registry.npmjs.org/c8/-/c8-7.8.0.tgz" - "version" "7.8.0" + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= + +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +ajv@^6.10.0, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.6.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" + integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +array-includes@^3.1.1, array-includes@^3.1.2, array-includes@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" + integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + get-intrinsic "^1.1.1" + is-string "^1.0.5" + +array.prototype.flat@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" + integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + +array.prototype.flatmap@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz#94cfd47cc1556ec0747d97f7c7738c58122004c9" + integrity sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + function-bind "^1.1.1" + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +basictap@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/basictap/-/basictap-2.2.1.tgz#2cfaf94927b79161859a8ce054682a8369409478" + integrity sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw== + dependencies: + colorette "^1.3.0" + events "^3.3.0" + promise-limit "^2.7.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +c8@^7.8.0, c8@^7.9.0: + version "7.9.0" + resolved "https://registry.yarnpkg.com/c8/-/c8-7.9.0.tgz#e63b9a22c8b4adbf6a8c8cb6194ee086b3e13c24" + integrity sha512-aQ7dC8gASnKdBwHUuYuzsdKCEDrKnWr7ZuZUnf4CNAL81oyKloKrs7H7zYvcrmCtIrMToudBSUhq2q+LLBMvgg== dependencies: "@bcoe/v8-coverage" "^0.2.3" "@istanbuljs/schema" "^0.1.2" - "find-up" "^5.0.0" - "foreground-child" "^2.0.0" - "istanbul-lib-coverage" "^3.0.0" - "istanbul-lib-report" "^3.0.0" - "istanbul-reports" "^3.0.2" - "rimraf" "^3.0.0" - "test-exclude" "^6.0.0" - "v8-to-istanbul" "^8.0.0" - "yargs" "^16.2.0" - "yargs-parser" "^20.2.7" - -"call-bind@^1.0.0", "call-bind@^1.0.2": - "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" - "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" - "version" "1.0.2" - dependencies: - "function-bind" "^1.1.1" - "get-intrinsic" "^1.0.2" - -"callsites@^3.0.0": - "integrity" "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" - "resolved" "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" - "version" "3.1.0" - -"chalk@^2.0.0": - "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" - "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" - "version" "2.4.2" - dependencies: - "ansi-styles" "^3.2.1" - "escape-string-regexp" "^1.0.5" - "supports-color" "^5.3.0" - -"chalk@^4.0.0", "chalk@^4.1.1", "chalk@^4.1.2": - "integrity" "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==" - "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" - "version" "4.1.2" - dependencies: - "ansi-styles" "^4.1.0" - "supports-color" "^7.1.0" - -"cliui@^7.0.2": - "integrity" "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==" - "resolved" "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" - "version" "7.0.4" - dependencies: - "string-width" "^4.2.0" - "strip-ansi" "^6.0.0" - "wrap-ansi" "^7.0.0" - -"color-convert@^1.9.0": - "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" - "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" - "version" "1.9.3" - dependencies: - "color-name" "1.1.3" - -"color-convert@^2.0.1": - "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" - "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" - "version" "2.0.1" - dependencies: - "color-name" "~1.1.4" - -"color-name@~1.1.4": - "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - "version" "1.1.4" - -"color-name@1.1.3": - "integrity" "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - "version" "1.1.3" - -"colorette@^1.3.0": - "integrity" "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w==" - "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz" - "version" "1.3.0" - -"concat-map@0.0.1": - "integrity" "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - "version" "0.0.1" - -"convert-source-map@^1.6.0": - "integrity" "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==" - "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" - "version" "1.8.0" - dependencies: - "safe-buffer" "~5.1.1" - -"cross-spawn@^7.0.0", "cross-spawn@^7.0.2": - "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==" - "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" - "version" "7.0.3" - dependencies: - "path-key" "^3.1.0" - "shebang-command" "^2.0.0" - "which" "^2.0.1" - -"debarrel@^1.0.2": - "integrity" "sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g==" - "resolved" "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz" - "version" "1.0.2" - -"debug@^2.6.9": - "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" - "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - "version" "2.6.9" - dependencies: - "ms" "2.0.0" - -"debug@^3.2.7": - "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==" - "resolved" "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - "version" "3.2.7" - dependencies: - "ms" "^2.1.1" - -"debug@^4.0.1", "debug@^4.1.1": - "integrity" "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==" - "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" - "version" "4.3.2" - dependencies: - "ms" "2.1.2" - -"deep-is@^0.1.3": - "integrity" "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" - "version" "0.1.3" - -"define-properties@^1.1.3": - "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" - "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" - "version" "1.1.3" - dependencies: - "object-keys" "^1.0.12" - -"doctrine@^2.1.0": - "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" - "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "esutils" "^2.0.2" - -"doctrine@^3.0.0": - "integrity" "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==" - "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "esutils" "^2.0.2" - -"emoji-regex@^8.0.0": - "integrity" "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" - "version" "8.0.0" - -"enquirer@^2.3.5": - "integrity" "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==" - "resolved" "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" - "version" "2.3.6" - dependencies: - "ansi-colors" "^4.1.1" - -"error-ex@^1.3.1": - "integrity" "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==" - "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" - "version" "1.3.2" - dependencies: - "is-arrayish" "^0.2.1" - -"es-abstract@^1.18.0-next.1", "es-abstract@^1.18.0-next.2", "es-abstract@^1.18.2": - "integrity" "sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA==" - "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz" - "version" "1.18.5" - dependencies: - "call-bind" "^1.0.2" - "es-to-primitive" "^1.2.1" - "function-bind" "^1.1.1" - "get-intrinsic" "^1.1.1" - "has" "^1.0.3" - "has-symbols" "^1.0.2" - "internal-slot" "^1.0.3" - "is-callable" "^1.2.3" - "is-negative-zero" "^2.0.1" - "is-regex" "^1.1.3" - "is-string" "^1.0.6" - "object-inspect" "^1.11.0" - "object-keys" "^1.1.1" - "object.assign" "^4.1.2" - "string.prototype.trimend" "^1.0.4" - "string.prototype.trimstart" "^1.0.4" - "unbox-primitive" "^1.0.1" - -"es-to-primitive@^1.2.1": - "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" - "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" - "version" "1.2.1" - dependencies: - "is-callable" "^1.1.4" - "is-date-object" "^1.0.1" - "is-symbol" "^1.0.2" - -"escalade@^3.1.1": - "integrity" "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" - "version" "3.1.1" - -"escape-string-regexp@^1.0.5": - "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - "version" "1.0.5" - -"escape-string-regexp@^4.0.0": - "integrity" "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" - "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" - "version" "4.0.0" - -"eslint-config-semistandard@16.0.0": - "integrity" "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==" - "resolved" "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz" - "version" "16.0.0" - -"eslint-config-standard-jsx@10.0.0": - "integrity" "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==" - "resolved" "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz" - "version" "10.0.0" - -"eslint-config-standard@>=16.0.3", "eslint-config-standard@16.0.3": - "integrity" "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==" - "resolved" "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz" - "version" "16.0.3" - -"eslint-import-resolver-node@^0.3.6": - "integrity" "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==" - "resolved" "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz" - "version" "0.3.6" - dependencies: - "debug" "^3.2.7" - "resolve" "^1.20.0" - -"eslint-module-utils@^2.6.2": - "integrity" "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==" - "resolved" "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz" - "version" "2.6.2" - dependencies: - "debug" "^3.2.7" - "pkg-dir" "^2.0.0" - -"eslint-plugin-es@^3.0.0": - "integrity" "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==" - "resolved" "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz" - "version" "3.0.1" - dependencies: - "eslint-utils" "^2.0.0" - "regexpp" "^3.0.0" - -"eslint-plugin-import@^2.22.1", "eslint-plugin-import@>=2.22.1": - "integrity" "sha512-KSFWhNxPH8OGJwpRJJs+Z7I0a13E2iFQZJIvSnCu6KUs4qmgAm3xN9GYBCSoiGWmwA7gERZPXqYQjcoCROnYhQ==" - "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.1.tgz" - "version" "2.24.1" - dependencies: - "array-includes" "^3.1.3" - "array.prototype.flat" "^1.2.4" - "debug" "^2.6.9" - "doctrine" "^2.1.0" - "eslint-import-resolver-node" "^0.3.6" - "eslint-module-utils" "^2.6.2" - "find-up" "^2.0.0" - "has" "^1.0.3" - "is-core-module" "^2.6.0" - "minimatch" "^3.0.4" - "object.values" "^1.1.4" - "pkg-up" "^2.0.0" - "read-pkg-up" "^3.0.0" - "resolve" "^1.20.0" - "tsconfig-paths" "^3.10.1" - -"eslint-plugin-node@^11.1.0", "eslint-plugin-node@>=11.1.0": - "integrity" "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==" - "resolved" "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz" - "version" "11.1.0" - dependencies: - "eslint-plugin-es" "^3.0.0" - "eslint-utils" "^2.0.0" - "ignore" "^5.1.1" - "minimatch" "^3.0.4" - "resolve" "^1.10.1" - "semver" "^6.1.0" - -"eslint-plugin-promise@^4.2.1 || ^5.0.0", "eslint-plugin-promise@^5.1.0", "eslint-plugin-promise@>=4.2.1": - "integrity" "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==" - "resolved" "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz" - "version" "5.1.0" - -"eslint-plugin-react@^7.21.5", "eslint-plugin-react@~7.21.5": - "integrity" "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==" - "resolved" "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz" - "version" "7.21.5" - dependencies: - "array-includes" "^3.1.1" - "array.prototype.flatmap" "^1.2.3" - "doctrine" "^2.1.0" - "has" "^1.0.3" - "jsx-ast-utils" "^2.4.1 || ^3.0.0" - "object.entries" "^1.1.2" - "object.fromentries" "^2.0.2" - "object.values" "^1.1.1" - "prop-types" "^15.7.2" - "resolve" "^1.18.1" - "string.prototype.matchall" "^4.0.2" - -"eslint-scope@^5.1.1": - "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==" - "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" - "version" "5.1.1" - dependencies: - "esrecurse" "^4.3.0" - "estraverse" "^4.1.1" - -"eslint-utils@^2.0.0", "eslint-utils@^2.1.0": - "integrity" "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==" - "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "eslint-visitor-keys" "^1.1.0" - -"eslint-visitor-keys@^1.1.0", "eslint-visitor-keys@^1.3.0": - "integrity" "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" - "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" - "version" "1.3.0" - -"eslint-visitor-keys@^2.0.0": - "integrity" "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" - "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" - "version" "2.1.0" - -"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0", "eslint@^3 || ^4 || ^5 || ^6 || ^7", "eslint@^7.0.0", "eslint@^7.12.1", "eslint@^7.27.0", "eslint@^7.32.0", "eslint@>=4.19.1", "eslint@>=5.16.0", "eslint@>=7.12.1": - "integrity" "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==" - "resolved" "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" - "version" "7.32.0" + find-up "^5.0.0" + foreground-child "^2.0.0" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-report "^3.0.0" + istanbul-reports "^3.0.2" + rimraf "^3.0.0" + test-exclude "^6.0.0" + v8-to-istanbul "^8.0.0" + yargs "^16.2.0" + yargs-parser "^20.2.7" + +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.1, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colorette@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40" + integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +convert-source-map@^1.6.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== + dependencies: + safe-buffer "~5.1.1" + +cross-spawn@^7.0.0, cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +debarrel@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/debarrel/-/debarrel-1.0.2.tgz#89a51733f840fb10580e3e21914220c32ba89e41" + integrity sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g== + +debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@^3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.0.1, debug@^4.1.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== + dependencies: + ms "2.1.2" + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: + version "1.18.6" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.6.tgz#2c44e3ea7a6255039164d26559777a6d978cb456" + integrity sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.1.1" + get-symbol-description "^1.0.0" + has "^1.0.3" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + is-callable "^1.2.4" + is-negative-zero "^2.0.1" + is-regex "^1.1.4" + is-string "^1.0.7" + object-inspect "^1.11.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.1" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +eslint-config-semistandard@16.0.0: + version "16.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz#45e06374707d86a87f54086e7b8bd0b7b74a197f" + integrity sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ== + +eslint-config-standard-jsx@10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz#dc24992661325a2e480e2c3091d669f19034e18d" + integrity sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA== + +eslint-config-standard@16.0.3: + version "16.0.3" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516" + integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== + +eslint-import-resolver-node@^0.3.6: + version "0.3.6" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" + integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== + dependencies: + debug "^3.2.7" + resolve "^1.20.0" + +eslint-module-utils@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz#94e5540dd15fe1522e8ffa3ec8db3b7fa7e7a534" + integrity sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q== + dependencies: + debug "^3.2.7" + pkg-dir "^2.0.0" + +eslint-plugin-es@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" + integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-import@^2.22.1: + version "2.24.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz#2c8cd2e341f3885918ee27d18479910ade7bb4da" + integrity sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q== + dependencies: + array-includes "^3.1.3" + array.prototype.flat "^1.2.4" + debug "^2.6.9" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.6" + eslint-module-utils "^2.6.2" + find-up "^2.0.0" + has "^1.0.3" + is-core-module "^2.6.0" + minimatch "^3.0.4" + object.values "^1.1.4" + pkg-up "^2.0.0" + read-pkg-up "^3.0.0" + resolve "^1.20.0" + tsconfig-paths "^3.11.0" + +eslint-plugin-node@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" + integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== + dependencies: + eslint-plugin-es "^3.0.0" + eslint-utils "^2.0.0" + ignore "^5.1.1" + minimatch "^3.0.4" + resolve "^1.10.1" + semver "^6.1.0" + +eslint-plugin-promise@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz#fb2188fb734e4557993733b41aa1a688f46c6f24" + integrity sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng== + +eslint-plugin-react@~7.21.5: + version "7.21.5" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz#50b21a412b9574bfe05b21db176e8b7b3b15bff3" + integrity sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== + dependencies: + array-includes "^3.1.1" + array.prototype.flatmap "^1.2.3" + doctrine "^2.1.0" + has "^1.0.3" + jsx-ast-utils "^2.4.1 || ^3.0.0" + object.entries "^1.1.2" + object.fromentries "^2.0.2" + object.values "^1.1.1" + prop-types "^15.7.2" + resolve "^1.18.1" + string.prototype.matchall "^4.0.2" + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.0.0, eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint@^7.27.0, eslint@^7.32.0: + version "7.32.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.3" "@humanwhocodes/config-array" "^0.5.0" - "ajv" "^6.10.0" - "chalk" "^4.0.0" - "cross-spawn" "^7.0.2" - "debug" "^4.0.1" - "doctrine" "^3.0.0" - "enquirer" "^2.3.5" - "escape-string-regexp" "^4.0.0" - "eslint-scope" "^5.1.1" - "eslint-utils" "^2.1.0" - "eslint-visitor-keys" "^2.0.0" - "espree" "^7.3.1" - "esquery" "^1.4.0" - "esutils" "^2.0.2" - "fast-deep-equal" "^3.1.3" - "file-entry-cache" "^6.0.1" - "functional-red-black-tree" "^1.0.1" - "glob-parent" "^5.1.2" - "globals" "^13.6.0" - "ignore" "^4.0.6" - "import-fresh" "^3.0.0" - "imurmurhash" "^0.1.4" - "is-glob" "^4.0.0" - "js-yaml" "^3.13.1" - "json-stable-stringify-without-jsonify" "^1.0.1" - "levn" "^0.4.1" - "lodash.merge" "^4.6.2" - "minimatch" "^3.0.4" - "natural-compare" "^1.4.0" - "optionator" "^0.9.1" - "progress" "^2.0.0" - "regexpp" "^3.1.0" - "semver" "^7.2.1" - "strip-ansi" "^6.0.0" - "strip-json-comments" "^3.1.0" - "table" "^6.0.9" - "text-table" "^0.2.0" - "v8-compile-cache" "^2.0.3" - -"espree@^7.3.0", "espree@^7.3.1": - "integrity" "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==" - "resolved" "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" - "version" "7.3.1" - dependencies: - "acorn" "^7.4.0" - "acorn-jsx" "^5.3.1" - "eslint-visitor-keys" "^1.3.0" - -"esprima@^4.0.0": - "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" - "version" "4.0.1" - -"esquery@^1.4.0": - "integrity" "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==" - "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" - "version" "1.4.0" - dependencies: - "estraverse" "^5.1.0" - -"esrecurse@^4.3.0": - "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==" - "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" - "version" "4.3.0" - dependencies: - "estraverse" "^5.2.0" - -"estraverse@^4.1.1": - "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" - "version" "4.3.0" - -"estraverse@^5.1.0", "estraverse@^5.2.0": - "integrity" "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" - "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" - "version" "5.2.0" - -"esutils@^2.0.2": - "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" - "version" "2.0.3" - -"events@^3.3.0": - "integrity" "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - "resolved" "https://registry.npmjs.org/events/-/events-3.3.0.tgz" - "version" "3.3.0" - -"fast-deep-equal@^3.1.1", "fast-deep-equal@^3.1.3": - "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" - "version" "3.1.3" - -"fast-json-stable-stringify@^2.0.0": - "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" - "version" "2.1.0" - -"fast-levenshtein@^2.0.6": - "integrity" "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" - "version" "2.0.6" - -"file-entry-cache@^6.0.1": - "integrity" "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==" - "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" - "version" "6.0.1" - dependencies: - "flat-cache" "^3.0.4" - -"find-up@^2.0.0", "find-up@^2.1.0": - "integrity" "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=" - "resolved" "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "locate-path" "^2.0.0" - -"find-up@^3.0.0": - "integrity" "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==" - "resolved" "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "locate-path" "^3.0.0" - -"find-up@^5.0.0": - "integrity" "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==" - "resolved" "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" - "version" "5.0.0" - dependencies: - "locate-path" "^6.0.0" - "path-exists" "^4.0.0" - -"flat-cache@^3.0.4": - "integrity" "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==" - "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" - "version" "3.0.4" - dependencies: - "flatted" "^3.1.0" - "rimraf" "^3.0.2" - -"flatted@^3.1.0": - "integrity" "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==" - "resolved" "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz" - "version" "3.2.2" - -"foreground-child@^2.0.0": - "integrity" "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==" - "resolved" "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "cross-spawn" "^7.0.0" - "signal-exit" "^3.0.2" - -"fs.realpath@^1.0.0": - "integrity" "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" - "version" "1.0.0" - -"function-bind@^1.1.1": - "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" - "version" "1.1.1" - -"functional-red-black-tree@^1.0.1": - "integrity" "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" - "resolved" "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - "version" "1.0.1" - -"get-caller-file@^2.0.5": - "integrity" "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" - "version" "2.0.5" - -"get-intrinsic@^1.0.2", "get-intrinsic@^1.1.0", "get-intrinsic@^1.1.1": - "integrity" "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==" - "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" - "version" "1.1.1" - dependencies: - "function-bind" "^1.1.1" - "has" "^1.0.3" - "has-symbols" "^1.0.1" - -"get-stdin@^8.0.0": - "integrity" "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" - "resolved" "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" - "version" "8.0.0" - -"glob-parent@^5.1.2": - "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==" - "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" - "version" "5.1.2" - dependencies: - "is-glob" "^4.0.1" - -"glob@^7.1.3", "glob@^7.1.4": - "integrity" "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==" - "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" - "version" "7.1.7" - dependencies: - "fs.realpath" "^1.0.0" - "inflight" "^1.0.4" - "inherits" "2" - "minimatch" "^3.0.4" - "once" "^1.3.0" - "path-is-absolute" "^1.0.0" - -"globals@^13.6.0", "globals@^13.9.0": - "integrity" "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==" - "resolved" "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz" - "version" "13.11.0" - dependencies: - "type-fest" "^0.20.2" - -"graceful-fs@^4.1.15", "graceful-fs@^4.1.2": - "integrity" "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" - "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz" - "version" "4.2.8" - -"has-bigints@^1.0.1": - "integrity" "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" - "resolved" "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" - "version" "1.0.1" - -"has-flag@^3.0.0": - "integrity" "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - "version" "3.0.0" - -"has-flag@^4.0.0": - "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" - "version" "4.0.0" - -"has-symbols@^1.0.1", "has-symbols@^1.0.2": - "integrity" "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" - "version" "1.0.2" - -"has-tostringtag@^1.0.0": - "integrity" "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==" - "resolved" "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" - "version" "1.0.0" - dependencies: - "has-symbols" "^1.0.2" - -"has@^1.0.3": - "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" - "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" - "version" "1.0.3" - dependencies: - "function-bind" "^1.1.1" - -"hosted-git-info@^2.1.4": - "integrity" "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" - "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" - "version" "2.8.9" - -"html-escaper@^2.0.0": - "integrity" "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" - "resolved" "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" - "version" "2.0.2" - -"ignore@^4.0.6": - "integrity" "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" - "resolved" "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" - "version" "4.0.6" - -"ignore@^5.1.1": - "integrity" "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" - "resolved" "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" - "version" "5.1.8" - -"import-fresh@^3.0.0", "import-fresh@^3.2.1": - "integrity" "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==" - "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" - "version" "3.3.0" - dependencies: - "parent-module" "^1.0.0" - "resolve-from" "^4.0.0" - -"imurmurhash@^0.1.4": - "integrity" "sha1-khi5srkoojixPcT7a21XbyMUU+o=" - "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" - "version" "0.1.4" - -"inflight@^1.0.4": - "integrity" "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" - "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" - "version" "1.0.6" - dependencies: - "once" "^1.3.0" - "wrappy" "1" - -"inherits@2": - "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" - "version" "2.0.4" - -"internal-slot@^1.0.3": - "integrity" "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==" - "resolved" "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" - "version" "1.0.3" - dependencies: - "get-intrinsic" "^1.1.0" - "has" "^1.0.3" - "side-channel" "^1.0.4" - -"is-arrayish@^0.2.1": - "integrity" "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - "version" "0.2.1" - -"is-bigint@^1.0.1": - "integrity" "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==" - "resolved" "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "has-bigints" "^1.0.1" - -"is-boolean-object@^1.1.0": - "integrity" "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==" - "resolved" "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" - "version" "1.1.2" - dependencies: - "call-bind" "^1.0.2" - "has-tostringtag" "^1.0.0" - -"is-callable@^1.1.4", "is-callable@^1.2.3": - "integrity" "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==" - "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz" - "version" "1.2.4" - -"is-core-module@^2.2.0", "is-core-module@^2.6.0": - "integrity" "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==" - "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz" - "version" "2.6.0" - dependencies: - "has" "^1.0.3" - -"is-date-object@^1.0.1": - "integrity" "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==" - "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" - "version" "1.0.5" - dependencies: - "has-tostringtag" "^1.0.0" - -"is-extglob@^2.1.1": - "integrity" "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - "version" "2.1.1" - -"is-fullwidth-code-point@^3.0.0": - "integrity" "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" - "version" "3.0.0" - -"is-glob@^4.0.0", "is-glob@^4.0.1": - "integrity" "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==" - "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" - "version" "4.0.1" - dependencies: - "is-extglob" "^2.1.1" - -"is-negative-zero@^2.0.1": - "integrity" "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" - "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" - "version" "2.0.1" - -"is-number-object@^1.0.4": - "integrity" "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==" - "resolved" "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz" - "version" "1.0.6" - dependencies: - "has-tostringtag" "^1.0.0" - -"is-regex@^1.1.3": - "integrity" "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==" - "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" - "version" "1.1.4" - dependencies: - "call-bind" "^1.0.2" - "has-tostringtag" "^1.0.0" - -"is-string@^1.0.5", "is-string@^1.0.6": - "integrity" "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==" - "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" - "version" "1.0.7" - dependencies: - "has-tostringtag" "^1.0.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + escape-string-regexp "^4.0.0" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.1.2" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.9" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +events@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatted@^3.1.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.2.tgz#64bfed5cb68fe3ca78b3eb214ad97b63bedce561" + integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== + +foreground-child@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" + integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^3.0.2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-stdin@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== + +get-symbol-description@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" + integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.1.1" + +glob-parent@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.1.3, glob@^7.1.4: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^13.6.0, globals@^13.9.0: + version "13.11.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" + integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== + dependencies: + type-fest "^0.20.2" + +graceful-fs@^4.1.15, graceful-fs@^4.1.2: + version "4.2.8" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" + integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== + +has-bigints@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.1, has-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.1: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +internal-slot@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== + dependencies: + get-intrinsic "^1.1.0" + has "^1.0.3" + side-channel "^1.0.4" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-callable@^1.1.4, is-callable@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== + +is-core-module@^2.2.0, is-core-module@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.6.0.tgz#d7553b2526fe59b92ba3e40c8df757ec8a709e19" + integrity sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ== + dependencies: + has "^1.0.3" + +is-date-object@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.0, is-glob@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + +is-number-object@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + dependencies: + has-tostringtag "^1.0.0" + +is-regex@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-string@^1.0.5, is-string@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" -"is-symbol@^1.0.2", "is-symbol@^1.0.3": - "integrity" "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==" - "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "has-symbols" "^1.0.2" - -"isexe@^2.0.0": - "integrity" "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - "version" "2.0.0" +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= -"istanbul-lib-coverage@^3.0.0": - "integrity" "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" - "resolved" "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz" - "version" "3.0.0" +istanbul-lib-coverage@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== -"istanbul-lib-report@^3.0.0": - "integrity" "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==" - "resolved" "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" - "version" "3.0.0" +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: - "istanbul-lib-coverage" "^3.0.0" - "make-dir" "^3.0.0" - "supports-color" "^7.1.0" + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" -"istanbul-reports@^3.0.2": - "integrity" "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==" - "resolved" "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz" - "version" "3.0.2" - dependencies: - "html-escaper" "^2.0.0" - "istanbul-lib-report" "^3.0.0" +istanbul-reports@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" + integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" -"js-tokens@^3.0.0 || ^4.0.0", "js-tokens@^4.0.0": - "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" - "version" "4.0.0" - -"js-yaml@^3.13.1": - "integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==" - "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" - "version" "3.14.1" +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: - "argparse" "^1.0.7" - "esprima" "^4.0.0" + argparse "^1.0.7" + esprima "^4.0.0" -"json-parse-better-errors@^1.0.1": - "integrity" "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - "resolved" "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" - "version" "1.0.2" +json-parse-better-errors@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -"json-schema-traverse@^0.4.1": - "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" - "version" "0.4.1" - -"json-schema-traverse@^1.0.0": - "integrity" "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" - "version" "1.0.0" - -"json-stable-stringify-without-jsonify@^1.0.1": - "integrity" "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" - "resolved" "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" - "version" "1.0.1" - -"json5@^2.2.0": - "integrity" "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==" - "resolved" "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" - "version" "2.2.0" +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== dependencies: - "minimist" "^1.2.5" + minimist "^1.2.0" "jsx-ast-utils@^2.4.1 || ^3.0.0": - "integrity" "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==" - "resolved" "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" - "version" "3.2.0" - dependencies: - "array-includes" "^3.1.2" - "object.assign" "^4.1.2" - -"levn@^0.4.1": - "integrity" "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==" - "resolved" "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" - "version" "0.4.1" - dependencies: - "prelude-ls" "^1.2.1" - "type-check" "~0.4.0" + version "3.2.0" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz#41108d2cec408c3453c1bbe8a4aae9e1e2bd8f82" + integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== + dependencies: + array-includes "^3.1.2" + object.assign "^4.1.2" + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" -"load-json-file@^4.0.0": - "integrity" "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=" - "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" - "version" "4.0.0" - dependencies: - "graceful-fs" "^4.1.2" - "parse-json" "^4.0.0" - "pify" "^3.0.0" - "strip-bom" "^3.0.0" - -"load-json-file@^5.2.0": - "integrity" "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==" - "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz" - "version" "5.3.0" - dependencies: - "graceful-fs" "^4.1.15" - "parse-json" "^4.0.0" - "pify" "^4.0.1" - "strip-bom" "^3.0.0" - "type-fest" "^0.3.0" - -"locate-path@^2.0.0": - "integrity" "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=" - "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "p-locate" "^2.0.0" - "path-exists" "^3.0.0" - -"locate-path@^3.0.0": - "integrity" "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==" - "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "p-locate" "^3.0.0" - "path-exists" "^3.0.0" - -"locate-path@^6.0.0": - "integrity" "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==" - "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" - "version" "6.0.0" - dependencies: - "p-locate" "^5.0.0" - -"lockbase@^1.2.2": - "integrity" "sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg==" - "resolved" "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz" - "version" "1.2.2" - dependencies: - "c8" "^7.8.0" - "uuid" "^8.3.2" - -"lodash.clonedeep@^4.5.0": - "integrity" "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" - "resolved" "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" - "version" "4.5.0" - -"lodash.merge@^4.6.2": - "integrity" "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - "resolved" "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" - "version" "4.6.2" - -"lodash.truncate@^4.4.2": - "integrity" "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" - "resolved" "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" - "version" "4.4.2" - -"logslot@^2.1.0": - "integrity" "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==" - "resolved" "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz" - "version" "2.1.0" - dependencies: - "chalk" "^4.1.1" - -"loose-envify@^1.4.0": - "integrity" "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==" - "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" - "version" "1.4.0" - dependencies: - "js-tokens" "^3.0.0 || ^4.0.0" - -"lru-cache@^6.0.0": - "integrity" "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==" - "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" - "version" "6.0.0" - dependencies: - "yallist" "^4.0.0" - -"make-dir@^3.0.0": - "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" - "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" - "version" "3.1.0" - dependencies: - "semver" "^6.0.0" - -"minimatch@^3.0.4": - "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" - "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" - "version" "3.0.4" - dependencies: - "brace-expansion" "^1.1.7" - -"minimist@^1.2.0", "minimist@^1.2.5": - "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" - "version" "1.2.5" - -"mql-to-jql@^1.4.0": - "integrity" "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" - "resolved" "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz" - "version" "1.4.0" - -"ms@^2.1.1": - "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - "version" "2.1.3" - -"ms@2.0.0": - "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - "version" "2.0.0" - -"ms@2.1.2": - "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" - "version" "2.1.2" - -"natural-compare@^1.4.0": - "integrity" "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" - "version" "1.4.0" - -"node-ejdb-lite@^3.4.4": - "integrity" "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==" - "resolved" "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz" - "version" "3.4.4" - dependencies: - "semver" "^7.3.5" - -"normalize-package-data@^2.3.2": - "integrity" "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==" - "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" - "version" "2.5.0" - dependencies: - "hosted-git-info" "^2.1.4" - "resolve" "^1.10.0" - "semver" "2 || 3 || 4 || 5" - "validate-npm-package-license" "^3.0.1" - -"object-assign@^4.1.1": - "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - "version" "4.1.1" - -"object-inspect@^1.11.0", "object-inspect@^1.9.0": - "integrity" "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" - "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz" - "version" "1.11.0" - -"object-keys@^1.0.12", "object-keys@^1.1.1": - "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" - "version" "1.1.1" - -"object.assign@^4.1.2": - "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" - "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" - "version" "4.1.2" - dependencies: - "call-bind" "^1.0.0" - "define-properties" "^1.1.3" - "has-symbols" "^1.0.1" - "object-keys" "^1.1.1" - -"object.entries@^1.1.2": - "integrity" "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==" - "resolved" "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" - "version" "1.1.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.2" - -"object.fromentries@^2.0.2": - "integrity" "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==" - "resolved" "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz" - "version" "2.0.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.0-next.2" - "has" "^1.0.3" - -"object.values@^1.1.1", "object.values@^1.1.4": - "integrity" "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==" - "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" - "version" "1.1.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.2" - -"once@^1.3.0": - "integrity" "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" - "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - "version" "1.4.0" - dependencies: - "wrappy" "1" - -"optionator@^0.9.1": - "integrity" "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==" - "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" - "version" "0.9.1" - dependencies: - "deep-is" "^0.1.3" - "fast-levenshtein" "^2.0.6" - "levn" "^0.4.1" - "prelude-ls" "^1.2.1" - "type-check" "^0.4.0" - "word-wrap" "^1.2.3" - -"p-limit@^1.1.0": - "integrity" "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==" - "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" - "version" "1.3.0" - dependencies: - "p-try" "^1.0.0" - -"p-limit@^2.0.0": - "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" - "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" - "version" "2.3.0" - dependencies: - "p-try" "^2.0.0" - -"p-limit@^3.0.2": - "integrity" "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==" - "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" - "version" "3.1.0" - dependencies: - "yocto-queue" "^0.1.0" - -"p-locate@^2.0.0": - "integrity" "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=" - "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "p-limit" "^1.1.0" - -"p-locate@^3.0.0": - "integrity" "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==" - "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "p-limit" "^2.0.0" - -"p-locate@^5.0.0": - "integrity" "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==" - "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" - "version" "5.0.0" - dependencies: - "p-limit" "^3.0.2" - -"p-try@^1.0.0": - "integrity" "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" - "resolved" "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" - "version" "1.0.0" - -"p-try@^2.0.0": - "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" - "version" "2.2.0" - -"parent-module@^1.0.0": - "integrity" "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==" - "resolved" "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" - "version" "1.0.1" - dependencies: - "callsites" "^3.0.0" - -"parse-json@^4.0.0": - "integrity" "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=" - "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" - "version" "4.0.0" - dependencies: - "error-ex" "^1.3.1" - "json-parse-better-errors" "^1.0.1" - -"path-exists@^3.0.0": - "integrity" "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" - "version" "3.0.0" - -"path-exists@^4.0.0": - "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" - "version" "4.0.0" - -"path-is-absolute@^1.0.0": - "integrity" "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" - "version" "1.0.1" - -"path-key@^3.1.0": - "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" - "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" - "version" "3.1.1" - -"path-parse@^1.0.6": - "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" - "version" "1.0.7" - -"path-type@^3.0.0": - "integrity" "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==" - "resolved" "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "pify" "^3.0.0" - -"pify@^3.0.0": - "integrity" "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - "resolved" "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" - "version" "3.0.0" - -"pify@^4.0.1": - "integrity" "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - "resolved" "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" - "version" "4.0.1" - -"pkg-conf@^3.1.0": - "integrity" "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==" - "resolved" "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz" - "version" "3.1.0" - dependencies: - "find-up" "^3.0.0" - "load-json-file" "^5.2.0" - -"pkg-dir@^2.0.0": - "integrity" "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=" - "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "find-up" "^2.1.0" - -"pkg-up@^2.0.0": - "integrity" "sha1-yBmscoBZpGHKscOImivjxJoATX8=" - "resolved" "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "find-up" "^2.1.0" - -"prelude-ls@^1.2.1": - "integrity" "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" - "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" - "version" "1.2.1" - -"progress@^2.0.0": - "integrity" "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" - "resolved" "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" - "version" "2.0.3" - -"promise-limit@^2.7.0": - "integrity" "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==" - "resolved" "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz" - "version" "2.7.0" - -"prop-types@^15.7.2": - "integrity" "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==" - "resolved" "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" - "version" "15.7.2" - dependencies: - "loose-envify" "^1.4.0" - "object-assign" "^4.1.1" - "react-is" "^16.8.1" - -"punycode@^2.1.0": - "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" - "version" "2.1.1" - -"react-is@^16.8.1": - "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - "version" "16.13.1" - -"read-pkg-up@^3.0.0": - "integrity" "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=" - "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "find-up" "^2.0.0" - "read-pkg" "^3.0.0" - -"read-pkg@^3.0.0": - "integrity" "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=" - "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" - "version" "3.0.0" - dependencies: - "load-json-file" "^4.0.0" - "normalize-package-data" "^2.3.2" - "path-type" "^3.0.0" - -"regexp.prototype.flags@^1.3.1": - "integrity" "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==" - "resolved" "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" - "version" "1.3.1" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - -"regexpp@^3.0.0", "regexpp@^3.1.0": - "integrity" "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" - "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" - "version" "3.2.0" - -"require-directory@^2.1.1": - "integrity" "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" - "version" "2.1.1" - -"require-from-string@^2.0.2": - "integrity" "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" - "resolved" "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" - "version" "2.0.2" - -"resolve-from@^4.0.0": - "integrity" "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" - "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" - "version" "4.0.0" - -"resolve@^1.10.0", "resolve@^1.10.1", "resolve@^1.18.1", "resolve@^1.20.0": - "integrity" "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==" - "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" - "version" "1.20.0" - dependencies: - "is-core-module" "^2.2.0" - "path-parse" "^1.0.6" - -"rimraf@^3.0.0", "rimraf@^3.0.2": - "integrity" "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==" - "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" - "version" "3.0.2" - dependencies: - "glob" "^7.1.3" - -"safe-buffer@~5.1.1": - "integrity" "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - "version" "5.1.2" - -"semistandard@^16.0.1": - "integrity" "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==" - "resolved" "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz" - "version" "16.0.1" - dependencies: - "eslint" "^7.27.0" - "eslint-config-semistandard" "16.0.0" - "eslint-config-standard" "16.0.3" - "eslint-config-standard-jsx" "10.0.0" - "eslint-plugin-import" "^2.22.1" - "eslint-plugin-node" "^11.1.0" - "eslint-plugin-promise" "^5.1.0" - "eslint-plugin-react" "~7.21.5" - "standard-engine" "^14.0.0" - -"semver@^6.0.0", "semver@^6.1.0": - "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - "version" "6.3.0" - -"semver@^7.2.1": - "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" - "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" - "version" "7.3.5" - dependencies: - "lru-cache" "^6.0.0" - -"semver@^7.3.5": - "integrity" "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==" - "resolved" "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" - "version" "7.3.5" - dependencies: - "lru-cache" "^6.0.0" +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" + +load-json-file@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" + integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== + dependencies: + graceful-fs "^4.1.15" + parse-json "^4.0.0" + pify "^4.0.1" + strip-bom "^3.0.0" + type-fest "^0.3.0" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lockbase@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/lockbase/-/lockbase-1.2.2.tgz#86b232f0619d817989f1c1246b0303f9526af005" + integrity sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg== + dependencies: + c8 "^7.8.0" + uuid "^8.3.2" + +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + +logslot@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/logslot/-/logslot-2.1.0.tgz#2897d410e70c8b83fd90c67fb8f63c192d98156c" + integrity sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q== + dependencies: + chalk "^4.1.1" + +loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.0, minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +mql-to-jql@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/mql-to-jql/-/mql-to-jql-1.4.0.tgz#168d54c45749817a21a6134c70cd4c7bfe8ce4bc" + integrity sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +node-ejdb-lite@^3.4.4: + version "3.4.4" + resolved "https://registry.yarnpkg.com/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz#d13d530bcda6e3f1b2ccaa0898afd2383fe6c0e1" + integrity sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg== + dependencies: + semver "^7.3.5" + +normalize-package-data@^2.3.2: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-inspect@^1.11.0, object-inspect@^1.9.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" + integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== + +object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" + +object.entries@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.4.tgz#43ccf9a50bc5fd5b649d45ab1a579f24e088cafd" + integrity sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + +object.fromentries@^2.0.2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.4.tgz#26e1ba5c4571c5c6f0890cef4473066456a120b8" + integrity sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + has "^1.0.3" + +object.values@^1.1.1, object.values@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.4.tgz#0d273762833e816b693a637d30073e7051535b30" + integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + +p-limit@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +pkg-conf@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-3.1.0.tgz#d9f9c75ea1bae0e77938cde045b276dac7cc69ae" + integrity sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ== + dependencies: + find-up "^3.0.0" + load-json-file "^5.2.0" + +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= + dependencies: + find-up "^2.1.0" + +pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" + integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= + dependencies: + find-up "^2.1.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +promise-limit@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/promise-limit/-/promise-limit-2.7.0.tgz#eb5737c33342a030eaeaecea9b3d3a93cb592b26" + integrity sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw== + +prop-types@^15.7.2: + version "15.7.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +react-is@^16.8.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +read-pkg-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= + dependencies: + find-up "^2.0.0" + read-pkg "^3.0.0" + +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + +regexp.prototype.flags@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" + integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +regexpp@^3.0.0, regexpp@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@^1.10.0, resolve@^1.10.1, resolve@^1.18.1, resolve@^1.20.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +rimraf@^3.0.0, rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +semistandard@^16.0.1: + version "16.0.1" + resolved "https://registry.yarnpkg.com/semistandard/-/semistandard-16.0.1.tgz#8ed8590e848e74c24c77011df4350bb0327b31bb" + integrity sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q== + dependencies: + eslint "^7.27.0" + eslint-config-semistandard "16.0.0" + eslint-config-standard "16.0.3" + eslint-config-standard-jsx "10.0.0" + eslint-plugin-import "^2.22.1" + eslint-plugin-node "^11.1.0" + eslint-plugin-promise "^5.1.0" + eslint-plugin-react "~7.21.5" + standard-engine "^14.0.0" "semver@2 || 3 || 4 || 5": - "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" - "version" "5.7.1" - -"server-destroy@^1.0.1": - "integrity" "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" - "resolved" "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" - "version" "1.0.1" - -"shebang-command@^2.0.0": - "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==" - "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" - "version" "2.0.0" - dependencies: - "shebang-regex" "^3.0.0" - -"shebang-regex@^3.0.0": - "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" - "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" - "version" "3.0.0" - -"side-channel@^1.0.4": - "integrity" "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==" - "resolved" "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "call-bind" "^1.0.0" - "get-intrinsic" "^1.0.2" - "object-inspect" "^1.9.0" - -"signal-exit@^3.0.2": - "integrity" "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" - "version" "3.0.3" - -"slice-ansi@^4.0.0": - "integrity" "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==" - "resolved" "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" - "version" "4.0.0" - dependencies: - "ansi-styles" "^4.0.0" - "astral-regex" "^2.0.0" - "is-fullwidth-code-point" "^3.0.0" - -"source-map@^0.7.3": - "integrity" "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" - "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" - "version" "0.7.3" - -"spdx-correct@^3.0.0": - "integrity" "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==" - "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" - "version" "3.1.1" - dependencies: - "spdx-expression-parse" "^3.0.0" - "spdx-license-ids" "^3.0.0" - -"spdx-exceptions@^2.1.0": - "integrity" "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" - "resolved" "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" - "version" "2.3.0" - -"spdx-expression-parse@^3.0.0": - "integrity" "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==" - "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" - "version" "3.0.1" - dependencies: - "spdx-exceptions" "^2.1.0" - "spdx-license-ids" "^3.0.0" - -"spdx-license-ids@^3.0.0": - "integrity" "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==" - "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz" - "version" "3.0.10" - -"sprintf-js@~1.0.2": - "integrity" "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - "version" "1.0.3" - -"standard-engine@^14.0.0": - "integrity" "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==" - "resolved" "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz" - "version" "14.0.1" - dependencies: - "get-stdin" "^8.0.0" - "minimist" "^1.2.5" - "pkg-conf" "^3.1.0" - "xdg-basedir" "^4.0.0" - -"string-width@^4.1.0", "string-width@^4.2.0": - "integrity" "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==" - "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" - "version" "4.2.2" - dependencies: - "emoji-regex" "^8.0.0" - "is-fullwidth-code-point" "^3.0.0" - "strip-ansi" "^6.0.0" - -"string.prototype.matchall@^4.0.2": - "integrity" "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==" - "resolved" "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz" - "version" "4.0.5" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - "es-abstract" "^1.18.2" - "get-intrinsic" "^1.1.1" - "has-symbols" "^1.0.2" - "internal-slot" "^1.0.3" - "regexp.prototype.flags" "^1.3.1" - "side-channel" "^1.0.4" - -"string.prototype.trimend@^1.0.4": - "integrity" "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==" - "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - -"string.prototype.trimstart@^1.0.4": - "integrity" "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==" - "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" - "version" "1.0.4" - dependencies: - "call-bind" "^1.0.2" - "define-properties" "^1.1.3" - -"strip-ansi@^6.0.0": - "integrity" "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==" - "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" - "version" "6.0.0" - dependencies: - "ansi-regex" "^5.0.0" - -"strip-bom@^3.0.0": - "integrity" "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" - "version" "3.0.0" - -"strip-json-comments@^3.1.0", "strip-json-comments@^3.1.1": - "integrity" "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" - "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" - "version" "3.1.1" - -"supports-color@^5.3.0": - "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" - "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" - "version" "5.5.0" - dependencies: - "has-flag" "^3.0.0" - -"supports-color@^7.1.0": - "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" - "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" - "version" "7.2.0" - dependencies: - "has-flag" "^4.0.0" - -"table@^6.0.9": - "integrity" "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==" - "resolved" "https://registry.npmjs.org/table/-/table-6.7.1.tgz" - "version" "6.7.1" - dependencies: - "ajv" "^8.0.1" - "lodash.clonedeep" "^4.5.0" - "lodash.truncate" "^4.4.2" - "slice-ansi" "^4.0.0" - "string-width" "^4.2.0" - "strip-ansi" "^6.0.0" - -"tcpocket@^7.3.2": - "integrity" "sha512-RhiQc2w6aPrOFGFnkQJwAVIS2KNhhmltOw+X3w1I4WCPZ1TMGuh0D+kUU3f5yzr0SQ77YV//cFKcxTy34Ko7zA==" - "resolved" "https://registry.npmjs.org/tcpocket/-/tcpocket-7.3.2.tgz" - "version" "7.3.2" - -"test-exclude@^6.0.0": - "integrity" "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==" - "resolved" "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" - "version" "6.0.0" + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@^6.0.0, semver@^6.1.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.2.1, semver@^7.3.5: + version "7.3.5" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + +server-destroy@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" + integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +source-map@^0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +spdx-correct@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.10" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" + integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +standard-engine@^14.0.0: + version "14.0.1" + resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-14.0.1.tgz#fe568e138c3d9768fc59ff81001f7049908a8156" + integrity sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q== + dependencies: + get-stdin "^8.0.0" + minimist "^1.2.5" + pkg-conf "^3.1.0" + xdg-basedir "^4.0.0" + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.matchall@^4.0.2: + version "4.0.5" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz#59370644e1db7e4c0c045277690cf7b01203c4da" + integrity sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + get-intrinsic "^1.1.1" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + regexp.prototype.flags "^1.3.1" + side-channel "^1.0.4" + +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +table@^6.0.9: + version "6.7.1" + resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" + integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== + dependencies: + ajv "^8.0.1" + lodash.clonedeep "^4.5.0" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.0" + strip-ansi "^6.0.0" + +tcpocket@^7.3.2: + version "7.3.2" + resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.3.2.tgz#47ba5836f961ff92258b3d6ebea1058443aad685" + integrity sha512-RhiQc2w6aPrOFGFnkQJwAVIS2KNhhmltOw+X3w1I4WCPZ1TMGuh0D+kUU3f5yzr0SQ77YV//cFKcxTy34Ko7zA== + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" - "glob" "^7.1.4" - "minimatch" "^3.0.4" - -"text-table@^0.2.0": - "integrity" "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" - "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - "version" "0.2.0" - -"tsconfig-paths@^3.10.1": - "integrity" "sha512-rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==" - "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz" - "version" "3.10.1" - dependencies: - "json5" "^2.2.0" - "minimist" "^1.2.0" - "strip-bom" "^3.0.0" - -"type-check@^0.4.0", "type-check@~0.4.0": - "integrity" "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==" - "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" - "version" "0.4.0" - dependencies: - "prelude-ls" "^1.2.1" - -"type-fest@^0.20.2": - "integrity" "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" - "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" - "version" "0.20.2" - -"type-fest@^0.3.0": - "integrity" "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" - "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" - "version" "0.3.1" - -"unbox-primitive@^1.0.1": - "integrity" "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==" - "resolved" "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" - "version" "1.0.1" - dependencies: - "function-bind" "^1.1.1" - "has-bigints" "^1.0.1" - "has-symbols" "^1.0.2" - "which-boxed-primitive" "^1.0.2" - -"uri-js@^4.2.2": - "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==" - "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" - "version" "4.4.1" - dependencies: - "punycode" "^2.1.0" - -"uuid@^8.3.2": - "integrity" "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - "resolved" "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" - "version" "8.3.2" - -"v8-compile-cache@^2.0.3": - "integrity" "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" - "resolved" "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" - "version" "2.3.0" - -"v8-to-istanbul@^8.0.0": - "integrity" "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==" - "resolved" "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz" - "version" "8.0.0" + glob "^7.1.4" + minimatch "^3.0.4" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +tsconfig-paths@^3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz#954c1fe973da6339c78e06b03ce2e48810b65f36" + integrity sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.1" + minimist "^1.2.0" + strip-bom "^3.0.0" + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" + integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== + +unbox-primitive@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== + dependencies: + function-bind "^1.1.1" + has-bigints "^1.0.1" + has-symbols "^1.0.2" + which-boxed-primitive "^1.0.2" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + +v8-to-istanbul@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" + integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" - "convert-source-map" "^1.6.0" - "source-map" "^0.7.3" - -"validate-npm-package-license@^3.0.1": - "integrity" "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==" - "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" - "version" "3.0.4" - dependencies: - "spdx-correct" "^3.0.0" - "spdx-expression-parse" "^3.0.0" - -"which-boxed-primitive@^1.0.2": - "integrity" "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==" - "resolved" "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" - "version" "1.0.2" - dependencies: - "is-bigint" "^1.0.1" - "is-boolean-object" "^1.1.0" - "is-number-object" "^1.0.4" - "is-string" "^1.0.5" - "is-symbol" "^1.0.3" - -"which@^2.0.1": - "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==" - "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz" - "version" "2.0.2" - dependencies: - "isexe" "^2.0.0" - -"word-wrap@^1.2.3": - "integrity" "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" - "resolved" "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" - "version" "1.2.3" - -"wrap-ansi@^7.0.0": - "integrity" "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==" - "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" - "version" "7.0.0" - dependencies: - "ansi-styles" "^4.0.0" - "string-width" "^4.1.0" - "strip-ansi" "^6.0.0" - -"wrappy@1": - "integrity" "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - "version" "1.0.2" - -"wtfnode@^0.9.1": - "integrity" "sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA==" - "resolved" "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz" - "version" "0.9.1" - -"xdg-basedir@^4.0.0": - "integrity" "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" - "resolved" "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" - "version" "4.0.0" - -"y18n@^5.0.5": - "integrity" "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - "resolved" "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" - "version" "5.0.8" - -"yallist@^4.0.0": - "integrity" "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - "resolved" "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" - "version" "4.0.0" - -"yargs-parser@^20.2.2", "yargs-parser@^20.2.7": - "integrity" "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" - "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" - "version" "20.2.9" - -"yargs@^16.2.0": - "integrity" "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==" - "resolved" "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" - "version" "16.2.0" - dependencies: - "cliui" "^7.0.2" - "escalade" "^3.1.1" - "get-caller-file" "^2.0.5" - "require-directory" "^2.1.1" - "string-width" "^4.2.0" - "y18n" "^5.0.5" - "yargs-parser" "^20.2.2" - -"yocto-queue@^0.1.0": - "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" - "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" - "version" "0.1.0" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +word-wrap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +wtfnode@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/wtfnode/-/wtfnode-0.9.1.tgz#c385679d2df6fb4d64d734eeeaab767fcee3e0d3" + integrity sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA== + +xdg-basedir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" + integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yargs-parser@^20.2.2, yargs-parser@^20.2.7: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From 4ef816e20ba18dc1fb4ef622fb75e6495575a3b9 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 14:55:24 +1000 Subject: [PATCH 36/73] Refactor and fix patch/put conflicts --- lib/controllers/external/patch.js | 46 +++++++++++++++-------------- lib/controllers/external/post.js | 29 +----------------- lib/controllers/external/put.js | 49 ++++++++++++++++++------------- lib/index.js | 34 +++++++++++++++++++++ lib/modules/conflicts/index.js | 19 ++---------- test/features/basic.js | 21 ++++++++----- 6 files changed, 103 insertions(+), 95 deletions(-) diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index 6e99e42..d6e7872 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -1,10 +1,8 @@ -import logslot from 'logslot'; +import { v4 as uuid } from 'uuid'; import c from '../../constants.js'; import validateRequestData from '../../utils/validateRequestData.js'; -const log = logslot('canhazdb.controllers.external.patch'); - async function patchController ({ context, socket, request, response }) { const requestData = request.json(); @@ -12,29 +10,33 @@ async function patchController ({ context, socket, request, response }) { const collectionId = requestData[c.COLLECTION_ID]; - const results = await Promise.all( - context.nodes - .filter(node => node.connected) - .map(node => { - return node.client.send(c.PATCH, { - [c.COLLECTION_ID]: collectionId, - [c.QUERY]: requestData[c.QUERY], - [c.DATA]: requestData[c.DATA], - [c.INTERNAL]: true - }).catch(error => { - log.warn('node send failed', error); - }); - }) - ); + const document = requestData[c.DATA]; + + const internalRequestData = { + [c.COLLECTION_ID]: collectionId, + [c.QUERY]: requestData[c.QUERY], + [c.DATA]: document, + [c.INTERNAL]: true + }; + + const results = await context.sendToAllClients(context, c.PATCH, internalRequestData); const errors = results.filter(result => { - return !result || result.command !== c.STATUS_OK; + return !result || result.command !== c.STATUS_OK || result.error; }); - if (errors.length > 0) { - response.reply((errors[0] && errors[0].command) || c.STATUS_SERVER_ERROR, errors.data); - return; - } + errors.forEach(error => { + context.emit('conflict', { + id: uuid(), + nodeName: error.node.name, + method: 'PATCH', + request: internalRequestData, + collectionId, + documentId: document.id, + document, + timestamp: new Date() + }); + }); const effectedDocumentIds = results.reduce((ids, result) => { if (result.command === c.STATUS_OK) { diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index 3a516c0..cd767ff 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -1,11 +1,8 @@ -import logslot from 'logslot'; import { v4 as uuid } from 'uuid'; import c from '../../constants.js'; import selectRandomItemsFromArray from '../../utils/selectRandomItemsFromArray.js'; -const log = logslot('canhazdb.controllers.external.post'); - async function postController ({ context, socket, request, response }) { const nodes = selectRandomItemsFromArray( context.nodes, @@ -30,31 +27,7 @@ async function postController ({ context, socket, request, response }) { [c.INTERNAL]: true }; - const results = await Promise.all( - nodes.map(node => { - if (!node.client) { - return { - node, - error: new Error('client not connected') - }; - } - - return node.client.send(c.POST, internalRequestData) - .then(result => { - return { - node, - ...result - }; - }) - .catch(error => { - log.warn('node send failed', error); - return { - node, - error - }; - }); - }) - ); + const results = await context.sendToAllClients(context, c.POST, internalRequestData); const errors = results.filter(result => { return !result || result.command !== c.STATUS_CREATED || result.error; diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 48cc2d5..2041c74 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -1,10 +1,8 @@ -import logslot from 'logslot'; +import { v4 as uuid } from 'uuid'; import c from '../../constants.js'; import validateRequestData from '../../utils/validateRequestData.js'; -const log = logslot('canhazdb.controllers.external.put'); - async function putController ({ context, socket, request, response }) { const requestData = request.json(); @@ -12,27 +10,38 @@ async function putController ({ context, socket, request, response }) { const collectionId = requestData[c.COLLECTION_ID]; - const results = await Promise.all( - context.nodes - .filter(node => node.connected) - .map(node => { - return node.client.send(c.PUT, { - [c.COLLECTION_ID]: collectionId, - [c.QUERY]: requestData[c.QUERY], - [c.DATA]: requestData[c.DATA], - [c.INTERNAL]: true - }).catch(error => { - log.warn('node send failed', error); - }); - }) - ); + const document = requestData[c.DATA]; + + const internalRequestData = { + [c.COLLECTION_ID]: collectionId, + [c.QUERY]: requestData[c.QUERY], + [c.DATA]: document, + [c.INTERNAL]: true + }; + + const results = await context.sendToAllClients(context, c.PUT, internalRequestData); const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; + return !result || result.command !== c.STATUS_OK || result.error; + }); + + errors.forEach(error => { + context.emit('conflict', { + id: uuid(), + nodeName: error.node.name, + method: 'PUT', + request: internalRequestData, + collectionId, + documentId: document.id, + document, + timestamp: new Date() + }); }); - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); + if (results.length - errors.length === 0) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: 'No node in the cluster responded successfully' + }); return; } diff --git a/lib/index.js b/lib/index.js index 11b798b..fd147dd 100644 --- a/lib/index.js +++ b/lib/index.js @@ -132,6 +132,40 @@ async function canhazdb (rawOptions) { } syncNodesInfo(); + context.sendToAllClients = (context, command, data) => { + if (!context.nodes) { + return []; + } + + return Promise.all( + context.nodes + .map(node => { + if (!node.connected) { + return { + command: c.STATUS_SERVER_ERROR, + error: new Error('client not connected'), + node + }; + } + + return node.client.send(command, data) + .then(result => { + return { + ...result, + node + }; + }) + .catch(error => { + log.warn(error); + return { + command: c.STATUS_SERVER_ERROR, + node + }; + }); + }) + ); + }; + context.close = async function () { context.closed = true; diff --git a/lib/modules/conflicts/index.js b/lib/modules/conflicts/index.js index 520eb11..d8a62f8 100644 --- a/lib/modules/conflicts/index.js +++ b/lib/modules/conflicts/index.js @@ -15,21 +15,6 @@ function onlyOnce (fn) { }; } -function sendToAllClients (context, command, data) { - return Promise.all( - context.nodes - .filter(node => node.connected) - .map(node => { - return node.client.send(command, data).catch(error => { - log.warn(error); - return { - command: c.STATUS_SERVER_ERROR - }; - }); - }) - ); -} - async function resolveConflict (context, conflict) { try { const result = await context.thisNode.client @@ -39,7 +24,7 @@ async function resolveConflict (context, conflict) { throw Object.assign(new Error('conflict could not resolve'), { result }); } - return sendToAllClients(context, c.CONFLICT_RESOLVE, { + return context.sendToAllClients(context, c.CONFLICT_RESOLVE, { [c.INTERNAL]: true, [c.DATA]: conflict }); @@ -148,7 +133,7 @@ function conflictsModule (context) { }); context.on('conflict', async function (data) { - return sendToAllClients(context, c.CONFLICT_RAISE, { + return context.sendToAllClients(context, c.CONFLICT_RAISE, { [c.INTERNAL]: true, [c.DATA]: data }); diff --git a/test/features/basic.js b/test/features/basic.js index 25cee66..eb14162 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -161,7 +161,7 @@ test('post', async t => { }); test('put', async t => { - t.plan(3); + t.plan(5); const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); @@ -169,7 +169,7 @@ test('put', async t => { await createExampleDocuments(client, 3); - const putResponses = await client.send(c.PUT, { + const putResponse = await client.send(c.PUT, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'barz' } }); @@ -177,20 +177,22 @@ test('put', async t => { const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'tests' }); - t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(putResponse.command, c.STATUS_OK, 'has status'); + t.equal(getResponse.json()[c.DATA].length, 3, 'put 3 documents'); const foos = getResponse.json()[c.DATA] .map(item => item.foo); - t.deepEqual(foos, ['barz', 'barz', 'barz'], 'returned 1 document'); + t.deepEqual(foos, ['barz', 'barz', 'barz'], 'returned 3 documents'); + + t.equal(putResponse.json()[c.DATA].length, 3, 'altered the correct number of documents'); - t.equal(putResponses.json()[c.DATA].length, 3, 'altered the correct number of documents'); await client.close(); await servers.close(); }); test('patch', async t => { - t.plan(3); + t.plan(5); const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); @@ -198,7 +200,7 @@ test('patch', async t => { await createExampleDocuments(client, 3, { b: 1 }); - const patchResponses = await client.send(c.PATCH, { + const patchResponse = await client.send(c.PATCH, { [c.COLLECTION_ID]: 'tests', [c.DATA]: { foo: 'barz' } }); @@ -208,6 +210,8 @@ test('patch', async t => { }); t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(patchResponse.command, c.STATUS_OK, 'has status'); + t.equal(patchResponse.json()[c.DATA].length, 3, 'patched 3 documents'); const finalResponse = getResponse.json()[c.DATA] .map(item => { @@ -220,7 +224,8 @@ test('patch', async t => { { foo: 'barz', b: 1 } ], 'returned 1 document'); - t.equal(patchResponses.json()[c.DATA].length, 3, 'altered the correct number of documents'); + t.equal(patchResponse.json()[c.DATA].length, 3, 'altered the correct number of documents'); + await client.close(); await servers.close(); }); From 1119fbe4ce20be7d249deb44156c42b19344c590 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 15:04:33 +1000 Subject: [PATCH 37/73] Add conflict to delete --- lib/controllers/external/delete.js | 44 +++++++++++++++--------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index cef9411..601f12d 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -1,10 +1,8 @@ -import logslot from 'logslot'; +import { v4 as uuid } from 'uuid'; import c from '../../constants.js'; import validateRequestData from '../../utils/validateRequestData.js'; -const log = logslot('canhazdb.controllers.external.delete'); - async function deleteController ({ context, socket, request, response }) { const requestData = request.json(); @@ -12,29 +10,31 @@ async function deleteController ({ context, socket, request, response }) { const collectionId = requestData[c.COLLECTION_ID]; - const results = await Promise.all( - context.nodes - .filter(node => node.connected) - .map(node => { - return node.client.send(c.DELETE, { - [c.COLLECTION_ID]: collectionId, - [c.QUERY]: requestData[c.QUERY], - [c.DATA]: requestData[c.DATA], - [c.INTERNAL]: true - }).catch(error => { - log.warn('node send failed', error); - }); - }) - ); + const internalRequestData = { + [c.COLLECTION_ID]: collectionId, + [c.QUERY]: requestData[c.QUERY], + [c.DATA]: requestData[c.DATA], + [c.INTERNAL]: true + }; + + const results = await context.sendToAllClients(context, c.DELETE, internalRequestData); const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; + return !result || result.command !== c.STATUS_OK || result.error; }); - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); - return; - } + errors.forEach(error => { + context.emit('conflict', { + id: uuid(), + nodeName: error.node.name, + method: 'DELETE', + request: internalRequestData, + collectionId, + documentId: document.id, + document, + timestamp: new Date() + }); + }); const effectedDocumentIds = results.reduce((ids, result) => { if (result.command === c.STATUS_OK) { From 07b473522120e4c2a2c950410c6bc24327f2f929 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 18:48:15 +1000 Subject: [PATCH 38/73] Fix #67 - Correlation id now rotates safely --- package.json | 2 +- yarn.lock | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 7488b45..6948764 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.3.2", + "tcpocket": "^7.4.0", "uuid": "^8.3.2" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 8c1cad7..735e3db 100644 --- a/yarn.lock +++ b/yarn.lock @@ -834,6 +834,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +increlation@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/increlation/-/increlation-1.0.1.tgz#70a9f1981b860109f9c97d2d2b89c8c48a4dbc5a" + integrity sha512-6PhPU/vEN5TP4zqQAab0biOyKtLOSGp6jDkGdHthH2b6Q9cG5LXPfP9ti78jxLagBz9iXnF2cAVnqCMx2fyJaQ== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -1680,10 +1685,12 @@ table@^6.0.9: string-width "^4.2.0" strip-ansi "^6.0.0" -tcpocket@^7.3.2: - version "7.3.2" - resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.3.2.tgz#47ba5836f961ff92258b3d6ebea1058443aad685" - integrity sha512-RhiQc2w6aPrOFGFnkQJwAVIS2KNhhmltOw+X3w1I4WCPZ1TMGuh0D+kUU3f5yzr0SQ77YV//cFKcxTy34Ko7zA== +tcpocket@^7.4.0: + version "7.4.0" + resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.4.0.tgz#ea823a51314ca2dcbd3ae0ecabebc0445ce1f7ff" + integrity sha512-sd1/H1JkvKgW0UVzMJHTqI2WTQAFDFvFW244kb728fu8I31Jymu0sb7ov9GnZ4lZ8AyBBUV1eeWVWF36A/hvfw== + dependencies: + increlation "^1.0.1" test-exclude@^6.0.0: version "6.0.0" From 28371b6d6bcc6714e35ecd16849a67579df4932f Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 20:05:14 +1000 Subject: [PATCH 39/73] Add ready event --- lib/constants.js | 4 +++- lib/createHandler.js | 9 +++++++++ package.json | 2 +- yarn.lock | 8 ++++---- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/lib/constants.js b/lib/constants.js index d6bb7ad..512a9df 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -51,7 +51,9 @@ const constants = { CONFLICT_GET: 150, CONFLICT_RAISE: 151, CONFLICT_RESOLVE: 152, - CONFLICT_CLEANUP: 153 + CONFLICT_CLEANUP: 153, + + READY: 160 }; Object.keys(constants).forEach(key => { diff --git a/lib/createHandler.js b/lib/createHandler.js index b98f4e2..29d5635 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -2,6 +2,7 @@ import logslot from 'logslot'; import tcpocket from 'tcpocket'; import c from './constants.js'; +import waitUntil from './utils/waitUntil.js'; const log = logslot('canhazdb.createHandler'); @@ -65,6 +66,14 @@ function createHandler (context) { context.emit('client.connected', socket); + waitUntil(() => { + return ( + context.thisNode && context.thisNode.status === 'healthy' + ); + }).then(() => { + socket.send(c.READY); + }); + socket.on('close', () => { const clientIndex = context.clients.indexOf(socket); if (clientIndex === -1) { diff --git a/package.json b/package.json index 6948764..f0d9a67 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.4.0", + "tcpocket": "^7.4.1", "uuid": "^8.3.2" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 735e3db..5731b48 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1685,10 +1685,10 @@ table@^6.0.9: string-width "^4.2.0" strip-ansi "^6.0.0" -tcpocket@^7.4.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.4.0.tgz#ea823a51314ca2dcbd3ae0ecabebc0445ce1f7ff" - integrity sha512-sd1/H1JkvKgW0UVzMJHTqI2WTQAFDFvFW244kb728fu8I31Jymu0sb7ov9GnZ4lZ8AyBBUV1eeWVWF36A/hvfw== +tcpocket@^7.4.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.4.1.tgz#32edc43e7724831493c17aa586b3281e445f6a4d" + integrity sha512-goTuv2uLrfDf2JDQJTxUTUAsgwpj2A499205IjRZDnlzDY98c/3bhPwmsvVR29oL69PyxXugCAodRqwYFTwNLg== dependencies: increlation "^1.0.1" From af965280a59f10d56d39194a37fc11ebb510deea Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 20:31:09 +1000 Subject: [PATCH 40/73] Make waitUntil cancellable --- lib/utils/waitUntil.js | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/lib/utils/waitUntil.js b/lib/utils/waitUntil.js index 95cd9f8..c8b444b 100644 --- a/lib/utils/waitUntil.js +++ b/lib/utils/waitUntil.js @@ -1,13 +1,25 @@ -import { promisify } from 'util'; +function waitUntil (fn) { + let timer; + function attempt (resolve) { + const value = fn(); -const waitUntil = promisify(function (fn, cb) { - const result = fn(); - if (!result) { - setTimeout(() => waitUntil(fn, cb)); - return; + if (value) { + resolve(value); + return; + } + + timer = setTimeout(() => attempt(resolve), 1); } - cb(); -}); + const promise = new Promise((resolve, reject) => { + attempt(resolve); + }); + + promise.cancel = () => { + clearTimeout(timer); + }; + + return promise; +} export default waitUntil; From 82ed265fdce5e091d6aa5496580563a71a25ed97 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 12 Sep 2021 20:31:14 +1000 Subject: [PATCH 41/73] Fix tests --- lib/createHandler.js | 9 +++++++-- test/features/notify.js | 28 ++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/lib/createHandler.js b/lib/createHandler.js index 29d5635..3dc7789 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -66,15 +66,20 @@ function createHandler (context) { context.emit('client.connected', socket); - waitUntil(() => { + let waitPromise = waitUntil(() => { return ( context.thisNode && context.thisNode.status === 'healthy' ); - }).then(() => { + }); + + waitPromise.then(() => { + waitPromise = false; socket.send(c.READY); }); socket.on('close', () => { + waitPromise && waitPromise.cancel(); + const clientIndex = context.clients.indexOf(socket); if (clientIndex === -1) { throw new Error('socket not found in client list'); diff --git a/test/features/notify.js b/test/features/notify.js index 89e8e1c..85bb3bd 100644 --- a/test/features/notify.js +++ b/test/features/notify.js @@ -32,6 +32,10 @@ test('notify - with multiple servers', async t => { await client2.waitUntilConnected(); client1.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); @@ -87,6 +91,10 @@ test('notify', async t => { await client.waitUntilConnected(); client.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); @@ -141,6 +149,10 @@ test('notify - post', async t => { await client.waitUntilConnected(); client.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); @@ -175,6 +187,10 @@ test('notify - put', async t => { const documentId = documents[0].json()[c.DATA].id; client.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"PUT:/tests/' + documentId)); }); @@ -212,6 +228,10 @@ test('notify - patch', async t => { const documentId = documents[0].json()[c.DATA].id; client.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"PATCH:/tests/' + documentId)); }); @@ -249,6 +269,10 @@ test('notify - delete', async t => { const documentId = documents[0].json()[c.DATA].id; client.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"DELETE:/tests/' + documentId)); }); @@ -302,6 +326,10 @@ test('notify - reconnections', async t => { await client1.waitUntilConnected(); client1.on('message', ({ command, data }) => { + if (command !== c.NOTIFY) { + return; + } + t.equal(command, c.NOTIFY); t.ok(data.toString().startsWith('{"' + c.DATA + '":"POST:/tests/')); }); From e795244e4d2ab72f653a65c173c19944b5cae8d1 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 19 Sep 2021 22:08:57 +1000 Subject: [PATCH 42/73] #62 Implement lock cleanup on socket close --- lib/controllers/external/delete.js | 2 +- lib/controllers/external/lock.js | 42 - lib/controllers/external/patch.js | 2 +- lib/controllers/external/post.js | 2 +- lib/controllers/external/put.js | 2 +- lib/controllers/external/unlock.js | 38 - lib/index.js | 6 +- lib/modules/conflicts/index.js | 4 +- lib/modules/controllers/index.js | 26 - lib/modules/lock/controllers/external/lock.js | 32 + .../lock/controllers/external/unlock.js | 28 + .../lock}/controllers/internal/lock.js | 2 +- .../lock}/controllers/internal/unlock.js | 2 +- lib/modules/lock/index.js | 46 + package-lock.json | 5647 +++++++++++++++++ package.json | 2 +- yarn.lock | 1858 ------ 17 files changed, 5766 insertions(+), 1975 deletions(-) delete mode 100644 lib/controllers/external/lock.js delete mode 100644 lib/controllers/external/unlock.js create mode 100644 lib/modules/lock/controllers/external/lock.js create mode 100644 lib/modules/lock/controllers/external/unlock.js rename lib/{ => modules/lock}/controllers/internal/lock.js (88%) rename lib/{ => modules/lock}/controllers/internal/unlock.js (90%) create mode 100644 lib/modules/lock/index.js create mode 100644 package-lock.json delete mode 100644 yarn.lock diff --git a/lib/controllers/external/delete.js b/lib/controllers/external/delete.js index 601f12d..7ea3a05 100644 --- a/lib/controllers/external/delete.js +++ b/lib/controllers/external/delete.js @@ -17,7 +17,7 @@ async function deleteController ({ context, socket, request, response }) { [c.INTERNAL]: true }; - const results = await context.sendToAllClients(context, c.DELETE, internalRequestData); + const results = await context.sendToAllNodes(context, c.DELETE, internalRequestData); const errors = results.filter(result => { return !result || result.command !== c.STATUS_OK || result.error; diff --git a/lib/controllers/external/lock.js b/lib/controllers/external/lock.js deleted file mode 100644 index a18f676..0000000 --- a/lib/controllers/external/lock.js +++ /dev/null @@ -1,42 +0,0 @@ -import logslot from 'logslot'; -import { v4 as uuid } from 'uuid'; - -import c from '../../constants.js'; - -const log = logslot('canhazdb.controllers.external.lock'); - -async function lockController ({ context, socket, request, response }) { - const requestData = request.json(); - - const id = uuid(); - - const results = await Promise.all( - context.nodes - .filter(node => node.connected) - .map(node => { - return node.client.send(c.LOCK, { - [c.INTERNAL]: context.thisNode.name, - [c.LOCK_ID]: id, - [c.LOCK_KEYS]: requestData[c.LOCK_KEYS] - }) - .catch(error => { - log.warn(error); - }); - }) - ); - - const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; - }); - - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); - return; - } - - response.reply(c.STATUS_OK, { - [c.LOCK_ID]: id - }); -} - -export default lockController; diff --git a/lib/controllers/external/patch.js b/lib/controllers/external/patch.js index d6e7872..7dedbb8 100644 --- a/lib/controllers/external/patch.js +++ b/lib/controllers/external/patch.js @@ -19,7 +19,7 @@ async function patchController ({ context, socket, request, response }) { [c.INTERNAL]: true }; - const results = await context.sendToAllClients(context, c.PATCH, internalRequestData); + const results = await context.sendToAllNodes(context, c.PATCH, internalRequestData); const errors = results.filter(result => { return !result || result.command !== c.STATUS_OK || result.error; diff --git a/lib/controllers/external/post.js b/lib/controllers/external/post.js index cd767ff..9e4c109 100644 --- a/lib/controllers/external/post.js +++ b/lib/controllers/external/post.js @@ -27,7 +27,7 @@ async function postController ({ context, socket, request, response }) { [c.INTERNAL]: true }; - const results = await context.sendToAllClients(context, c.POST, internalRequestData); + const results = await context.sendToAllNodes(context, c.POST, internalRequestData); const errors = results.filter(result => { return !result || result.command !== c.STATUS_CREATED || result.error; diff --git a/lib/controllers/external/put.js b/lib/controllers/external/put.js index 2041c74..4ddc101 100644 --- a/lib/controllers/external/put.js +++ b/lib/controllers/external/put.js @@ -19,7 +19,7 @@ async function putController ({ context, socket, request, response }) { [c.INTERNAL]: true }; - const results = await context.sendToAllClients(context, c.PUT, internalRequestData); + const results = await context.sendToAllNodes(context, c.PUT, internalRequestData); const errors = results.filter(result => { return !result || result.command !== c.STATUS_OK || result.error; diff --git a/lib/controllers/external/unlock.js b/lib/controllers/external/unlock.js deleted file mode 100644 index a6ae81d..0000000 --- a/lib/controllers/external/unlock.js +++ /dev/null @@ -1,38 +0,0 @@ -import logslot from 'logslot'; - -import c from '../../constants.js'; - -const log = logslot('canhazdb.controllers.external.unlock'); - -async function unlockController ({ context, socket, request, response }) { - const requestData = request.json(); - - const results = await Promise.all( - context.nodes - .filter(node => node.connected) - .map(node => { - return node.client.send(c.UNLOCK, { - [c.INTERNAL]: context.thisNode.name, - [c.LOCK_ID]: requestData[c.LOCK_ID] - }) - .catch(error => { - log.warn(error); - }); - }) - ); - - const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; - }); - - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); - return; - } - - response.reply(c.STATUS_OK, { - [c.LOCK_ID]: requestData[c.LOCK_ID] - }); -} - -export default unlockController; diff --git a/lib/index.js b/lib/index.js index fd147dd..26a0ac6 100644 --- a/lib/index.js +++ b/lib/index.js @@ -12,6 +12,7 @@ import notifyModule from './modules/notify/index.js'; import controllersModule from './modules/controllers/index.js'; import collectionsModule from './modules/collections/index.js'; import conflictsModule from './modules/conflicts/index.js'; +import lockModule from './modules/lock/index.js'; import c from './constants.js'; @@ -64,7 +65,8 @@ async function canhazdb (rawOptions) { controllersModule(context), notifyModule(context), collectionsModule(context), - conflictsModule(context) + conflictsModule(context), + lockModule(context) ]; context.driver = await driver(context); @@ -132,7 +134,7 @@ async function canhazdb (rawOptions) { } syncNodesInfo(); - context.sendToAllClients = (context, command, data) => { + context.sendToAllNodes = (context, command, data) => { if (!context.nodes) { return []; } diff --git a/lib/modules/conflicts/index.js b/lib/modules/conflicts/index.js index d8a62f8..8593c86 100644 --- a/lib/modules/conflicts/index.js +++ b/lib/modules/conflicts/index.js @@ -24,7 +24,7 @@ async function resolveConflict (context, conflict) { throw Object.assign(new Error('conflict could not resolve'), { result }); } - return context.sendToAllClients(context, c.CONFLICT_RESOLVE, { + return context.sendToAllNodes(context, c.CONFLICT_RESOLVE, { [c.INTERNAL]: true, [c.DATA]: conflict }); @@ -133,7 +133,7 @@ function conflictsModule (context) { }); context.on('conflict', async function (data) { - return context.sendToAllClients(context, c.CONFLICT_RAISE, { + return context.sendToAllNodes(context, c.CONFLICT_RAISE, { [c.INTERNAL]: true, [c.DATA]: data }); diff --git a/lib/modules/controllers/index.js b/lib/modules/controllers/index.js index 876decf..e3c6880 100644 --- a/lib/modules/controllers/index.js +++ b/lib/modules/controllers/index.js @@ -9,8 +9,6 @@ import internalGet from '../../controllers/internal/get.js'; import internalPut from '../../controllers/internal/put.js'; import internalPatch from '../../controllers/internal/patch.js'; import internalDelete from '../../controllers/internal/delete.js'; -import internalLock from '../../controllers/internal/lock.js'; -import internalUnlock from '../../controllers/internal/unlock.js'; import externalPost from '../../controllers/external/post.js'; import externalCount from '../../controllers/external/count.js'; @@ -18,8 +16,6 @@ import externalGet from '../../controllers/external/get.js'; import externalPut from '../../controllers/external/put.js'; import externalPatch from '../../controllers/external/patch.js'; import externalDelete from '../../controllers/external/delete.js'; -import externalLock from '../../controllers/external/lock.js'; -import externalUnlock from '../../controllers/external/unlock.js'; import externalNotifyOn from '../../controllers/external/notifyOn.js'; import externalNotifyOff from '../../controllers/external/notifyOff.js'; @@ -84,17 +80,6 @@ function controllersModule (context) { handler: internalDelete }); - context.controllers.internal.add({ - command: c.LOCK, - conditions: [], - handler: internalLock - }); - context.controllers.internal.add({ - command: c.UNLOCK, - conditions: [], - handler: internalUnlock - }); - context.controllers.internal.add({ command: c.NOTIFY, conditions: [], @@ -143,17 +128,6 @@ function controllersModule (context) { handler: rejectWhenUnhealthy(externalDelete) }); - context.controllers.external.add({ - command: c.LOCK, - conditions: [], - handler: rejectWhenUnhealthy(externalLock) - }); - context.controllers.external.add({ - command: c.UNLOCK, - conditions: [], - handler: rejectWhenUnhealthy(externalUnlock) - }); - context.controllers.external.add({ command: c.NOTIFY_ON, conditions: [], diff --git a/lib/modules/lock/controllers/external/lock.js b/lib/modules/lock/controllers/external/lock.js new file mode 100644 index 0000000..e26e203 --- /dev/null +++ b/lib/modules/lock/controllers/external/lock.js @@ -0,0 +1,32 @@ +import { v4 as uuid } from 'uuid'; + +import c from '../../../../constants.js'; + +async function lockController ({ context, socket, request, response }) { + const requestData = request.json(); + + const id = uuid(); + + const results = await context.sendToAllNodes(context, c.LOCK, { + [c.INTERNAL]: context.thisNode.name, + [c.LOCK_ID]: id, + [c.LOCK_KEYS]: requestData[c.LOCK_KEYS] + }); + + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; + }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + socket.state.locks.push(id); + + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: id + }); +} + +export default lockController; diff --git a/lib/modules/lock/controllers/external/unlock.js b/lib/modules/lock/controllers/external/unlock.js new file mode 100644 index 0000000..9109cc3 --- /dev/null +++ b/lib/modules/lock/controllers/external/unlock.js @@ -0,0 +1,28 @@ +import c from '../../../../constants.js'; + +async function unlockController ({ context, socket, request, response }) { + const requestData = request.json(); + + const results = await context.sendToAllNodes(context, c.UNLOCK, { + [c.INTERNAL]: context.thisNode.name, + [c.LOCK_ID]: requestData[c.LOCK_ID] + }); + + const errors = results.filter(result => { + return result && result.command !== c.STATUS_OK; + }); + + if (errors.length > 0) { + response.reply(errors[0].command, errors[0].data); + return; + } + + socket.state.locks = socket.state.locks + .filter(id => id !== requestData[c.LOCK_ID]); + + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: requestData[c.LOCK_ID] + }); +} + +export default unlockController; diff --git a/lib/controllers/internal/lock.js b/lib/modules/lock/controllers/internal/lock.js similarity index 88% rename from lib/controllers/internal/lock.js rename to lib/modules/lock/controllers/internal/lock.js index 4e69561..4062eb7 100644 --- a/lib/controllers/internal/lock.js +++ b/lib/modules/lock/controllers/internal/lock.js @@ -1,4 +1,4 @@ -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function lockController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/unlock.js b/lib/modules/lock/controllers/internal/unlock.js similarity index 90% rename from lib/controllers/internal/unlock.js rename to lib/modules/lock/controllers/internal/unlock.js index 60433ad..5d7f4bd 100644 --- a/lib/controllers/internal/unlock.js +++ b/lib/modules/lock/controllers/internal/unlock.js @@ -1,4 +1,4 @@ -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function unlockController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js new file mode 100644 index 0000000..1e8c94a --- /dev/null +++ b/lib/modules/lock/index.js @@ -0,0 +1,46 @@ +import logslot from 'logslot'; +import externalLockController from './controllers/external/lock.js'; +import externalUnlockController from './controllers/external/unlock.js'; +import internalLockController from './controllers/internal/lock.js'; +import internalUnlockController from './controllers/internal/unlock.js'; + +import c from '../../constants.js'; + +const log = logslot('canhazdb.lock'); + +function lockModule (context) { + context.controllers.external.add({ + command: c.LOCK, + handler: externalLockController + }); + context.controllers.external.add({ + command: c.UNLOCK, + handler: externalUnlockController + }); + + context.controllers.internal.add({ + command: c.LOCK, + handler: internalLockController + }); + context.controllers.internal.add({ + command: c.UNLOCK, + handler: internalUnlockController + }); + + context.on('client.closed', socket => { + socket.state.locks.forEach(lockId => { + context.sendToAllNodes(context, c.UNLOCK, { + [c.INTERNAL]: context.thisNode.name, + [c.LOCK_ID]: lockId + }).catch(error => { + log.error('could not clean up locks from closed socket', error); + }); + }); + }); + + context.on('client.connected', socket => { + socket.state.locks = []; + }); +} + +export default lockModule; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..7ddc7b5 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,5647 @@ +{ + "name": "canhazdb-server", + "version": "8.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "canhazdb-server", + "version": "8.0.0", + "license": "AGPL-3.0", + "dependencies": { + "chalk": "^4.1.2", + "debarrel": "^1.0.2", + "lockbase": "^1.2.2", + "logslot": "^2.1.0", + "minimist": "^1.2.5", + "mql-to-jql": "^1.4.0", + "node-ejdb-lite": "^3.4.4", + "server-destroy": "^1.0.1", + "tcpocket": "^7.4.2", + "uuid": "^8.3.2" + }, + "devDependencies": { + "basictap": "^2.2.1", + "c8": "^7.9.0", + "eslint": "^7.32.0", + "semistandard": "^16.0.1", + "wtfnode": "^0.9.1" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.14.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "node_modules/@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-includes": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", + "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/basictap": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.1.tgz", + "integrity": "sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw==", + "dev": true, + "dependencies": { + "colorette": "^1.3.0", + "events": "^3.3.0", + "promise-limit": "^2.7.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/c8": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.9.0.tgz", + "integrity": "sha512-aQ7dC8gASnKdBwHUuYuzsdKCEDrKnWr7ZuZUnf4CNAL81oyKloKrs7H7zYvcrmCtIrMToudBSUhq2q+LLBMvgg==", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.2", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.0.2", + "rimraf": "^3.0.0", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^8.0.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.7" + }, + "bin": { + "c8": "bin/c8.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debarrel": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", + "integrity": "sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g==" + }, + "node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.18.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", + "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.4", + "is-string": "^1.0.7", + "object-inspect": "^1.11.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-semistandard": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", + "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", + "dev": true, + "peerDependencies": { + "eslint": ">=7.12.1", + "eslint-config-standard": ">=16.0.3", + "eslint-plugin-import": ">=2.22.1", + "eslint-plugin-node": ">=11.1.0", + "eslint-plugin-promise": ">=4.2.1" + } + }, + "node_modules/eslint-config-standard": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", + "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peerDependencies": { + "eslint": "^7.12.1", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1 || ^5.0.0" + } + }, + "node_modules/eslint-config-standard-jsx": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", + "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peerDependencies": { + "eslint": "^7.12.1", + "eslint-plugin-react": "^7.21.5" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", + "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "pkg-dir": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "dev": true, + "dependencies": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=4.19.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.24.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", + "integrity": "sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.3", + "array.prototype.flat": "^1.2.4", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.6.2", + "find-up": "^2.0.0", + "has": "^1.0.3", + "is-core-module": "^2.6.0", + "minimatch": "^3.0.4", + "object.values": "^1.1.4", + "pkg-up": "^2.0.0", + "read-pkg-up": "^3.0.0", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.11.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-plugin-import/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "dev": true, + "dependencies": { + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" + }, + "engines": { + "node": ">=8.10.0" + }, + "peerDependencies": { + "eslint": ">=5.16.0" + } + }, + "node_modules/eslint-plugin-node/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint-plugin-node/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-promise": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", + "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", + "dev": true, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.0.0" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", + "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "dev": true + }, + "node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/increlation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/increlation/-/increlation-2.0.1.tgz", + "integrity": "sha512-KYRL0iTZq7ufPqfY7B+HhQv8RvPphbqD145YysFemDk9rM6Jj4r7T/3MsKi+Pm8KMa2p1A2nj8jcHmWS2gLNZQ==" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", + "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number-object": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz", + "integrity": "sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.3", + "object.assign": "^4.1.2" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lockbase": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz", + "integrity": "sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg==", + "dependencies": { + "c8": "^7.8.0", + "uuid": "^8.3.2" + } + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true + }, + "node_modules/logslot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", + "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "dependencies": { + "chalk": "^4.1.1" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/mql-to-jql": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", + "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/node-ejdb-lite": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", + "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", + "cpu": [ + "x64", + "x32", + "arm", + "arm64" + ], + "hasInstallScript": true, + "os": [ + "darwin", + "linux", + "alpine", + "!win32" + ], + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10.0.0", + "npm": ">=6.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", + "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0", + "load-json-file": "^5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/load-json-file": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "parse-json": "^4.0.0", + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf/node_modules/type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-limit": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", + "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==", + "dev": true + }, + "node_modules/prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/semistandard": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", + "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "eslint": "^7.27.0", + "eslint-config-semistandard": "16.0.0", + "eslint-config-standard": "16.0.3", + "eslint-config-standard-jsx": "10.0.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^5.1.0", + "eslint-plugin-react": "~7.21.5", + "standard-engine": "^14.0.0" + }, + "bin": { + "semistandard": "bin/cmd.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz", + "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==" + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz", + "integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/standard-engine": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", + "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "get-stdin": "^8.0.0", + "minimist": "^1.2.5", + "pkg-conf": "^3.1.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8.10" + } + }, + "node_modules/string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.3.1", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/table": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "dev": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.6.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", + "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/tcpocket": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.2.tgz", + "integrity": "sha512-FHVknoAyIb4i9BRB16BITLlLsqF+MZM62Fl0MwZVpY7PzdiE4bXd9zC5gePfa5Uo5Mrf1TesIMpyOFKmvsg40w==", + "dependencies": { + "increlation": "^2.0.0" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/tsconfig-paths": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", + "integrity": "sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", + "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/wtfnode": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz", + "integrity": "sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA==", + "dev": true, + "bin": { + "wtfnode": "proxy.js" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true + }, + "@babel/highlight": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.14.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + } + }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-includes": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", + "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.5" + } + }, + "array.prototype.flat": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + } + }, + "array.prototype.flatmap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "function-bind": "^1.1.1" + } + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "basictap": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.1.tgz", + "integrity": "sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw==", + "dev": true, + "requires": { + "colorette": "^1.3.0", + "events": "^3.3.0", + "promise-limit": "^2.7.0" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "c8": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.9.0.tgz", + "integrity": "sha512-aQ7dC8gASnKdBwHUuYuzsdKCEDrKnWr7ZuZUnf4CNAL81oyKloKrs7H7zYvcrmCtIrMToudBSUhq2q+LLBMvgg==", + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.2", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.0.2", + "rimraf": "^3.0.0", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^8.0.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.7" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "debarrel": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", + "integrity": "sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g==" + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.18.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", + "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.4", + "is-string": "^1.0.7", + "object-inspect": "^1.11.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + } + }, + "eslint-config-semistandard": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", + "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", + "dev": true, + "requires": {} + }, + "eslint-config-standard": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", + "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", + "dev": true, + "requires": {} + }, + "eslint-config-standard-jsx": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", + "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", + "dev": true, + "requires": {} + }, + "eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-module-utils": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", + "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "pkg-dir": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "dev": true, + "requires": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + } + }, + "eslint-plugin-import": { + "version": "2.24.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", + "integrity": "sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q==", + "dev": true, + "requires": { + "array-includes": "^3.1.3", + "array.prototype.flat": "^1.2.4", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.6.2", + "find-up": "^2.0.0", + "has": "^1.0.3", + "is-core-module": "^2.6.0", + "minimatch": "^3.0.4", + "object.values": "^1.1.4", + "pkg-up": "^2.0.0", + "read-pkg-up": "^3.0.0", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.11.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "dev": true, + "requires": { + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" + }, + "dependencies": { + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-plugin-promise": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", + "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", + "dev": true, + "requires": {} + }, + "eslint-plugin-react": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", + "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "dev": true, + "requires": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "dev": true + }, + "foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "dev": true + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "increlation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/increlation/-/increlation-2.0.1.tgz", + "integrity": "sha512-KYRL0iTZq7ufPqfY7B+HhQv8RvPphbqD145YysFemDk9rM6Jj4r7T/3MsKi+Pm8KMa2p1A2nj8jcHmWS2gLNZQ==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true + }, + "is-core-module": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", + "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "dev": true + }, + "is-number-object": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + } + }, + "istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsx-ast-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz", + "integrity": "sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA==", + "dev": true, + "requires": { + "array-includes": "^3.1.3", + "object.assign": "^4.1.2" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "lockbase": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz", + "integrity": "sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg==", + "requires": { + "c8": "^7.8.0", + "uuid": "^8.3.2" + } + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true + }, + "logslot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", + "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "requires": { + "chalk": "^4.1.1" + } + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "mql-to-jql": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", + "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node-ejdb-lite": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", + "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", + "requires": { + "semver": "^7.3.5" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-inspect": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + } + }, + "object.fromentries": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", + "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "has": "^1.0.3" + } + }, + "object.values": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pkg-conf": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", + "dev": true, + "requires": { + "find-up": "^3.0.0", + "load-json-file": "^5.2.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "load-json-file": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "parse-json": "^4.0.0", + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true + } + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "promise-limit": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", + "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==", + "dev": true + }, + "prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "semistandard": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", + "integrity": "sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q==", + "dev": true, + "requires": { + "eslint": "^7.27.0", + "eslint-config-semistandard": "16.0.0", + "eslint-config-standard": "16.0.3", + "eslint-config-standard-jsx": "10.0.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^5.1.0", + "eslint-plugin-react": "~7.21.5", + "standard-engine": "^14.0.0" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz", + "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==" + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz", + "integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "standard-engine": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", + "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", + "dev": true, + "requires": { + "get-stdin": "^8.0.0", + "minimist": "^1.2.5", + "pkg-conf": "^3.1.0", + "xdg-basedir": "^4.0.0" + } + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "string.prototype.matchall": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.3.1", + "side-channel": "^1.0.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "table": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "dev": true, + "requires": { + "ajv": "^8.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ajv": { + "version": "8.6.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", + "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + } + } + }, + "tcpocket": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.2.tgz", + "integrity": "sha512-FHVknoAyIb4i9BRB16BITLlLsqF+MZM62Fl0MwZVpY7PzdiE4bXd9zC5gePfa5Uo5Mrf1TesIMpyOFKmvsg40w==", + "requires": { + "increlation": "^2.0.0" + } + }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "tsconfig-paths": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", + "integrity": "sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + }, + "unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "v8-to-istanbul": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", + "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "wtfnode": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz", + "integrity": "sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA==", + "dev": true + }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + } + } +} diff --git a/package.json b/package.json index f0d9a67..a478f79 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", "server-destroy": "^1.0.1", - "tcpocket": "^7.4.1", + "tcpocket": "^7.4.2", "uuid": "^8.3.2" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index 5731b48..0000000 --- a/yarn.lock +++ /dev/null @@ -1,1858 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== - dependencies: - "@babel/highlight" "^7.10.4" - -"@babel/helper-validator-identifier@^7.14.5": - version "7.14.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" - integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== - -"@babel/highlight@^7.10.4": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" - integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== - dependencies: - "@babel/helper-validator-identifier" "^7.14.5" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@eslint/eslintrc@^0.4.3": - version "0.4.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" - integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== - dependencies: - ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^13.9.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" - -"@humanwhocodes/config-array@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" - integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== - dependencies: - "@humanwhocodes/object-schema" "^1.2.0" - debug "^4.1.1" - minimatch "^3.0.4" - -"@humanwhocodes/object-schema@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" - integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== - -"@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== - -"@types/istanbul-lib-coverage@^2.0.1": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" - integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== - -"@types/json5@^0.0.29": - version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" - integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= - -acorn-jsx@^5.3.1: - version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - -acorn@^7.4.0: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -ajv@^6.10.0, ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^8.0.1: - version "8.6.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" - integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -array-includes@^3.1.1, array-includes@^3.1.2, array-includes@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" - integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" - get-intrinsic "^1.1.1" - is-string "^1.0.5" - -array.prototype.flat@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" - integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.1" - -array.prototype.flatmap@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz#94cfd47cc1556ec0747d97f7c7738c58122004c9" - integrity sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.1" - function-bind "^1.1.1" - -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -basictap@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/basictap/-/basictap-2.2.1.tgz#2cfaf94927b79161859a8ce054682a8369409478" - integrity sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw== - dependencies: - colorette "^1.3.0" - events "^3.3.0" - promise-limit "^2.7.0" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -c8@^7.8.0, c8@^7.9.0: - version "7.9.0" - resolved "https://registry.yarnpkg.com/c8/-/c8-7.9.0.tgz#e63b9a22c8b4adbf6a8c8cb6194ee086b3e13c24" - integrity sha512-aQ7dC8gASnKdBwHUuYuzsdKCEDrKnWr7ZuZUnf4CNAL81oyKloKrs7H7zYvcrmCtIrMToudBSUhq2q+LLBMvgg== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@istanbuljs/schema" "^0.1.2" - find-up "^5.0.0" - foreground-child "^2.0.0" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-report "^3.0.0" - istanbul-reports "^3.0.2" - rimraf "^3.0.0" - test-exclude "^6.0.0" - v8-to-istanbul "^8.0.0" - yargs "^16.2.0" - yargs-parser "^20.2.7" - -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0, chalk@^4.1.1, chalk@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -colorette@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40" - integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -convert-source-map@^1.6.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" - -cross-spawn@^7.0.0, cross-spawn@^7.0.2: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -debarrel@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/debarrel/-/debarrel-1.0.2.tgz#89a51733f840fb10580e3e21914220c32ba89e41" - integrity sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g== - -debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -debug@^4.0.1, debug@^4.1.1: - version "4.3.2" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" - integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== - dependencies: - ms "2.1.2" - -deep-is@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - -define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -enquirer@^2.3.5: - version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: - version "1.18.6" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.6.tgz#2c44e3ea7a6255039164d26559777a6d978cb456" - integrity sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ== - dependencies: - call-bind "^1.0.2" - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - get-intrinsic "^1.1.1" - get-symbol-description "^1.0.0" - has "^1.0.3" - has-symbols "^1.0.2" - internal-slot "^1.0.3" - is-callable "^1.2.4" - is-negative-zero "^2.0.1" - is-regex "^1.1.4" - is-string "^1.0.7" - object-inspect "^1.11.0" - object-keys "^1.1.1" - object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.1" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-semistandard@16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz#45e06374707d86a87f54086e7b8bd0b7b74a197f" - integrity sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ== - -eslint-config-standard-jsx@10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz#dc24992661325a2e480e2c3091d669f19034e18d" - integrity sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA== - -eslint-config-standard@16.0.3: - version "16.0.3" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516" - integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== - -eslint-import-resolver-node@^0.3.6: - version "0.3.6" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" - integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== - dependencies: - debug "^3.2.7" - resolve "^1.20.0" - -eslint-module-utils@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz#94e5540dd15fe1522e8ffa3ec8db3b7fa7e7a534" - integrity sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q== - dependencies: - debug "^3.2.7" - pkg-dir "^2.0.0" - -eslint-plugin-es@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" - integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== - dependencies: - eslint-utils "^2.0.0" - regexpp "^3.0.0" - -eslint-plugin-import@^2.22.1: - version "2.24.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz#2c8cd2e341f3885918ee27d18479910ade7bb4da" - integrity sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q== - dependencies: - array-includes "^3.1.3" - array.prototype.flat "^1.2.4" - debug "^2.6.9" - doctrine "^2.1.0" - eslint-import-resolver-node "^0.3.6" - eslint-module-utils "^2.6.2" - find-up "^2.0.0" - has "^1.0.3" - is-core-module "^2.6.0" - minimatch "^3.0.4" - object.values "^1.1.4" - pkg-up "^2.0.0" - read-pkg-up "^3.0.0" - resolve "^1.20.0" - tsconfig-paths "^3.11.0" - -eslint-plugin-node@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" - integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== - dependencies: - eslint-plugin-es "^3.0.0" - eslint-utils "^2.0.0" - ignore "^5.1.1" - minimatch "^3.0.4" - resolve "^1.10.1" - semver "^6.1.0" - -eslint-plugin-promise@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz#fb2188fb734e4557993733b41aa1a688f46c6f24" - integrity sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng== - -eslint-plugin-react@~7.21.5: - version "7.21.5" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz#50b21a412b9574bfe05b21db176e8b7b3b15bff3" - integrity sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== - dependencies: - array-includes "^3.1.1" - array.prototype.flatmap "^1.2.3" - doctrine "^2.1.0" - has "^1.0.3" - jsx-ast-utils "^2.4.1 || ^3.0.0" - object.entries "^1.1.2" - object.fromentries "^2.0.2" - object.values "^1.1.1" - prop-types "^15.7.2" - resolve "^1.18.1" - string.prototype.matchall "^4.0.2" - -eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-utils@^2.0.0, eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - -eslint@^7.27.0, eslint@^7.32.0: - version "7.32.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" - integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== - dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.3" - "@humanwhocodes/config-array" "^0.5.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - escape-string-regexp "^4.0.0" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.1.2" - globals "^13.6.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^6.0.9" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== - dependencies: - acorn "^7.4.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" - integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -events@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" - integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== - dependencies: - flatted "^3.1.0" - rimraf "^3.0.2" - -flatted@^3.1.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.2.tgz#64bfed5cb68fe3ca78b3eb214ad97b63bedce561" - integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== - -foreground-child@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" - integrity sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA== - dependencies: - cross-spawn "^7.0.0" - signal-exit "^3.0.2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - -get-stdin@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" - integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== - -get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" - integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" - -glob-parent@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob@^7.1.3, glob@^7.1.4: - version "7.1.7" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" - integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^13.6.0, globals@^13.9.0: - version "13.11.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" - integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== - dependencies: - type-fest "^0.20.2" - -graceful-fs@^4.1.15, graceful-fs@^4.1.2: - version "4.2.8" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" - integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== - -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== - -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== - dependencies: - has-symbols "^1.0.2" - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.1: - version "5.1.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" - integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== - -import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -increlation@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/increlation/-/increlation-1.0.1.tgz#70a9f1981b860109f9c97d2d2b89c8c48a4dbc5a" - integrity sha512-6PhPU/vEN5TP4zqQAab0biOyKtLOSGp6jDkGdHthH2b6Q9cG5LXPfP9ti78jxLagBz9iXnF2cAVnqCMx2fyJaQ== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -internal-slot@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" - integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== - dependencies: - get-intrinsic "^1.1.0" - has "^1.0.3" - side-channel "^1.0.4" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-bigint@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" - integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== - dependencies: - has-bigints "^1.0.1" - -is-boolean-object@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" - integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-callable@^1.1.4, is-callable@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" - integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== - -is-core-module@^2.2.0, is-core-module@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.6.0.tgz#d7553b2526fe59b92ba3e40c8df757ec8a709e19" - integrity sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ== - dependencies: - has "^1.0.3" - -is-date-object@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== - dependencies: - has-tostringtag "^1.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^4.0.0, is-glob@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-negative-zero@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" - integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== - -is-number-object@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" - integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== - dependencies: - has-tostringtag "^1.0.0" - -is-regex@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-string@^1.0.5, is-string@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" - integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== - dependencies: - has-tostringtag "^1.0.0" - -is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" - integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== - dependencies: - has-symbols "^1.0.2" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== - -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - -istanbul-reports@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" - integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -json-parse-better-errors@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - -"jsx-ast-utils@^2.4.1 || ^3.0.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz#41108d2cec408c3453c1bbe8a4aae9e1e2bd8f82" - integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== - dependencies: - array-includes "^3.1.2" - object.assign "^4.1.2" - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -load-json-file@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" - integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= - dependencies: - graceful-fs "^4.1.2" - parse-json "^4.0.0" - pify "^3.0.0" - strip-bom "^3.0.0" - -load-json-file@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" - integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== - dependencies: - graceful-fs "^4.1.15" - parse-json "^4.0.0" - pify "^4.0.1" - strip-bom "^3.0.0" - type-fest "^0.3.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -lockbase@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/lockbase/-/lockbase-1.2.2.tgz#86b232f0619d817989f1c1246b0303f9526af005" - integrity sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg== - dependencies: - c8 "^7.8.0" - uuid "^8.3.2" - -lodash.clonedeep@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.truncate@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" - integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= - -logslot@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/logslot/-/logslot-2.1.0.tgz#2897d410e70c8b83fd90c67fb8f63c192d98156c" - integrity sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q== - dependencies: - chalk "^4.1.1" - -loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -make-dir@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.2.0, minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -mql-to-jql@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/mql-to-jql/-/mql-to-jql-1.4.0.tgz#168d54c45749817a21a6134c70cd4c7bfe8ce4bc" - integrity sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ== - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@^2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -node-ejdb-lite@^3.4.4: - version "3.4.4" - resolved "https://registry.yarnpkg.com/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz#d13d530bcda6e3f1b2ccaa0898afd2383fe6c0e1" - integrity sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg== - dependencies: - semver "^7.3.5" - -normalize-package-data@^2.3.2: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-inspect@^1.11.0, object-inspect@^1.9.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" - integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== - -object-keys@^1.0.12, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" - integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - has-symbols "^1.0.1" - object-keys "^1.1.1" - -object.entries@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.4.tgz#43ccf9a50bc5fd5b649d45ab1a579f24e088cafd" - integrity sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.2" - -object.fromentries@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.4.tgz#26e1ba5c4571c5c6f0890cef4473066456a120b8" - integrity sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" - has "^1.0.3" - -object.values@^1.1.1, object.values@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.4.tgz#0d273762833e816b693a637d30073e7051535b30" - integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.2" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.3" - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -pkg-conf@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-3.1.0.tgz#d9f9c75ea1bae0e77938cde045b276dac7cc69ae" - integrity sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ== - dependencies: - find-up "^3.0.0" - load-json-file "^5.2.0" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -promise-limit@^2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/promise-limit/-/promise-limit-2.7.0.tgz#eb5737c33342a030eaeaecea9b3d3a93cb592b26" - integrity sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw== - -prop-types@^15.7.2: - version "15.7.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" - integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.8.1" - -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -react-is@^16.8.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -read-pkg-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" - integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= - dependencies: - find-up "^2.0.0" - read-pkg "^3.0.0" - -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" - integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= - dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" - -regexp.prototype.flags@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" - integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -regexpp@^3.0.0, regexpp@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve@^1.10.0, resolve@^1.10.1, resolve@^1.18.1, resolve@^1.20.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== - dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" - -rimraf@^3.0.0, rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -semistandard@^16.0.1: - version "16.0.1" - resolved "https://registry.yarnpkg.com/semistandard/-/semistandard-16.0.1.tgz#8ed8590e848e74c24c77011df4350bb0327b31bb" - integrity sha512-ApAJ9fMAIwYuk5xI2HWSCd8s5o5L95abxU4dYl6ovUX6Rcww/7oxtaSuu9wLFL/Gfj/EXx1h6S4itXy5vyL60Q== - dependencies: - eslint "^7.27.0" - eslint-config-semistandard "16.0.0" - eslint-config-standard "16.0.3" - eslint-config-standard-jsx "10.0.0" - eslint-plugin-import "^2.22.1" - eslint-plugin-node "^11.1.0" - eslint-plugin-promise "^5.1.0" - eslint-plugin-react "~7.21.5" - standard-engine "^14.0.0" - -"semver@2 || 3 || 4 || 5": - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@^6.0.0, semver@^6.1.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^7.2.1, semver@^7.3.5: - version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== - dependencies: - lru-cache "^6.0.0" - -server-destroy@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" - integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== - dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" - -signal-exit@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - -slice-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.10" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" - integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -standard-engine@^14.0.0: - version "14.0.1" - resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-14.0.1.tgz#fe568e138c3d9768fc59ff81001f7049908a8156" - integrity sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q== - dependencies: - get-stdin "^8.0.0" - minimist "^1.2.5" - pkg-conf "^3.1.0" - xdg-basedir "^4.0.0" - -string-width@^4.1.0, string-width@^4.2.0: - version "4.2.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" - integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string.prototype.matchall@^4.0.2: - version "4.0.5" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz#59370644e1db7e4c0c045277690cf7b01203c4da" - integrity sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.2" - get-intrinsic "^1.1.1" - has-symbols "^1.0.2" - internal-slot "^1.0.3" - regexp.prototype.flags "^1.3.1" - side-channel "^1.0.4" - -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -table@^6.0.9: - version "6.7.1" - resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" - integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== - dependencies: - ajv "^8.0.1" - lodash.clonedeep "^4.5.0" - lodash.truncate "^4.4.2" - slice-ansi "^4.0.0" - string-width "^4.2.0" - strip-ansi "^6.0.0" - -tcpocket@^7.4.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/tcpocket/-/tcpocket-7.4.1.tgz#32edc43e7724831493c17aa586b3281e445f6a4d" - integrity sha512-goTuv2uLrfDf2JDQJTxUTUAsgwpj2A499205IjRZDnlzDY98c/3bhPwmsvVR29oL69PyxXugCAodRqwYFTwNLg== - dependencies: - increlation "^1.0.1" - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -tsconfig-paths@^3.11.0: - version "3.11.0" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz#954c1fe973da6339c78e06b03ce2e48810b65f36" - integrity sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA== - dependencies: - "@types/json5" "^0.0.29" - json5 "^1.0.1" - minimist "^1.2.0" - strip-bom "^3.0.0" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" - integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== - -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== - dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" - which-boxed-primitive "^1.0.2" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - -v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== - -v8-to-istanbul@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" - integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -which-boxed-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" - integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== - dependencies: - is-bigint "^1.0.1" - is-boolean-object "^1.1.0" - is-number-object "^1.0.4" - is-string "^1.0.5" - is-symbol "^1.0.3" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -word-wrap@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -wtfnode@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/wtfnode/-/wtfnode-0.9.1.tgz#c385679d2df6fb4d64d734eeeaab767fcee3e0d3" - integrity sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA== - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" - integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== - -y18n@^5.0.5: - version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" - integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@^20.2.2, yargs-parser@^20.2.7: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From a8b97426935bf09c35d1315bb4cb8c453d2cfa6f Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Mon, 20 Sep 2021 11:22:37 +1000 Subject: [PATCH 43/73] Refactor controllers into appropriate modules --- lib/index.js | 4 +- lib/modules/controllers/index.js | 117 +----------------- .../controllers/infoController.js} | 0 .../crud}/controllers/external/count.js | 2 +- .../crud}/controllers/external/delete.js | 4 +- .../crud}/controllers/external/get.js | 8 +- .../crud}/controllers/external/patch.js | 4 +- .../crud}/controllers/external/post.js | 4 +- .../crud}/controllers/external/put.js | 4 +- .../crud}/controllers/internal/count.js | 2 +- .../crud}/controllers/internal/delete.js | 4 +- .../crud}/controllers/internal/get.js | 2 +- .../crud}/controllers/internal/patch.js | 4 +- .../crud}/controllers/internal/post.js | 4 +- .../crud}/controllers/internal/put.js | 6 +- lib/modules/crud/index.js | 83 +++++++++++++ .../notify}/controllers/external/notifyOff.js | 2 +- .../notify}/controllers/external/notifyOn.js | 2 +- .../notify}/controllers/internal/notify.js | 2 +- .../notify}/controllers/internal/notifyOff.js | 2 +- .../notify}/controllers/internal/notifyOn.js | 2 +- lib/modules/notify/index.js | 31 ++++- test/features/conflicts.js | 1 - 23 files changed, 149 insertions(+), 145 deletions(-) rename lib/{controllers/internal/info.js => modules/controllers/infoController.js} (100%) rename lib/{ => modules/crud}/controllers/external/count.js (95%) rename lib/{ => modules/crud}/controllers/external/delete.js (92%) rename lib/{ => modules/crud}/controllers/external/get.js (86%) rename lib/{ => modules/crud}/controllers/external/patch.js (92%) rename lib/{ => modules/crud}/controllers/external/post.js (92%) rename lib/{ => modules/crud}/controllers/external/put.js (93%) rename lib/{ => modules/crud}/controllers/internal/count.js (96%) rename lib/{ => modules/crud}/controllers/internal/delete.js (85%) rename lib/{ => modules/crud}/controllers/internal/get.js (96%) rename lib/{ => modules/crud}/controllers/internal/patch.js (86%) rename lib/{ => modules/crud}/controllers/internal/post.js (86%) rename lib/{ => modules/crud}/controllers/internal/put.js (80%) create mode 100644 lib/modules/crud/index.js rename lib/{ => modules/notify}/controllers/external/notifyOff.js (92%) rename lib/{ => modules/notify}/controllers/external/notifyOn.js (92%) rename lib/{ => modules/notify}/controllers/internal/notify.js (88%) rename lib/{ => modules/notify}/controllers/internal/notifyOff.js (92%) rename lib/{ => modules/notify}/controllers/internal/notifyOn.js (94%) diff --git a/lib/index.js b/lib/index.js index 26a0ac6..dc99bfe 100644 --- a/lib/index.js +++ b/lib/index.js @@ -13,6 +13,7 @@ import controllersModule from './modules/controllers/index.js'; import collectionsModule from './modules/collections/index.js'; import conflictsModule from './modules/conflicts/index.js'; import lockModule from './modules/lock/index.js'; +import crudModule from './modules/crud/index.js'; import c from './constants.js'; @@ -66,7 +67,8 @@ async function canhazdb (rawOptions) { notifyModule(context), collectionsModule(context), conflictsModule(context), - lockModule(context) + lockModule(context), + crudModule(context) ]; context.driver = await driver(context); diff --git a/lib/modules/controllers/index.js b/lib/modules/controllers/index.js index e3c6880..f16ee34 100644 --- a/lib/modules/controllers/index.js +++ b/lib/modules/controllers/index.js @@ -2,26 +2,7 @@ import c from '../../constants.js'; import createControllerStore from './createControllerStore.js'; -import internalInfo from '../../controllers/internal/info.js'; -import internalPost from '../../controllers/internal/post.js'; -import internalCount from '../../controllers/internal/count.js'; -import internalGet from '../../controllers/internal/get.js'; -import internalPut from '../../controllers/internal/put.js'; -import internalPatch from '../../controllers/internal/patch.js'; -import internalDelete from '../../controllers/internal/delete.js'; - -import externalPost from '../../controllers/external/post.js'; -import externalCount from '../../controllers/external/count.js'; -import externalGet from '../../controllers/external/get.js'; -import externalPut from '../../controllers/external/put.js'; -import externalPatch from '../../controllers/external/patch.js'; -import externalDelete from '../../controllers/external/delete.js'; - -import externalNotifyOn from '../../controllers/external/notifyOn.js'; -import externalNotifyOff from '../../controllers/external/notifyOff.js'; -import internalNotifyOn from '../../controllers/internal/notifyOn.js'; -import internalNotifyOff from '../../controllers/internal/notifyOff.js'; -import internalNotify from '../../controllers/internal/notify.js'; +import internalInfo from './infoController.js'; function rejectWhenUnhealthy (fn) { return async (options) => { @@ -39,105 +20,15 @@ function controllersModule (context) { context.controllers = { system: createControllerStore(), internal: createControllerStore(), - external: createControllerStore() + external: createControllerStore(), + + rejectWhenUnhealthy }; - // System context.controllers.system.add({ command: c.INFO, handler: internalInfo }); - - // Internal - context.controllers.internal.add({ - command: c.POST, - conditions: [], - handler: internalPost - }); - context.controllers.internal.add({ - command: c.COUNT, - conditions: [], - handler: internalCount - }); - context.controllers.internal.add({ - command: c.GET, - conditions: [], - handler: internalGet - }); - context.controllers.internal.add({ - command: c.PUT, - conditions: [], - handler: internalPut - }); - context.controllers.internal.add({ - command: c.PATCH, - conditions: [], - handler: internalPatch - }); - context.controllers.internal.add({ - command: c.DELETE, - conditions: [], - handler: internalDelete - }); - - context.controllers.internal.add({ - command: c.NOTIFY, - conditions: [], - handler: internalNotify - }); - context.controllers.internal.add({ - command: c.NOTIFY_ON, - conditions: [], - handler: internalNotifyOn - }); - context.controllers.internal.add({ - command: c.NOTIFY_OFF, - conditions: [], - handler: internalNotifyOff - }); - - // External - context.controllers.external.add({ - command: c.POST, - conditions: [], - handler: rejectWhenUnhealthy(externalPost) - }); - context.controllers.external.add({ - command: c.COUNT, - conditions: [], - handler: rejectWhenUnhealthy(externalCount) - }); - context.controllers.external.add({ - command: c.GET, - conditions: [], - handler: rejectWhenUnhealthy(externalGet) - }); - context.controllers.external.add({ - command: c.PUT, - conditions: [], - handler: rejectWhenUnhealthy(externalPut) - }); - context.controllers.external.add({ - command: c.PATCH, - conditions: [], - handler: rejectWhenUnhealthy(externalPatch) - }); - context.controllers.external.add({ - command: c.DELETE, - conditions: [], - handler: rejectWhenUnhealthy(externalDelete) - }); - - context.controllers.external.add({ - command: c.NOTIFY_ON, - conditions: [], - handler: rejectWhenUnhealthy(externalNotifyOn) - }); - context.controllers.external.add({ - command: c.NOTIFY_OFF, - conditions: [], - handler: rejectWhenUnhealthy(externalNotifyOff) - }); } export default controllersModule; diff --git a/lib/controllers/internal/info.js b/lib/modules/controllers/infoController.js similarity index 100% rename from lib/controllers/internal/info.js rename to lib/modules/controllers/infoController.js diff --git a/lib/controllers/external/count.js b/lib/modules/crud/controllers/external/count.js similarity index 95% rename from lib/controllers/external/count.js rename to lib/modules/crud/controllers/external/count.js index f873f81..3b5a84d 100644 --- a/lib/controllers/external/count.js +++ b/lib/modules/crud/controllers/external/count.js @@ -1,6 +1,6 @@ import logslot from 'logslot'; -import c from '../../constants.js'; +import c from '../../../../constants.js'; const log = logslot('canhazdb.controllers.external.count'); diff --git a/lib/controllers/external/delete.js b/lib/modules/crud/controllers/external/delete.js similarity index 92% rename from lib/controllers/external/delete.js rename to lib/modules/crud/controllers/external/delete.js index 7ea3a05..c5c2e37 100644 --- a/lib/controllers/external/delete.js +++ b/lib/modules/crud/controllers/external/delete.js @@ -1,7 +1,7 @@ import { v4 as uuid } from 'uuid'; -import c from '../../constants.js'; -import validateRequestData from '../../utils/validateRequestData.js'; +import c from '../../../../constants.js'; +import validateRequestData from '../../../../utils/validateRequestData.js'; async function deleteController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/external/get.js b/lib/modules/crud/controllers/external/get.js similarity index 86% rename from lib/controllers/external/get.js rename to lib/modules/crud/controllers/external/get.js index 318a69b..4e35180 100644 --- a/lib/controllers/external/get.js +++ b/lib/modules/crud/controllers/external/get.js @@ -1,9 +1,9 @@ import logslot from 'logslot'; -import c from '../../constants.js'; -import orderByFields from '../../utils/orderByFields.js'; -import calculateAllowedErrorCount from '../../utils/calculateAllowedErrorCount.js'; -import validateRequestData from '../../utils/validateRequestData.js'; +import c from '../../../../constants.js'; +import orderByFields from '../../../../utils/orderByFields.js'; +import calculateAllowedErrorCount from '../../../../utils/calculateAllowedErrorCount.js'; +import validateRequestData from '../../../../utils/validateRequestData.js'; const log = logslot('canhazdb.controllers.external.get'); diff --git a/lib/controllers/external/patch.js b/lib/modules/crud/controllers/external/patch.js similarity index 92% rename from lib/controllers/external/patch.js rename to lib/modules/crud/controllers/external/patch.js index 7dedbb8..ffff913 100644 --- a/lib/controllers/external/patch.js +++ b/lib/modules/crud/controllers/external/patch.js @@ -1,7 +1,7 @@ import { v4 as uuid } from 'uuid'; -import c from '../../constants.js'; -import validateRequestData from '../../utils/validateRequestData.js'; +import c from '../../../../constants.js'; +import validateRequestData from '../../../../utils/validateRequestData.js'; async function patchController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/external/post.js b/lib/modules/crud/controllers/external/post.js similarity index 92% rename from lib/controllers/external/post.js rename to lib/modules/crud/controllers/external/post.js index 9e4c109..631a1bc 100644 --- a/lib/controllers/external/post.js +++ b/lib/modules/crud/controllers/external/post.js @@ -1,7 +1,7 @@ import { v4 as uuid } from 'uuid'; -import c from '../../constants.js'; -import selectRandomItemsFromArray from '../../utils/selectRandomItemsFromArray.js'; +import c from '../../../../constants.js'; +import selectRandomItemsFromArray from '../../../../utils/selectRandomItemsFromArray.js'; async function postController ({ context, socket, request, response }) { const nodes = selectRandomItemsFromArray( diff --git a/lib/controllers/external/put.js b/lib/modules/crud/controllers/external/put.js similarity index 93% rename from lib/controllers/external/put.js rename to lib/modules/crud/controllers/external/put.js index 4ddc101..0916324 100644 --- a/lib/controllers/external/put.js +++ b/lib/modules/crud/controllers/external/put.js @@ -1,7 +1,7 @@ import { v4 as uuid } from 'uuid'; -import c from '../../constants.js'; -import validateRequestData from '../../utils/validateRequestData.js'; +import c from '../../../../constants.js'; +import validateRequestData from '../../../../utils/validateRequestData.js'; async function putController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/count.js b/lib/modules/crud/controllers/internal/count.js similarity index 96% rename from lib/controllers/internal/count.js rename to lib/modules/crud/controllers/internal/count.js index f967fbb..4b39e53 100644 --- a/lib/controllers/internal/count.js +++ b/lib/modules/crud/controllers/internal/count.js @@ -1,4 +1,4 @@ -import c from '../../constants.js'; +import c from '../../../../constants.js'; // Logic: Only return the document if we are // the first replica that's available diff --git a/lib/controllers/internal/delete.js b/lib/modules/crud/controllers/internal/delete.js similarity index 85% rename from lib/controllers/internal/delete.js rename to lib/modules/crud/controllers/internal/delete.js index 82e9281..de463af 100644 --- a/lib/controllers/internal/delete.js +++ b/lib/modules/crud/controllers/internal/delete.js @@ -1,5 +1,5 @@ -import c from '../../constants.js'; -import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import c from '../../../../constants.js'; +import isLockedOrWait from '../../../../utils/isLockedOrWait.js'; async function deleteController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/get.js b/lib/modules/crud/controllers/internal/get.js similarity index 96% rename from lib/controllers/internal/get.js rename to lib/modules/crud/controllers/internal/get.js index 94ac3e9..9c3ec80 100644 --- a/lib/controllers/internal/get.js +++ b/lib/modules/crud/controllers/internal/get.js @@ -1,4 +1,4 @@ -import c from '../../constants.js'; +import c from '../../../../constants.js'; // Logic: Only return the document if we are // the first replica that's available diff --git a/lib/controllers/internal/patch.js b/lib/modules/crud/controllers/internal/patch.js similarity index 86% rename from lib/controllers/internal/patch.js rename to lib/modules/crud/controllers/internal/patch.js index 6e2f39a..7507b7f 100644 --- a/lib/controllers/internal/patch.js +++ b/lib/modules/crud/controllers/internal/patch.js @@ -1,5 +1,5 @@ -import c from '../../constants.js'; -import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import c from '../../../../constants.js'; +import isLockedOrWait from '../../../../utils/isLockedOrWait.js'; async function patchController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/post.js b/lib/modules/crud/controllers/internal/post.js similarity index 86% rename from lib/controllers/internal/post.js rename to lib/modules/crud/controllers/internal/post.js index 75a647c..16c0ba4 100644 --- a/lib/controllers/internal/post.js +++ b/lib/modules/crud/controllers/internal/post.js @@ -1,5 +1,5 @@ -import c from '../../constants.js'; -import isLockedOrWait from '../../utils/isLockedOrWait.js'; +import c from '../../../../constants.js'; +import isLockedOrWait from '../../../../utils/isLockedOrWait.js'; async function postController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/put.js b/lib/modules/crud/controllers/internal/put.js similarity index 80% rename from lib/controllers/internal/put.js rename to lib/modules/crud/controllers/internal/put.js index e99a45f..d26ec3e 100644 --- a/lib/controllers/internal/put.js +++ b/lib/modules/crud/controllers/internal/put.js @@ -1,6 +1,6 @@ -import c from '../../constants.js'; -import isLockedOrWait from '../../utils/isLockedOrWait.js'; -import validateRequestData from '../../utils/validateRequestData.js'; +import c from '../../../../constants.js'; +import isLockedOrWait from '../../../../utils/isLockedOrWait.js'; +import validateRequestData from '../../../../utils/validateRequestData.js'; async function putController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/modules/crud/index.js b/lib/modules/crud/index.js new file mode 100644 index 0000000..b8f96ae --- /dev/null +++ b/lib/modules/crud/index.js @@ -0,0 +1,83 @@ +import c from '../../constants.js'; + +import internalPost from './controllers/internal/post.js'; +import internalCount from './controllers/internal/count.js'; +import internalGet from './controllers/internal/get.js'; +import internalPut from './controllers/internal/put.js'; +import internalPatch from './controllers/internal/patch.js'; +import internalDelete from './controllers/internal/delete.js'; + +import externalPost from './controllers/external/post.js'; +import externalCount from './controllers/external/count.js'; +import externalGet from './controllers/external/get.js'; +import externalPut from './controllers/external/put.js'; +import externalPatch from './controllers/external/patch.js'; +import externalDelete from './controllers/external/delete.js'; + +function crudModule (context) { + // Internal + context.controllers.internal.add({ + command: c.POST, + conditions: [], + handler: internalPost + }); + context.controllers.internal.add({ + command: c.COUNT, + conditions: [], + handler: internalCount + }); + context.controllers.internal.add({ + command: c.GET, + conditions: [], + handler: internalGet + }); + context.controllers.internal.add({ + command: c.PUT, + conditions: [], + handler: internalPut + }); + context.controllers.internal.add({ + command: c.PATCH, + conditions: [], + handler: internalPatch + }); + context.controllers.internal.add({ + command: c.DELETE, + conditions: [], + handler: internalDelete + }); + + // External + context.controllers.external.add({ + command: c.POST, + conditions: [], + handler: context.controllers.rejectWhenUnhealthy(externalPost) + }); + context.controllers.external.add({ + command: c.COUNT, + conditions: [], + handler: context.controllers.rejectWhenUnhealthy(externalCount) + }); + context.controllers.external.add({ + command: c.GET, + conditions: [], + handler: context.controllers.rejectWhenUnhealthy(externalGet) + }); + context.controllers.external.add({ + command: c.PUT, + conditions: [], + handler: context.controllers.rejectWhenUnhealthy(externalPut) + }); + context.controllers.external.add({ + command: c.PATCH, + conditions: [], + handler: context.controllers.rejectWhenUnhealthy(externalPatch) + }); + context.controllers.external.add({ + command: c.DELETE, + conditions: [], + handler: context.controllers.rejectWhenUnhealthy(externalDelete) + }); +} + +export default crudModule; diff --git a/lib/controllers/external/notifyOff.js b/lib/modules/notify/controllers/external/notifyOff.js similarity index 92% rename from lib/controllers/external/notifyOff.js rename to lib/modules/notify/controllers/external/notifyOff.js index b368aa2..5a4a63e 100644 --- a/lib/controllers/external/notifyOff.js +++ b/lib/modules/notify/controllers/external/notifyOff.js @@ -1,6 +1,6 @@ // import logslot from 'logslot'; -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function externalNotifyOffController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/external/notifyOn.js b/lib/modules/notify/controllers/external/notifyOn.js similarity index 92% rename from lib/controllers/external/notifyOn.js rename to lib/modules/notify/controllers/external/notifyOn.js index 2eb88d6..a1c30f3 100644 --- a/lib/controllers/external/notifyOn.js +++ b/lib/modules/notify/controllers/external/notifyOn.js @@ -1,6 +1,6 @@ // import logslot from 'logslot'; -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function externalNotifyOnController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/notify.js b/lib/modules/notify/controllers/internal/notify.js similarity index 88% rename from lib/controllers/internal/notify.js rename to lib/modules/notify/controllers/internal/notify.js index 88d0c1d..1ae9cba 100644 --- a/lib/controllers/internal/notify.js +++ b/lib/modules/notify/controllers/internal/notify.js @@ -1,6 +1,6 @@ // import logslot from 'logslot'; -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function internalNotifyController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/notifyOff.js b/lib/modules/notify/controllers/internal/notifyOff.js similarity index 92% rename from lib/controllers/internal/notifyOff.js rename to lib/modules/notify/controllers/internal/notifyOff.js index f1461b8..ff9d5ed 100644 --- a/lib/controllers/internal/notifyOff.js +++ b/lib/modules/notify/controllers/internal/notifyOff.js @@ -1,6 +1,6 @@ // import logslot from 'logslot'; -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function internalNotifyOffController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/controllers/internal/notifyOn.js b/lib/modules/notify/controllers/internal/notifyOn.js similarity index 94% rename from lib/controllers/internal/notifyOn.js rename to lib/modules/notify/controllers/internal/notifyOn.js index 5e680fd..af23e45 100644 --- a/lib/controllers/internal/notifyOn.js +++ b/lib/modules/notify/controllers/internal/notifyOn.js @@ -1,6 +1,6 @@ // import logslot from 'logslot'; -import c from '../../constants.js'; +import c from '../../../../constants.js'; async function internalNotifyOnController ({ context, socket, request, response }) { const requestData = request.json(); diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index 5abb479..04fd0cf 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -18,7 +18,7 @@ function askOnAllNodes (context, command, data) { ); } -function notifyModule (context) { +async function notifyModule (context) { context.notify = { internalNotifiers: [], watching: {}, @@ -46,6 +46,35 @@ function notifyModule (context) { } }; + context.controllers.external.add({ + command: c.NOTIFY_OFF, + handler: context.controllers.rejectWhenUnhealthy( + (await import('./controllers/external/notifyOff.js')).default + ) + }); + + context.controllers.external.add({ + command: c.NOTIFY_ON, + handler: context.controllers.rejectWhenUnhealthy( + (await import('./controllers/external/notifyOn.js')).default + ) + }); + + context.controllers.internal.add({ + command: c.NOTIFY_OFF, + handler: (await import('./controllers/internal/notifyOff.js')).default + }); + + context.controllers.internal.add({ + command: c.NOTIFY_ON, + handler: (await import('./controllers/internal/notifyOn.js')).default + }); + + context.controllers.internal.add({ + command: c.NOTIFY, + handler: (await import('./controllers/internal/notify.js')).default + }); + context.info.generators.push(() => { return { internalNotifiers: context.notify.internalNotifiers diff --git a/test/features/conflicts.js b/test/features/conflicts.js index 72490a6..755f1d4 100644 --- a/test/features/conflicts.js +++ b/test/features/conflicts.js @@ -61,7 +61,6 @@ test('conflicts - post failure creates conflict', async t => { await sleep(500); for (const server of servers) { - console.log(server); t.equal(server.thisNode.status, 'healthy', 'server status is healthy'); } From 98228a0f1af5490f8af7fcbc57021b556988d0ec Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Thu, 30 Sep 2021 10:35:49 +0100 Subject: [PATCH 44/73] Implement conflict cleanup when all nodes have resolved conflict --- lib/index.js | 10 +-- lib/modules/conflicts/index.js | 100 ++++++++++++++++++++++---- lib/utils/onlyOnce.js | 14 ++++ package-lock.json | 116 +++++++++++++++--------------- test/features/conflicts.js | 62 +++++++++++++--- test/helpers/createTestServers.js | 8 ++- 6 files changed, 222 insertions(+), 88 deletions(-) create mode 100644 lib/utils/onlyOnce.js diff --git a/lib/index.js b/lib/index.js index dc99bfe..5496013 100644 --- a/lib/index.js +++ b/lib/index.js @@ -49,10 +49,12 @@ async function canhazdb (rawOptions) { { closed: false, clients: [], - settings: { - syncInterval: 250, + settings: Object.assign({ + infoInterval: 250, + conflictSyncInterval: 100, + conflictCleanupInterval: 30000, replicas: 3 - }, + }, rawOptions.settings), info: { generators: [] }, @@ -132,7 +134,7 @@ async function canhazdb (rawOptions) { }) ); - context.syncNodesInfoTimer = setTimeout(syncNodesInfo, context.settings.syncInterval); + context.syncNodesInfoTimer = setTimeout(syncNodesInfo, context.settings.infoInterval); } syncNodesInfo(); diff --git a/lib/modules/conflicts/index.js b/lib/modules/conflicts/index.js index 8593c86..55ef672 100644 --- a/lib/modules/conflicts/index.js +++ b/lib/modules/conflicts/index.js @@ -1,20 +1,8 @@ import logslot from 'logslot'; import c from '../../constants.js'; +import onlyOnce from '../../utils/onlyOnce.js'; const log = logslot('canhazdb.conflicts'); -function onlyOnce (fn) { - let isRunning = false; - - return async (...args) => { - if (isRunning) { - return; - } - isRunning = true; - await fn(...args); - isRunning = false; - }; -} - async function resolveConflict (context, conflict) { try { const result = await context.thisNode.client @@ -63,6 +51,43 @@ const syncServerHealth = onlyOnce( } ); +async function isConflictResolvedOnAllNodes (context, conflict) { + const nodeResults = await context.sendToAllNodes(context, c.CONFLICT_GET, { + [c.INTERNAL]: true, + [c.RESOURCE_ID]: conflict.id + }); + + const allResolved = nodeResults.every(response => { + if (response.command !== c.STATUS_OK) { + return false; + } + + const result = response.json(); + return result[c.DATA].resolved; + }); + + return allResolved; +} + +const cleanupResolvedConflicts = onlyOnce( + async function cleanupResolvedConflicts (context) { + const resolvedConflicts = context.conflicts.items + .filter(conflict => conflict.resolved && conflict.nodeName === context.thisNode.name); + + await Promise.all( + resolvedConflicts.map(async conflict => { + const fullyResolved = await isConflictResolvedOnAllNodes(context, conflict); + if (fullyResolved) { + context.sendToAllNodes(context, c.CONFLICT_CLEANUP, { + [c.INTERNAL]: true, + [c.DATA]: conflict + }); + } + }) + ); + } +); + function upsertConflict (context, data) { const existing = context.conflicts.items .find(item => item.id === data.id); @@ -96,7 +121,41 @@ async function conflictResolveHandler ({ context, socket, request, response }) { response.reply(c.STATUS_OK); } +async function conflictCleanupHandler ({ context, socket, request, response }) { + const requestData = request.json(); + const data = requestData[c.DATA]; + + const existingIndex = context.conflicts.items + .findIndex(item => item.id === data.id); + + if (existingIndex === -1) { + return; + } + + context.conflicts.items.splice(existingIndex, 1); + + response.reply(c.STATUS_OK); +} + async function conflictGetHandler ({ context, socket, request, response }) { + const requestData = request.json(); + const resourceId = requestData[c.RESOURCE_ID]; + + if (resourceId) { + const conflict = context.conflicts.items.find(item => item.id === resourceId); + + if (!conflict) { + response.reply(c.STATUS_NOT_FOUND); + return; + } + + response.reply(c.STATUS_OK, { + [c.DATA]: conflict + }); + + return; + } + response.reply(c.STATUS_OK, { [c.DATA]: context.conflicts.items }); @@ -122,6 +181,11 @@ function conflictsModule (context) { handler: conflictResolveHandler }); + context.controllers.internal.add({ + command: c.CONFLICT_CLEANUP, + handler: conflictCleanupHandler + }); + context.on('node.connected', async function (node) { const conflicts = await node.client.send(c.CONFLICT_GET, { [c.INTERNAL]: true @@ -144,11 +208,19 @@ function conflictsModule (context) { return; } syncServerHealth(context); - }, 100); + }, context.settings.conflictSyncInterval); + + const cleanupTimer = setInterval(() => { + if (!context?.thisNode?.client) { + return; + } + cleanupResolvedConflicts(context); + }, context.settings.conflictCleanupInterval); return { cleanup: () => { clearInterval(syncTimer); + clearInterval(cleanupTimer); } }; } diff --git a/lib/utils/onlyOnce.js b/lib/utils/onlyOnce.js new file mode 100644 index 0000000..ff5c4d8 --- /dev/null +++ b/lib/utils/onlyOnce.js @@ -0,0 +1,14 @@ +function onlyOnce (fn) { + let isRunning = false; + + return async (...args) => { + if (isRunning) { + return; + } + isRunning = true; + await fn(...args); + isRunning = false; + }; +} + +export default onlyOnce; diff --git a/package-lock.json b/package-lock.json index 7ddc7b5..d57bec9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -559,9 +559,9 @@ } }, "node_modules/es-abstract": { - "version": "1.18.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", - "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", + "version": "1.18.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.7.tgz", + "integrity": "sha512-uFG1gyVX91tZIiDWNmPsL8XNpiCk/6tkB7MZphoSJflS4w+KgWyQ2gjCVDnsPxFAo9WjRXG3eqONNYdfbJjAtw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", @@ -1303,9 +1303,9 @@ } }, "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -1535,9 +1535,9 @@ } }, "node_modules/is-core-module": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", - "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", + "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -1579,9 +1579,9 @@ } }, "node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { "is-extglob": "^2.1.1" @@ -1669,9 +1669,9 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "node_modules/istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", + "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==", "engines": { "node": ">=8" } @@ -2764,9 +2764,9 @@ } }, "node_modules/signal-exit": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz", - "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==" + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" }, "node_modules/slice-ansi": { "version": "4.0.0", @@ -2861,13 +2861,13 @@ } }, "node_modules/string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" }, "engines": { "node": ">=8" @@ -2919,11 +2919,11 @@ } }, "node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" @@ -3102,9 +3102,9 @@ "dev": true }, "node_modules/v8-to-istanbul": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", - "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz", + "integrity": "sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==", "dependencies": { "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0", @@ -3670,9 +3670,9 @@ } }, "es-abstract": { - "version": "1.18.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", - "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", + "version": "1.18.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.7.tgz", + "integrity": "sha512-uFG1gyVX91tZIiDWNmPsL8XNpiCk/6tkB7MZphoSJflS4w+KgWyQ2gjCVDnsPxFAo9WjRXG3eqONNYdfbJjAtw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4216,9 +4216,9 @@ } }, "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4382,9 +4382,9 @@ "dev": true }, "is-core-module": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", - "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", + "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", "dev": true, "requires": { "has": "^1.0.3" @@ -4411,9 +4411,9 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -4468,9 +4468,9 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", + "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==" }, "istanbul-lib-report": { "version": "3.0.0", @@ -5274,9 +5274,9 @@ } }, "signal-exit": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz", - "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==" + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" }, "slice-ansi": { "version": "4.0.0", @@ -5345,13 +5345,13 @@ } }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "string.prototype.matchall": { @@ -5391,11 +5391,11 @@ } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } }, "strip-bom": { @@ -5536,9 +5536,9 @@ "dev": true }, "v8-to-istanbul": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz", - "integrity": "sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz", + "integrity": "sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==", "requires": { "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0", diff --git a/test/features/conflicts.js b/test/features/conflicts.js index 755f1d4..7424c0e 100644 --- a/test/features/conflicts.js +++ b/test/features/conflicts.js @@ -1,3 +1,4 @@ +import assert from 'assert'; import c from '../../lib/constants.js'; import createTestServers from '../helpers/createTestServers.js'; import tcpocket from 'tcpocket'; @@ -5,15 +6,7 @@ import test from 'basictap'; const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); -test('conflicts - post failure creates conflict', async t => { - t.plan(7); - t.timeout(3000); - - const servers = await createTestServers(2); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); - - // Let us fake an error from one of the servers +async function createConflict (servers, client) { let disablePost = true; servers[1].controllers.internal.add({ @@ -32,7 +25,7 @@ test('conflicts - post failure creates conflict', async t => { } }); - t.equal(result.command, c.STATUS_CREATED, 'post should return STATUS_CREATED'); + assert.equal(result.command, c.STATUS_CREATED); // Test all servers receive the conflict await sleep(500); @@ -42,11 +35,22 @@ test('conflicts - post failure creates conflict', async t => { return conflict.document && conflict.document.foo === 'bar'; }); - t.ok(foundConflict, 'found conflict'); + assert.ok(foundConflict); } // Disable our fake error and test all servers receive the resolution disablePost = false; +} + +test('conflicts - post failure creates conflict', async t => { + t.plan(4); + t.timeout(3000); + + const servers = await createTestServers(2); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createConflict(servers, client); await sleep(500); @@ -70,6 +74,42 @@ test('conflicts - post failure creates conflict', async t => { ]); }); +test('conflicts - cleanup resolved', async t => { + t.plan(4); + t.timeout(3000); + + const servers = await createTestServers(2); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await createConflict(servers, client); + + await sleep(500); + + for (const server of servers) { + const foundConflict = server.conflicts.items.find(conflict => { + return !conflict.resolved && conflict.document && conflict.document.foo === 'bar'; + }); + + t.equal(foundConflict, undefined, 'conflict not found'); + } + + await sleep(1500); + + for (const server of servers) { + const foundConflict = server.conflicts.items.find(conflict => { + return conflict.document && conflict.document.foo === 'bar'; + }); + + t.equal(foundConflict, undefined, 'conflict should not be found'); + } + + await Promise.all([ + client.close(), + servers.close() + ]); +}); + test('conflicts - post to offline node', async t => { t.plan(9); t.timeout(5000); diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index 5114ca6..51b786a 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -54,7 +54,13 @@ async function createTestServers (count, options = {}) { host: 'localhost', port: port, join, - tls + tls, + settings: { + infoInterval: 250, + conflictSyncInterval: 100, + conflictCleanupInterval: 1000, + replicas: 3 + } }); server.recreate = create; From 863832e080c8485ee5e69f29fdb2b19d1a6f5957 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Thu, 30 Sep 2021 21:13:33 +0100 Subject: [PATCH 45/73] Add notifys and locks system collections --- .../controllers/createControllerStore.js | 14 ++++-- .../external/systemLocksController.js | 14 ++++++ lib/modules/lock/index.js | 13 ++++++ lib/modules/notify/index.js | 13 ++++++ lib/modules/notify/systemNotifysController.js | 14 ++++++ package-lock.json | 18 ++++---- package.json | 2 +- test/features/conflicts.js | 1 + test/features/lock.js | 45 +++++++++++++++---- test/features/notify.js | 27 +++++++++++ 10 files changed, 139 insertions(+), 22 deletions(-) create mode 100644 lib/modules/lock/controllers/external/systemLocksController.js create mode 100644 lib/modules/notify/systemNotifysController.js diff --git a/lib/modules/controllers/createControllerStore.js b/lib/modules/controllers/createControllerStore.js index b1da460..d9b51db 100644 --- a/lib/modules/controllers/createControllerStore.js +++ b/lib/modules/controllers/createControllerStore.js @@ -1,12 +1,16 @@ function createControllerStore () { const data = {}; - function add ({ command, index, conditions, handler }) { + function add ({ command, priority = 0, conditions, handler }) { if (!data[command]) { data[command] = []; } - data[command].splice(index || 0, 0, { conditions, handler }); + data[command].push({ priority, conditions, handler }); + + data[command] = data[command].sort((a, b) => { + return a.priority < b.priority ? 1 : -1; + }); } function find (request) { @@ -14,16 +18,18 @@ function createControllerStore () { return []; } - return data[request.command].filter(controller => { + const results = data[request.command].filter(controller => { if (!controller.conditions) { return true; } const conditionResults = controller.conditions - .map(condition => condition({ request })); + .map(condition => condition(request)); return conditionResults.every(result => result === true); }); + + return results; } return { diff --git a/lib/modules/lock/controllers/external/systemLocksController.js b/lib/modules/lock/controllers/external/systemLocksController.js new file mode 100644 index 0000000..0b1e005 --- /dev/null +++ b/lib/modules/lock/controllers/external/systemLocksController.js @@ -0,0 +1,14 @@ +import c from '../../../../constants.js'; + +async function systemLocksController ({ context, socket, request, response }) { + response.reply(c.STATUS_OK, { + [c.DATA]: context.locks.state.locks.map(lock => { + return { + id: lock[0], + keys: lock[1] + }; + }) + }); +} + +export default systemLocksController; diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index 1e8c94a..030b4dd 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -1,4 +1,5 @@ import logslot from 'logslot'; +import systemLocksController from './controllers/external/systemLocksController.js'; import externalLockController from './controllers/external/lock.js'; import externalUnlockController from './controllers/external/unlock.js'; import internalLockController from './controllers/internal/lock.js'; @@ -27,6 +28,18 @@ function lockModule (context) { handler: internalUnlockController }); + context.controllers.external.add({ + command: c.GET, + priority: 10, + conditions: [ + (request) => { + const data = request.json(); + return data[c.COLLECTION_ID] === 'system.locks'; + } + ], + handler: systemLocksController + }); + context.on('client.closed', socket => { socket.state.locks.forEach(lockId => { context.sendToAllNodes(context, c.UNLOCK, { diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index 04fd0cf..bf95c83 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -1,6 +1,7 @@ import logslot from 'logslot'; import c from '../../constants.js'; +import systemNotifysController from './systemNotifysController.js'; const log = logslot('canhazdb.notify'); @@ -46,6 +47,18 @@ async function notifyModule (context) { } }; + context.controllers.external.add({ + command: c.GET, + priority: 10, + conditions: [ + (request) => { + const data = request.json(); + return data[c.COLLECTION_ID] === 'system.notifys'; + } + ], + handler: systemNotifysController + }); + context.controllers.external.add({ command: c.NOTIFY_OFF, handler: context.controllers.rejectWhenUnhealthy( diff --git a/lib/modules/notify/systemNotifysController.js b/lib/modules/notify/systemNotifysController.js new file mode 100644 index 0000000..017f05b --- /dev/null +++ b/lib/modules/notify/systemNotifysController.js @@ -0,0 +1,14 @@ +import c from '../../constants.js'; + +async function systemCollectionController ({ context, socket, request, response }) { + response.reply(c.STATUS_OK, { + [c.DATA]: Object.keys(context.notify.watching).reduce((result, notifyPath) => { + result.push({ + notifyPath: notifyPath + }); + return result; + }, []) + }); +} + +export default systemCollectionController; diff --git a/package-lock.json b/package-lock.json index d57bec9..48ac174 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "chalk": "^4.1.2", "debarrel": "^1.0.2", - "lockbase": "^1.2.2", + "lockbase": "^1.3.0", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", @@ -1806,11 +1806,11 @@ } }, "node_modules/lockbase": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz", - "integrity": "sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.0.tgz", + "integrity": "sha512-ywriWUc8UOORn25GM60ZPuBbmz4ttQOWoHOa/mHY5qltoONGb2tJ1EuZlmZGoJ6eUsWAm3Z9W2f1p4L7AKsslA==", "dependencies": { - "c8": "^7.8.0", + "c8": "^7.9.0", "uuid": "^8.3.2" } }, @@ -4575,11 +4575,11 @@ } }, "lockbase": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.2.2.tgz", - "integrity": "sha512-U3uGsQ+VXelvMNwtlTCWkRiQuKVxvOAgspkZNN8C8nEc9OvUq4tdK3Y+8PUKrpRKsePwna8Wdpij84lc4jV3pg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.0.tgz", + "integrity": "sha512-ywriWUc8UOORn25GM60ZPuBbmz4ttQOWoHOa/mHY5qltoONGb2tJ1EuZlmZGoJ6eUsWAm3Z9W2f1p4L7AKsslA==", "requires": { - "c8": "^7.8.0", + "c8": "^7.9.0", "uuid": "^8.3.2" } }, diff --git a/package.json b/package.json index a478f79..d877de6 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "dependencies": { "chalk": "^4.1.2", "debarrel": "^1.0.2", - "lockbase": "^1.2.2", + "lockbase": "^1.3.0", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", diff --git a/test/features/conflicts.js b/test/features/conflicts.js index 7424c0e..aaadb2e 100644 --- a/test/features/conflicts.js +++ b/test/features/conflicts.js @@ -11,6 +11,7 @@ async function createConflict (servers, client) { servers[1].controllers.internal.add({ command: c.POST, + priority: 10, conditions: [() => disablePost], handler: async () => { throw new Error('some error, preventing post'); diff --git a/test/features/lock.js b/test/features/lock.js index 6cdf39e..a6b2d6a 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -4,7 +4,7 @@ import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; -test('lock: and post some data (success)', async t => { +test('lock - and post some data (success)', async t => { t.plan(5); const servers = await createTestServers(1); @@ -49,7 +49,7 @@ test('lock: and post some data (success)', async t => { t.equal(getRequest.command, c.STATUS_OK); }); -test('unlock: delete lock with incorrect id', async t => { +test('lock - delete lock with incorrect id', async t => { t.plan(1); const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); @@ -65,7 +65,7 @@ test('unlock: delete lock with incorrect id', async t => { await servers.close(); }); -test('lock: multiple happen in order', async t => { +test('lock - multiple happen in order', async t => { t.plan(6); const servers = await createTestServers(1); @@ -129,7 +129,7 @@ test('lock: multiple happen in order', async t => { t.ok(secondFinished, 'second lock ran'); }); -test('lock: and post some data (conflict + fail)', async t => { +test('lock - and post some data (conflict + fail)', async t => { t.plan(2); const servers = await createTestServers(1); @@ -160,7 +160,7 @@ test('lock: and post some data (conflict + fail)', async t => { t.equal(postRequest.command, c.STATUS_SERVER_ERROR); }); -test('lock: and post some data (conflict + wait)', async t => { +test('lock - and post some data (conflict + wait)', async t => { t.plan(5); const servers = await createTestServers(1); @@ -205,7 +205,7 @@ test('lock: and post some data (conflict + wait)', async t => { t.equal(unlockRequest.command, c.STATUS_OK); }); -test('lock: all methods lock', async t => { +test('lock - all methods lock', async t => { t.plan(4); const servers = await createTestServers(1); @@ -265,7 +265,7 @@ test('lock: all methods lock', async t => { unlocked = true; }); -test('lock: and wait but client closes', async t => { +test('lock - and wait but client closes', async t => { t.plan(1); const servers = await createTestServers(1); @@ -294,7 +294,7 @@ test('lock: and wait but client closes', async t => { }, 200); }); -test('lock: and wait but node closes', async t => { +test('lock - and wait but node closes', async t => { t.plan(1); const servers = await createTestServers(1); @@ -320,3 +320,32 @@ test('lock: and wait but node closes', async t => { servers.close(); }, 500); }); + +test('lock - system collection (system.locks)', async t => { + t.plan(5); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const lockRequest = await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + t.equal(lockRequest.command, c.STATUS_OK, 'lockRequest has ok status'); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'system.locks' + }); + + t.equal(getResponse.command, c.STATUS_OK, 'getResponse has ok status'); + + const locks = getResponse.json()[c.DATA]; + + t.equal(locks.length, 1, 'had 1 lock'); + t.ok(locks[0].id, 'first lock had id'); + t.deepEqual(locks[0].keys, ['tests']); + + await client.close(); + await servers.close(); +}); diff --git a/test/features/notify.js b/test/features/notify.js index 85bb3bd..a67a689 100644 --- a/test/features/notify.js +++ b/test/features/notify.js @@ -365,3 +365,30 @@ test('notify - reconnections', async t => { server3.close() ]); }); + +test('notify - system collection (system.notifys)', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const notifyResponse = await client.send(c.NOTIFY_ON, { + [c.NOTIFY_PATH]: '.*:/tests/.*' + }); + + t.equal(notifyResponse.command, c.STATUS_OK, 'has status'); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'system.notifys' + }); + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + + t.deepEqual(getResponse.json()[c.DATA], [ + { notifyPath: '.*:/tests/.*' } + ]); + + await client.close(); + await servers.close(); +}); From 1e37e447bbc48f0f6675d177c85bf5fc30de8308 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Thu, 30 Sep 2021 21:34:25 +0100 Subject: [PATCH 46/73] Implemented system.nodes collections --- lib/modules/collections/index.js | 13 ++++++++++ .../collections/systemNodesController.js | 14 ++++++++++ test/features/basic.js | 26 +++++++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 lib/modules/collections/systemNodesController.js diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js index 34bfe05..fc9f4c0 100644 --- a/lib/modules/collections/index.js +++ b/lib/modules/collections/index.js @@ -1,5 +1,6 @@ import logslot from 'logslot'; import documentCountCollector from './documentCountCollector.js'; +import systemNodesController from './systemNodesController.js'; import c from '../../constants.js'; const log = logslot('canhazdb.collections'); @@ -39,6 +40,18 @@ async function updateCollectionByAmount (context, collectionId, cachedItem) { } function collectionsModule (context) { + context.controllers.external.add({ + command: c.GET, + priority: 10, + conditions: [ + (request) => { + const data = request.json(); + return data[c.COLLECTION_ID] === 'system.nodes'; + } + ], + handler: systemNodesController + }); + const collector = documentCountCollector(async function (cache) { if (context.closed) { return; diff --git a/lib/modules/collections/systemNodesController.js b/lib/modules/collections/systemNodesController.js new file mode 100644 index 0000000..f4020ad --- /dev/null +++ b/lib/modules/collections/systemNodesController.js @@ -0,0 +1,14 @@ +import c from '../../constants.js'; + +async function systemNodesController ({ context, socket, request, response }) { + response.reply(c.STATUS_OK, { + [c.DATA]: context.nodes.map(node => { + return { + ...node, + client: undefined + }; + }) + }); +} + +export default systemNodesController; diff --git a/test/features/basic.js b/test/features/basic.js index eb14162..4efc309 100644 --- a/test/features/basic.js +++ b/test/features/basic.js @@ -275,3 +275,29 @@ test('get - with order (ascending)', async t => { await client.close(); await servers.close(); }); + +test('system.nodes', async t => { + t.plan(7); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + const getResponse = await client.send(c.GET, { + [c.COLLECTION_ID]: 'system.nodes' + }); + + const nodes = getResponse.json()[c.DATA]; + + t.equal(getResponse.command, c.STATUS_OK, 'has status'); + t.equal(nodes.length, 1, 'returned 1'); + + t.equal(nodes[0].connected, true, 'connected was correct'); + t.equal(nodes[0].online, true, 'online was correct'); + t.equal(nodes[0].host, 'localhost', 'host was correct'); + t.ok(nodes[0].port, 'port existed'); + t.equal(nodes[0].status, 'healthy', 'status was correct'); + + await client.close(); + await servers.close(); +}); From b3fae203889d6e00e0e49329dffd3641ab7ad481 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 1 Oct 2021 21:28:55 +0100 Subject: [PATCH 47/73] #61 - Implement http server with get document and collection --- lib/cli.js | 15 ++- lib/index.js | 4 +- lib/modules/http/index.js | 87 +++++++++++++++ package-lock.json | 169 ++++++++++++++++++++++++++---- package.json | 4 +- test/features/http.js | 50 +++++++++ test/helpers/createTestServers.js | 3 + test/helpers/httpRequest.js | 14 +++ test/index.js | 1 + web/index.html | 12 +++ 10 files changed, 329 insertions(+), 30 deletions(-) create mode 100644 lib/modules/http/index.js create mode 100644 test/features/http.js create mode 100644 test/helpers/httpRequest.js create mode 100644 web/index.html diff --git a/lib/cli.js b/lib/cli.js index e81ed52..f2e1159 100644 --- a/lib/cli.js +++ b/lib/cli.js @@ -23,16 +23,19 @@ https://canhazdb.com The following commands and arguments are available when starting Bitabase Arguments: + --tls-ca required The certificate authority to use for the certs + --tls-cert required The public certificate for the server + --tls-key required The private key for the server + --host optional The host to bind the server on (default: localhost) --port optional The port to bind the server on (default: 7060) + --http-host optional The host to bind the http server on (default: off) + --http-port optional The port to bind the http server on (default: off) + --join optional Join another canhazdb node --join-from-dns optional Lookup other canhazdb nodes to join from a dns lookup - --tls-ca optional The certificate authority to use for the certs - --tls-cert optional The public certificate for the server - --tls-key optional The private key for the server - --node-name optional Unique name for the node in the cluster (default: $HOSTNAME) --data-dir optional The port to bind the https query server on (default: ./canhazdata) @@ -68,7 +71,9 @@ async function main () { tlsCert: argv['tls-cert'], tlsKey: argv['tls-key'], join: argv.join, - joinFromDns: argv['join-from-dns'] + joinFromDns: argv['join-from-dns'], + httpHost: argv['http-host'], + httpPort: argv['http-port'] }).catch(error => { log.error(error); process.exit(1); diff --git a/lib/index.js b/lib/index.js index 5496013..2c6299d 100644 --- a/lib/index.js +++ b/lib/index.js @@ -14,6 +14,7 @@ import collectionsModule from './modules/collections/index.js'; import conflictsModule from './modules/conflicts/index.js'; import lockModule from './modules/lock/index.js'; import crudModule from './modules/crud/index.js'; +import httpModule from './modules/http/index.js'; import c from './constants.js'; @@ -70,7 +71,8 @@ async function canhazdb (rawOptions) { collectionsModule(context), conflictsModule(context), lockModule(context), - crudModule(context) + crudModule(context), + httpModule(context) ]; context.driver = await driver(context); diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js new file mode 100644 index 0000000..8e2508c --- /dev/null +++ b/lib/modules/http/index.js @@ -0,0 +1,87 @@ +import chalk from 'chalk'; +import http2 from 'http2'; +import servatron from 'servatron/http.js'; +import logslot from 'logslot'; +import c from '../../constants.js'; + +const log = logslot('canhazdb.http'); + +const staticHandler = servatron({ + directory: './web', + spa: true, + spaIndex: 'index.html' +}); + +async function handleGetDocument (context, request, response, { collectionId, documentId }) { + const getResult = await context.thisNode.client.send(c.GET, { + [c.COLLECTION_ID]: collectionId, + [c.QUERY]: { + id: documentId + } + }); + + const data = getResult.json()[c.DATA]; + + response.end(JSON.stringify(data[0], null, 2)); +} + +async function handleGetCollection (context, request, response, { collectionId }) { + const getResult = await context.thisNode.client.send(c.GET, { + [c.COLLECTION_ID]: collectionId + }); + + const data = getResult.json()[c.DATA]; + + response.end(JSON.stringify(data, null, 2)); +} + +function httpModule (context) { + const server = http2.createSecureServer({ + ...context.options.tls, + allowHTTP1: true + }, function (request, response) { + log.info('request received'); + const path = request.url || request.headers[':path']; + + if (path.startsWith('/api')) { + const parts = path.split('/'); + + if (parts.length === 3) { + handleGetCollection(context, request, response, { + collectionId: parts[2] + }); + return; + } + + if (parts.length === 4) { + handleGetDocument(context, request, response, { + collectionId: parts[2], + documentId: parts[3] + }); + return; + } + + response.end('api - not found'); + + return; + } + + staticHandler(request, response); + }); + server.on('error', (error) => console.error(error)); + + server.on('listening', () => { + log.info('web server listening on ' + server.address().port); + }); + + server.listen(context.options.httpPort, context.options.httpHost); + + return { + cleanup: () => { + log.info('web server closed'); + server.close(); + } + }; +} + +export default httpModule; diff --git a/package-lock.json b/package-lock.json index 48ac174..8797303 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,16 +11,18 @@ "dependencies": { "chalk": "^4.1.2", "debarrel": "^1.0.2", - "lockbase": "^1.3.0", + "lockbase": "^1.3.1", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", + "servatron": "^2.2.3", "server-destroy": "^1.0.1", "tcpocket": "^7.4.2", "uuid": "^8.3.2" }, "devDependencies": { + "axios": "^0.22.0", "basictap": "^2.2.1", "c8": "^7.9.0", "eslint": "^7.32.0", @@ -335,6 +337,15 @@ "node": ">=8" } }, + "node_modules/axios": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.22.0.tgz", + "integrity": "sha512-Z0U3uhqQeg1oNcihswf4ZD57O3NrR1+ZXhxaROaWpDmsDTx7T2HNBV2ulBtie2hwJptu8UvgnJoK+BIqdzh/1w==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.14.4" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -559,9 +570,9 @@ } }, "node_modules/es-abstract": { - "version": "1.18.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.7.tgz", - "integrity": "sha512-uFG1gyVX91tZIiDWNmPsL8XNpiCk/6tkB7MZphoSJflS4w+KgWyQ2gjCVDnsPxFAo9WjRXG3eqONNYdfbJjAtw==", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.0.tgz", + "integrity": "sha512-oWPrF+7P1nGv/rw9oIInwdkmI1qediEJSvVfHFryBd8mWllCKB5tke3aKyf51J6chgyKmi6mODqdnin2yb88Nw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", @@ -575,7 +586,9 @@ "is-callable": "^1.2.4", "is-negative-zero": "^2.0.1", "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", "is-string": "^1.0.7", + "is-weakref": "^1.0.1", "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", @@ -1223,6 +1236,26 @@ "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, + "node_modules/follow-redirects": { + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz", + "integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, "node_modules/foreground-child": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", @@ -1633,6 +1666,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-string": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", @@ -1663,6 +1705,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-weakref": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", + "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -1806,9 +1860,9 @@ } }, "node_modules/lockbase": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.0.tgz", - "integrity": "sha512-ywriWUc8UOORn25GM60ZPuBbmz4ttQOWoHOa/mHY5qltoONGb2tJ1EuZlmZGoJ6eUsWAm3Z9W2f1p4L7AKsslA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.1.tgz", + "integrity": "sha512-JQHXInq6Jd1r/7IsBNwhyjWwoQrnYBSCKWcppfOMIvOo3UmNyx7BfSw+SSU8igjZgZLVNFV/lXQrBnuTyMDWRw==", "dependencies": { "c8": "^7.9.0", "uuid": "^8.3.2" @@ -1885,6 +1939,17 @@ "semver": "bin/semver.js" } }, + "node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -2725,6 +2790,18 @@ "node": ">=10" } }, + "node_modules/servatron": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/servatron/-/servatron-2.2.3.tgz", + "integrity": "sha512-0jc/MBGQ4O0isO313bBy1DoRKfCoWHa2mTsJ52rSxfK9y5reDAJL4i7Dpd0rjfNw9d4fwLXnnEvj3bSnEJnOWg==", + "dependencies": { + "mime": "^2.5.2", + "minimist": "^1.2.5" + }, + "bin": { + "servatron": "bin/cli.js" + } + }, "node_modules/server-destroy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", @@ -2962,17 +3039,17 @@ } }, "node_modules/table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", + "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", "dev": true, "dependencies": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" }, "engines": { "node": ">=10.0.0" @@ -3487,6 +3564,15 @@ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, + "axios": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.22.0.tgz", + "integrity": "sha512-Z0U3uhqQeg1oNcihswf4ZD57O3NrR1+ZXhxaROaWpDmsDTx7T2HNBV2ulBtie2hwJptu8UvgnJoK+BIqdzh/1w==", + "dev": true, + "requires": { + "follow-redirects": "^1.14.4" + } + }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -3670,9 +3756,9 @@ } }, "es-abstract": { - "version": "1.18.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.7.tgz", - "integrity": "sha512-uFG1gyVX91tZIiDWNmPsL8XNpiCk/6tkB7MZphoSJflS4w+KgWyQ2gjCVDnsPxFAo9WjRXG3eqONNYdfbJjAtw==", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.0.tgz", + "integrity": "sha512-oWPrF+7P1nGv/rw9oIInwdkmI1qediEJSvVfHFryBd8mWllCKB5tke3aKyf51J6chgyKmi6mODqdnin2yb88Nw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3686,7 +3772,9 @@ "is-callable": "^1.2.4", "is-negative-zero": "^2.0.1", "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", "is-string": "^1.0.7", + "is-weakref": "^1.0.1", "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", @@ -4157,6 +4245,12 @@ "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, + "follow-redirects": { + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz", + "integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g==", + "dev": true + }, "foreground-child": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", @@ -4444,6 +4538,12 @@ "has-tostringtag": "^1.0.0" } }, + "is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "dev": true + }, "is-string": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", @@ -4462,6 +4562,15 @@ "has-symbols": "^1.0.2" } }, + "is-weakref": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", + "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0" + } + }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -4575,9 +4684,9 @@ } }, "lockbase": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.0.tgz", - "integrity": "sha512-ywriWUc8UOORn25GM60ZPuBbmz4ttQOWoHOa/mHY5qltoONGb2tJ1EuZlmZGoJ6eUsWAm3Z9W2f1p4L7AKsslA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.1.tgz", + "integrity": "sha512-JQHXInq6Jd1r/7IsBNwhyjWwoQrnYBSCKWcppfOMIvOo3UmNyx7BfSw+SSU8igjZgZLVNFV/lXQrBnuTyMDWRw==", "requires": { "c8": "^7.9.0", "uuid": "^8.3.2" @@ -4641,6 +4750,11 @@ } } }, + "mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -5244,6 +5358,15 @@ "lru-cache": "^6.0.0" } }, + "servatron": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/servatron/-/servatron-2.2.3.tgz", + "integrity": "sha512-0jc/MBGQ4O0isO313bBy1DoRKfCoWHa2mTsJ52rSxfK9y5reDAJL4i7Dpd0rjfNw9d4fwLXnnEvj3bSnEJnOWg==", + "requires": { + "mime": "^2.5.2", + "minimist": "^1.2.5" + } + }, "server-destroy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", @@ -5419,17 +5542,17 @@ } }, "table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", + "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", "dev": true, "requires": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" }, "dependencies": { "ajv": { diff --git a/package.json b/package.json index d877de6..59c79db 100644 --- a/package.json +++ b/package.json @@ -17,16 +17,18 @@ "dependencies": { "chalk": "^4.1.2", "debarrel": "^1.0.2", - "lockbase": "^1.3.0", + "lockbase": "^1.3.1", "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", "node-ejdb-lite": "^3.4.4", + "servatron": "^2.2.3", "server-destroy": "^1.0.1", "tcpocket": "^7.4.2", "uuid": "^8.3.2" }, "devDependencies": { + "axios": "^0.22.0", "basictap": "^2.2.1", "c8": "^7.9.0", "eslint": "^7.32.0", diff --git a/test/features/http.js b/test/features/http.js new file mode 100644 index 0000000..33bc472 --- /dev/null +++ b/test/features/http.js @@ -0,0 +1,50 @@ +import test from 'basictap'; +import tcpocket from 'tcpocket'; +import createTestServers from '../helpers/createTestServers.js'; +import httpRequest from '../helpers/httpRequest.js'; +import createExampleDocuments from '../helpers/createExampleDocuments.js'; +import c from '../../lib/constants.js'; + +test('http - get collection', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + const domain = `${servers[0].options.httpHost}:${servers[0].options.httpPort}`; + + await createExampleDocuments(client, 3); + + const request = await httpRequest(`https://${domain}/api/tests`); + const documents = request.data.sort((a, b) => { + return a.foo > b.foo ? 1 : -1; + }); + + t.equal(request.status, 200); + t.equal(documents.length, 3); + t.equal(documents[0].foo, 'bar1'); + + await client.close(); + await servers.close(); +}); + +test('http - get document', async t => { + t.plan(3); + + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + const domain = `${servers[0].options.httpHost}:${servers[0].options.httpPort}`; + + const createResults = await createExampleDocuments(client, 1); + const document = createResults[0].json()[c.DATA]; + + const request = await httpRequest(`https://${domain}/api/tests/${document.id}`); + + t.equal(request.status, 200); + t.ok(request.data.id, 'has an id'); + t.equal(request.data.foo, 'bar1'); + + await client.close(); + await servers.close(); +}); diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index 51b786a..e2ac0d1 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -45,6 +45,7 @@ async function createTestServers (count, options = {}) { .fill(null) .map(async (_, index) => { const port = getNewPort(); + const httpPort = getNewPort(); const nodeName = uuid(); const create = async () => { @@ -53,6 +54,8 @@ async function createTestServers (count, options = {}) { nodeName: nodeName, host: 'localhost', port: port, + httpHost: 'localhost', + httpPort: httpPort, join, tls, settings: { diff --git a/test/helpers/httpRequest.js b/test/helpers/httpRequest.js new file mode 100644 index 0000000..40be678 --- /dev/null +++ b/test/helpers/httpRequest.js @@ -0,0 +1,14 @@ +import fs from 'fs'; +import https from 'https'; +import axios from 'axios'; + +const httpsAgent = new https.Agent({ + key: fs.readFileSync('./certs/localhost.privkey.pem'), + cert: fs.readFileSync('./certs/localhost.cert.pem'), + ca: [fs.readFileSync('./certs/ca.cert.pem')] +}); + +const instance = axios + .create({ httpsAgent, validateStatus: () => true }); + +export default instance; diff --git a/test/index.js b/test/index.js index 772415b..865902a 100644 --- a/test/index.js +++ b/test/index.js @@ -3,6 +3,7 @@ import('./lib/utils/calculateAllowedErrorCount.js'); import('./lib/prepareOptions.js'); import('./features/basic.js'); +import('./features/http.js'); import('./features/cluster.js'); import('./features/conflicts.js'); import('./features/health.js'); diff --git a/web/index.html b/web/index.html new file mode 100644 index 0000000..0e5488e --- /dev/null +++ b/web/index.html @@ -0,0 +1,12 @@ + + + + + + + Document + + + HELLO + + \ No newline at end of file From c6476d791703841aff923104436039aa25f604ea Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 1 Oct 2021 21:31:38 +0100 Subject: [PATCH 48/73] #61 - Prevent starting http server when disabled --- lib/modules/http/index.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js index 8e2508c..3fcd01c 100644 --- a/lib/modules/http/index.js +++ b/lib/modules/http/index.js @@ -36,6 +36,10 @@ async function handleGetCollection (context, request, response, { collectionId } } function httpModule (context) { + if (!context.options.httpPort || !context.options.httpHost) { + return; + } + const server = http2.createSecureServer({ ...context.options.tls, allowHTTP1: true From 4d3484cbf09b4dc0598f6b635f23776a567e7707 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 3 Oct 2021 20:08:35 +0100 Subject: [PATCH 49/73] #71 - Implement basic web gui server --- .gitignore | 1 + lib/cli.js | 11 +- lib/index.js | 6 +- lib/modules/collections/index.js | 9 + lib/modules/http/index.js | 41 +- lib/modules/lock/index.js | 9 + lib/modules/notify/index.js | 9 + lib/modules/web/build.js | 58 + lib/modules/web/index.js | 150 ++ lib/utils/insertDefaultDocument.js | 21 + package-lock.json | 2262 +++++++++++++++++++-- package.json | 10 +- web/.eslintrc.json | 22 + web/css/index.css | 90 + web/{ => html}/index.html | 7 +- web/img/file.svg | 23 + web/img/fileWhite.svg | 23 + web/img/folderWhite.svg | 10 + web/img/logo.svg | 194 ++ web/js/components/AuthenticationDialog.js | 81 + web/js/components/FileInput.js | 45 + web/js/components/MainUI.js | 110 + web/js/hooks/useApi.js | 26 + web/js/hooks/useLocalStorage.js | 28 + web/js/index.js | 65 + web/js/utils/readFile.js | 14 + web/meta.json | 1053 ++++++++++ 27 files changed, 4189 insertions(+), 189 deletions(-) create mode 100644 lib/modules/web/build.js create mode 100644 lib/modules/web/index.js create mode 100644 lib/utils/insertDefaultDocument.js create mode 100644 web/.eslintrc.json create mode 100644 web/css/index.css rename web/{ => html}/index.html (56%) create mode 100644 web/img/file.svg create mode 100644 web/img/fileWhite.svg create mode 100644 web/img/folderWhite.svg create mode 100644 web/img/logo.svg create mode 100644 web/js/components/AuthenticationDialog.js create mode 100644 web/js/components/FileInput.js create mode 100644 web/js/components/MainUI.js create mode 100644 web/js/hooks/useApi.js create mode 100644 web/js/hooks/useLocalStorage.js create mode 100644 web/js/index.js create mode 100644 web/js/utils/readFile.js create mode 100644 web/meta.json diff --git a/.gitignore b/.gitignore index f99081e..011425e 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ node_modules canhazdata certs coverage +web/public diff --git a/lib/cli.js b/lib/cli.js index f2e1159..5ed7623 100644 --- a/lib/cli.js +++ b/lib/cli.js @@ -33,6 +33,9 @@ Arguments: --http-host optional The host to bind the http server on (default: off) --http-port optional The port to bind the http server on (default: off) + --web-host optional The host to bind the web html gui server on (default: off) + --web-port optional The port to bind the web html gui server on (default: off) + --join optional Join another canhazdb node --join-from-dns optional Lookup other canhazdb nodes to join from a dns lookup @@ -61,6 +64,10 @@ async function main () { process.exit(1); } + if (!argv['tls-ca'] || !argv['tls-cert'] || !argv['tls-key']) { + throw new Error('all tls-ca, tls-cert and tls-key arguments must be provided'); + } + const nodeName = argv['node-name'] || process.env.CANHAZDB_NODE_NAME || os.hostname(); const node = await canhazdb({ dataDirectory: argv['data-dir'] || path.resolve(process.cwd(), './canhazdata', nodeName), @@ -73,7 +80,9 @@ async function main () { join: argv.join, joinFromDns: argv['join-from-dns'], httpHost: argv['http-host'], - httpPort: argv['http-port'] + httpPort: argv['http-port'], + webHost: argv['web-host'], + webPort: argv['web-port'] }).catch(error => { log.error(error); process.exit(1); diff --git a/lib/index.js b/lib/index.js index 2c6299d..f7e2e6c 100644 --- a/lib/index.js +++ b/lib/index.js @@ -15,6 +15,7 @@ import conflictsModule from './modules/conflicts/index.js'; import lockModule from './modules/lock/index.js'; import crudModule from './modules/crud/index.js'; import httpModule from './modules/http/index.js'; +import webModule from './modules/web/index.js'; import c from './constants.js'; @@ -72,7 +73,8 @@ async function canhazdb (rawOptions) { conflictsModule(context), lockModule(context), crudModule(context), - httpModule(context) + httpModule(context), + webModule(context) ]; context.driver = await driver(context); @@ -210,6 +212,8 @@ async function canhazdb (rawOptions) { ...context.options.tls }; + context.emit('ready'); + return context; } diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js index fc9f4c0..4082ac3 100644 --- a/lib/modules/collections/index.js +++ b/lib/modules/collections/index.js @@ -1,6 +1,7 @@ import logslot from 'logslot'; import documentCountCollector from './documentCountCollector.js'; import systemNodesController from './systemNodesController.js'; +import insertDefaultDocument from '../../utils/insertDefaultDocument.js'; import c from '../../constants.js'; const log = logslot('canhazdb.collections'); @@ -52,6 +53,14 @@ function collectionsModule (context) { handler: systemNodesController }); + context.on('ready', () => { + insertDefaultDocument(context, 'system.collections', { + id: 'system.collections', + collectionId: 'system.collections', + documentCount: 0 + }); + }); + const collector = documentCountCollector(async function (cache) { if (context.closed) { return; diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js index 3fcd01c..85ee622 100644 --- a/lib/modules/http/index.js +++ b/lib/modules/http/index.js @@ -1,17 +1,9 @@ -import chalk from 'chalk'; import http2 from 'http2'; -import servatron from 'servatron/http.js'; import logslot from 'logslot'; import c from '../../constants.js'; const log = logslot('canhazdb.http'); -const staticHandler = servatron({ - directory: './web', - spa: true, - spaIndex: 'index.html' -}); - async function handleGetDocument (context, request, response, { collectionId, documentId }) { const getResult = await context.thisNode.client.send(c.GET, { [c.COLLECTION_ID]: collectionId, @@ -46,31 +38,24 @@ function httpModule (context) { }, function (request, response) { log.info('request received'); const path = request.url || request.headers[':path']; + const parts = path.split('/'); - if (path.startsWith('/api')) { - const parts = path.split('/'); - - if (parts.length === 3) { - handleGetCollection(context, request, response, { - collectionId: parts[2] - }); - return; - } - - if (parts.length === 4) { - handleGetDocument(context, request, response, { - collectionId: parts[2], - documentId: parts[3] - }); - return; - } - - response.end('api - not found'); + if (parts.length === 3) { + handleGetCollection(context, request, response, { + collectionId: parts[2] + }); + return; + } + if (parts.length === 4) { + handleGetDocument(context, request, response, { + collectionId: parts[2], + documentId: parts[3] + }); return; } - staticHandler(request, response); + response.end('api - not found'); }); server.on('error', (error) => console.error(error)); diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index 030b4dd..feace1c 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -4,6 +4,7 @@ import externalLockController from './controllers/external/lock.js'; import externalUnlockController from './controllers/external/unlock.js'; import internalLockController from './controllers/internal/lock.js'; import internalUnlockController from './controllers/internal/unlock.js'; +import insertDefaultDocument from '../../utils/insertDefaultDocument.js'; import c from '../../constants.js'; @@ -54,6 +55,14 @@ function lockModule (context) { context.on('client.connected', socket => { socket.state.locks = []; }); + + context.on('ready', () => { + insertDefaultDocument(context, 'system.collections', { + id: 'system.locks', + collectionId: 'system.locks', + documentCount: 0 + }); + }); } export default lockModule; diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index bf95c83..16f9f59 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -2,6 +2,7 @@ import logslot from 'logslot'; import c from '../../constants.js'; import systemNotifysController from './systemNotifysController.js'; +import insertDefaultDocument from '../../utils/insertDefaultDocument.js'; const log = logslot('canhazdb.notify'); @@ -145,6 +146,14 @@ async function notifyModule (context) { }); }); }); + + context.on('ready', () => { + insertDefaultDocument(context, 'system.collections', { + id: 'system.notifys', + collectionId: 'system.notifys', + documentCount: 0 + }); + }); } export default notifyModule; diff --git a/lib/modules/web/build.js b/lib/modules/web/build.js new file mode 100644 index 0000000..966a8c7 --- /dev/null +++ b/lib/modules/web/build.js @@ -0,0 +1,58 @@ +import fs from 'fs'; +import esbuild from 'esbuild'; + +async function build () { + const watch = process.env.NODE_ENV === 'development'; + + async function buildJs () { + const result = await esbuild.build({ + entryPoints: ['./web/js/index.js'], + bundle: true, + sourcemap: true, + metafile: true, + outfile: './web/public/index.min.js', + watch, + minify: true, + loader: { + '.svg': 'file', + '.gif': 'file', + '.png': 'file', + '.js': 'jsx' + }, + define: { + 'process.env.NODE_ENV': '"' + process.env.NODE_ENV + '"' + } + }); + fs.writeFileSync('./web/meta.json', JSON.stringify(result.metafile, null, 2)); + } + + async function buildCss () { + await esbuild.build({ + entryPoints: ['./web/css/index.css'], + bundle: true, + sourcemap: true, + outfile: './web/public/index.min.css', + watch, + loader: { + '.svg': 'file', + '.png': 'file' + } + }); + } + + async function buildHtml () { + let html = await fs.promises.readFile('./web/html/index.html', 'utf8'); + + html = html.replace('{BASE_URL}', process.env.BASE_URL || '/'); + + await fs.promises.writeFile('./web/public/index.html', html); + } + + await Promise.all([ + buildCss(), + buildJs(), + buildHtml() + ]); +} + +export default build; diff --git a/lib/modules/web/index.js b/lib/modules/web/index.js new file mode 100644 index 0000000..414586c --- /dev/null +++ b/lib/modules/web/index.js @@ -0,0 +1,150 @@ +import path from 'path'; +import http2 from 'http2'; +import axios from 'axios'; +import https from 'https'; +import servatron from 'servatron/http.js'; +import logslot from 'logslot'; +import build from './build.js'; +import finalStream from 'final-stream'; +import cryptoRandomString from 'crypto-random-string'; + +const log = logslot('canhazdb.web'); + +const staticHandler = servatron({ + directory: './web/public', + spa: true, + spaIndex: 'index.html' +}); + +function webModule (context) { + if (!context.options.webPort || !context.options.webHost) { + return; + } + + const authentications = {}; + + build(); + + const server = http2.createSecureServer({ + ...context.options.tls, + allowHTTP1: true, + requestCert: false + }, async function (request, response) { + const body = await finalStream(request).then(JSON.parse).catch(() => null); + const urlPath = request.url || request.headers[':path']; + + if (urlPath.startsWith('/api/')) { + log.info('request received to ' + urlPath); + if (urlPath === '/api/settings') { + response.end( + JSON.stringify({ + ca: { + name: path.basename(context.options.tlsCa), + data: context.options.tls.ca.toString() + } + }) + ); + return; + } + + if (urlPath === '/api/authenticate') { + const httpsAgent = new https.Agent({ + key: body.privateKey.data, + cert: body.cert.data, + ca: [body.ca.data] + }); + + try { + await axios(`https://localhost:${context.options.httpPort}/api/system.collections`, { + httpsAgent + }); + + const token = cryptoRandomString({ length: 36 }); + authentications[token] = { + body, + httpsAgent + }; + response.end( + JSON.stringify({ + token + }) + ); + } catch (error) { + log.warn('failed to authenticate', { error }); + response.end( + JSON.stringify({ + error: error.message + }) + ); + } + return; + } + + if (urlPath.startsWith('/api/authenticate/')) { + const token = urlPath.substr('/api/authenticate/'.length); + + try { + await axios(`https://localhost:${context.options.httpPort}/api/system.collections`, { + httpsAgent: authentications[token]?.httpsAgent + }); + + response.end( + JSON.stringify(authentications[request.headers.authorisation].body) + ); + } catch (error) { + log.warn('failed to authenticate', { error }); + response.writeHead(401); + response.end( + JSON.stringify({ + error: error.message + }) + ); + } + return; + } + + if (request.headers.authorisation) { + try { + const proxiedResponse = await axios(`https://localhost:${context.options.httpPort}${urlPath}`, { + method: request.method, + httpsAgent: authentications[request.headers.authorisation]?.httpsAgent + }); + response.end( + JSON.stringify(proxiedResponse.data) + ); + return; + } catch (error) { + log.warn('failed to authenticate', { error }); + response.writeHead(401); + response.end( + JSON.stringify({ + error: error.message + }) + ); + } + } + + response.end('api - not found'); + + return; + } + + staticHandler(request, response); + }); + server.on('error', (error) => console.error(error)); + + server.on('listening', () => { + log.info('web server listening on ' + server.address().port); + }); + + server.listen(context.options.webPort, context.options.webHost); + + return { + cleanup: () => { + log.info('web server closed'); + server.close(); + } + }; +} + +export default webModule; diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js new file mode 100644 index 0000000..577c6bf --- /dev/null +++ b/lib/utils/insertDefaultDocument.js @@ -0,0 +1,21 @@ +import canhazdbClient from 'canhazdb-client'; + +async function insertDefaultDocument (context, collectionId, document) { + const client = await canhazdbClient(context.clientConfig); + const lockId = await client.lock([collectionId]); + const existingDocument = await client.getOne(collectionId, { + query: { + id: document.id + } + }); + + if (!existingDocument) { + await client.post(collectionId, document, { + lockId + }); + } + + await client.unlock(lockId); +} + +export default insertDefaultDocument; diff --git a/package-lock.json b/package-lock.json index 8797303..d2f6e2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,9 @@ "license": "AGPL-3.0", "dependencies": { "chalk": "^4.1.2", + "crypto-random-string": "^4.0.0", "debarrel": "^1.0.2", + "final-stream": "^2.0.4", "lockbase": "^1.3.1", "logslot": "^2.1.0", "minimist": "^1.2.5", @@ -19,24 +21,258 @@ "servatron": "^2.2.3", "server-destroy": "^1.0.1", "tcpocket": "^7.4.2", + "use-http": "^1.0.24", "uuid": "^8.3.2" }, "devDependencies": { + "@emotion/styled": "^11.3.0", "axios": "^0.22.0", - "basictap": "^2.2.1", + "basictap": "^2.2.2", "c8": "^7.9.0", + "esbuild": "^0.13.3", "eslint": "^7.32.0", + "eslint-plugin-react-hooks": "^4.2.0", + "react": "^17.0.2", + "react-dom": "^17.0.2", "semistandard": "^16.0.1", "wtfnode": "^0.9.1" } }, "node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", "dev": true, "dependencies": { - "@babel/highlight": "^7.10.4" + "@babel/highlight": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", + "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.15.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", + "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.15.4", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.4", + "@babel/helpers": "^7.15.4", + "@babel/parser": "^7.15.5", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", + "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", + "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.15.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.16.6", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", + "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.15.4", + "@babel/template": "^7.15.4", + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", + "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", + "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", + "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", + "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", + "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.15.4", + "@babel/helper-replace-supers": "^7.15.4", + "@babel/helper-simple-access": "^7.15.4", + "@babel/helper-split-export-declaration": "^7.15.4", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", + "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", + "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.15.4", + "@babel/helper-optimise-call-expression": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", + "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", + "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { @@ -48,6 +284,31 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-validator-option": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", + "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/highlight": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", @@ -133,11 +394,251 @@ "node": ">=4" } }, + "node_modules/@babel/parser": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", + "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==", + "dev": true, + "peer": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", + "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", + "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", + "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", + "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.15.4", + "@babel/helper-function-name": "^7.15.4", + "@babel/helper-hoist-variables": "^7.15.4", + "@babel/helper-split-export-declaration": "^7.15.4", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.15.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", + "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.14.9", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" }, + "node_modules/@emotion/babel-plugin": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.3.0.tgz", + "integrity": "sha512-UZKwBV2rADuhRp+ZOGgNWg2eYgbzKzQXfQPtJbu/PLy8onurxlNCLvxMQEvlr1/GudguPI5IU9qIY1+2z1M5bA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/plugin-syntax-jsx": "^7.12.13", + "@babel/runtime": "^7.13.10", + "@emotion/hash": "^0.8.0", + "@emotion/memoize": "^0.7.5", + "@emotion/serialize": "^1.0.2", + "babel-plugin-macros": "^2.6.1", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "^4.0.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz", + "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==", + "dev": true, + "peer": true, + "dependencies": { + "@emotion/memoize": "^0.7.4", + "@emotion/sheet": "^1.0.0", + "@emotion/utils": "^1.0.0", + "@emotion/weak-memoize": "^0.2.5", + "stylis": "^4.0.3" + } + }, + "node_modules/@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", + "dev": true + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.0.tgz", + "integrity": "sha512-9RkilvXAufQHsSsjQ3PIzSns+pxuX4EW8EbGeSPjZMHuMx6z/MOzb9LpqNieQX4F3mre3NWS2+X3JNRHTQztUQ==", + "dev": true, + "dependencies": { + "@emotion/memoize": "^0.7.4" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz", + "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==", + "dev": true + }, + "node_modules/@emotion/react": { + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.1.tgz", + "integrity": "sha512-pRegcsuGYj4FCdZN6j5vqCALkNytdrKw3TZMekTzNXixRg4wkLsU5QEaBG5LC6l01Vppxlp7FE3aTHpIG5phLg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/runtime": "^7.13.10", + "@emotion/cache": "^11.4.0", + "@emotion/serialize": "^1.0.2", + "@emotion/sheet": "^1.0.2", + "@emotion/utils": "^1.0.0", + "@emotion/weak-memoize": "^0.2.5", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz", + "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==", + "dev": true, + "dependencies": { + "@emotion/hash": "^0.8.0", + "@emotion/memoize": "^0.7.4", + "@emotion/unitless": "^0.7.5", + "@emotion/utils": "^1.0.0", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.2.tgz", + "integrity": "sha512-QQPB1B70JEVUHuNtzjHftMGv6eC3Y9wqavyarj4x4lg47RACkeSfNo5pxIOKizwS9AEFLohsqoaxGQj4p0vSIw==", + "dev": true, + "peer": true + }, + "node_modules/@emotion/styled": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.3.0.tgz", + "integrity": "sha512-fUoLcN3BfMiLlRhJ8CuPUMEyKkLEoM+n+UyAbnqGEsCd5IzKQ7VQFLtzpJOaCD2/VR2+1hXQTnSZXVJeiTNltA==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.13.10", + "@emotion/babel-plugin": "^11.3.0", + "@emotion/is-prop-valid": "^1.1.0", + "@emotion/serialize": "^1.0.2", + "@emotion/utils": "^1.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", + "dev": true + }, + "node_modules/@emotion/utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz", + "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==", + "dev": true + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", + "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", + "dev": true, + "peer": true + }, "node_modules/@eslint/eslintrc": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", @@ -158,6 +659,21 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", @@ -197,6 +713,12 @@ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "node_modules/acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -294,14 +816,14 @@ } }, "node_modules/array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", + "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" + "es-abstract": "^1.19.0" }, "engines": { "node": ">= 0.4" @@ -311,15 +833,14 @@ } }, "node_modules/array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz", + "integrity": "sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA==", "dev": true, "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" + "es-abstract": "^1.19.0" }, "engines": { "node": ">= 0.4" @@ -346,18 +867,29 @@ "follow-redirects": "^1.14.4" } }, + "node_modules/babel-plugin-macros": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", + "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.7.2", + "cosmiconfig": "^6.0.0", + "resolve": "^1.12.0" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/basictap": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.1.tgz", - "integrity": "sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.2.tgz", + "integrity": "sha512-mvDJ1fyahqhcfadkq/RgoTZ/64LBKuh2AQmLbdGXzaRb6kNBIHhnlue5KPWKy4EP+wYsnKYsB7tyIPwvUId57Q==", "dev": true, "dependencies": { - "colorette": "^1.3.0", + "colorette": "^2.0.13", "events": "^3.3.0", "promise-limit": "^2.7.0" } @@ -371,6 +903,30 @@ "concat-map": "0.0.1" } }, + "node_modules/browserslist": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", + "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", + "dev": true, + "peer": true, + "dependencies": { + "caniuse-lite": "^1.0.30001261", + "electron-to-chromium": "^1.3.854", + "escalade": "^3.1.1", + "nanocolors": "^0.2.12", + "node-releases": "^1.1.76" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, "node_modules/c8": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/c8/-/c8-7.9.0.tgz", @@ -418,6 +974,17 @@ "node": ">=6" } }, + "node_modules/caniuse-lite": { + "version": "1.0.30001263", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", + "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", + "dev": true, + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -460,9 +1027,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.13.tgz", + "integrity": "sha512-lvA4NbohpqUypdfTtJpb5BwhdUrwi1ACLM6uW3lEj0CWKOXrCSJlexv9IgUUN6obat0YGTSy7wfLDLEfOvzFLA==", "dev": true }, "node_modules/concat-map": { @@ -478,6 +1045,22 @@ "safe-buffer": "~5.1.1" } }, + "node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -491,6 +1074,37 @@ "node": ">= 8" } }, + "node_modules/crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "dependencies": { + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/csstype": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", + "integrity": "sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==", + "dev": true + }, "node_modules/debarrel": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", @@ -543,6 +1157,13 @@ "node": ">=6.0.0" } }, + "node_modules/electron-to-chromium": { + "version": "1.3.857", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", + "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", + "dev": true, + "peer": true + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -620,6 +1241,242 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/esbuild": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.3.tgz", + "integrity": "sha512-98xovMLKnyhv3gcReUuAEi5Ig1rK6SIgvsJuBIcfwzqGSEHsV8UJjMlmkhHoHMf9XZybMpE9Zax8AA8f7i2hlQ==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "optionalDependencies": { + "esbuild-android-arm64": "0.13.3", + "esbuild-darwin-64": "0.13.3", + "esbuild-darwin-arm64": "0.13.3", + "esbuild-freebsd-64": "0.13.3", + "esbuild-freebsd-arm64": "0.13.3", + "esbuild-linux-32": "0.13.3", + "esbuild-linux-64": "0.13.3", + "esbuild-linux-arm": "0.13.3", + "esbuild-linux-arm64": "0.13.3", + "esbuild-linux-mips64le": "0.13.3", + "esbuild-linux-ppc64le": "0.13.3", + "esbuild-openbsd-64": "0.13.3", + "esbuild-sunos-64": "0.13.3", + "esbuild-windows-32": "0.13.3", + "esbuild-windows-64": "0.13.3", + "esbuild-windows-arm64": "0.13.3" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.3.tgz", + "integrity": "sha512-jc9E8vGTHkzb0Vwl74H8liANV9BWsqtzLHaKvcsRgf1M+aVCBSF0gUheduAKfDsbDMT0judeMLhwBP34EUesTA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/esbuild-darwin-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.3.tgz", + "integrity": "sha512-8bG3Zq+ZNuLlIJebOO2+weI7P2LVf33sOzaUfHj8MuJ+1Ixe4KtQxfYp7qhFnP6xP2ToJaYHxGUfLeiUCEz9hw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.3.tgz", + "integrity": "sha512-5E81eImYtTgh8pY7Gq4WQHhWkR/LvYadUXmuYeZBiP+3ADZJZcG60UFceZrjqNPaFOWKr/xmh4aNocwagEubcA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.3.tgz", + "integrity": "sha512-ou+f91KkTGexi8HvF/BdtsITL6plbciQfZGys7QX6/QEwyE96PmL5KnU6ZQwoU7E99Ts6Sc9bUDq8HXJubKtBA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.3.tgz", + "integrity": "sha512-F1zV7nySjHswJuvIgjkiG5liZ63MeazDGXGKViTCeegjZ71sAhOChcaGhKcu6vq9+vqZxlfEi1fmXlx6Pc3coQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/esbuild-linux-32": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.3.tgz", + "integrity": "sha512-mHHc2v6uLrHH4zaaq5RB/5IWzgimEJ1HGldzf1qtGI513KZWfH0HRRQ8p1di4notJgBn7tDzWQ1f34ZHy69viQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.3.tgz", + "integrity": "sha512-FJ1De2O89mrOuqtaEXu41qIYJU6R41F+OA6vheNwcAQcX8fu0aiA13FJeLABq29BYJuTVgRj3cyC8q+tz19/dQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-arm": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.3.tgz", + "integrity": "sha512-9BJNRtLwBh3OP22cln9g3AJdbAQUcjRHqA4BScx9k4RZpGqPokFr548zpeplxWhcwrIjT8qPebwH9CrRVy8Bsw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.3.tgz", + "integrity": "sha512-Cauhr45KSo+wRUojs+1qfycQqQCAXTOvsWvkZ6xmEMAXLAm+f8RQGDQeP8CAf8Yeelnegcn6UNdvzdzLHhWDFg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.3.tgz", + "integrity": "sha512-YVzJUGCncuuLm2boYyVeuMFsak4ZAhdiBwi0xNDZCC8sy+tS6Boe2mzcrD2uubv5JKAUOrpN186S1DtU4WgBgw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.3.tgz", + "integrity": "sha512-GU6CqqKtJEoyxC2QWHiJtmuOz9wc/jMv8ZloK2WwiGY5yMvAmM3PI103Dj7xcjebNTHBqITTUw/aigY1wx5A3w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.3.tgz", + "integrity": "sha512-HVpkgpn4BQt4BPDAjTOpeMub6mzNWw6Y3gaLQJrpbO24pws6ZwYkY24OI3/Uo3LDCbH6856MM81JxECt92OWjA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/esbuild-sunos-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.3.tgz", + "integrity": "sha512-XncBVOtnEfUbPV4CaiFBxh38ychnBfwCxuTm9iAqcHzIwkmeNRN5qMzDyfE1jyfJje+Bbt6AvIfz6SdYt8/UEQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ] + }, + "node_modules/esbuild-windows-32": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.3.tgz", + "integrity": "sha512-ZlgDz7d1nk8wQACi+z8IDzNZVUlN9iprAme+1YSTsfFDlkyI8jeaGWPk9EQFNY7rJzsLVYm6eZ2mhPioc7uT5A==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/esbuild-windows-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.3.tgz", + "integrity": "sha512-YX7KvRez3TR+GudlQm9tND/ssj2FsF9vb8ZWzAoZOLxpPzE3y+3SFJNrfDzzQKPzJ0Pnh9KBP4gsaMwJjKHDhw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.3.tgz", + "integrity": "sha512-nP7H0Y2a6OJd3Qi1Q8sehhyP4x4JoXK4S5y6FzH2vgaJgiyEurzFxjUufGdMaw+RxtxiwD/uRndUgwaZ2JD8lg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -963,15 +1820,6 @@ "node": ">= 4" } }, - "node_modules/eslint-plugin-node/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/eslint-plugin-promise": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", @@ -1009,6 +1857,18 @@ "eslint": "^3 || ^4 || ^5 || ^6 || ^7" } }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", + "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -1067,6 +1927,45 @@ "node": ">=10" } }, + "node_modules/eslint/node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", @@ -1202,6 +2101,17 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/final-stream": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.4.tgz", + "integrity": "sha512-kBaHWwbW2oRFp1WZeY28QrCwv5yJVJTO/tPHYIWLs3ezd2DvCXrBayqgG096tJPqZhUaCM/y1439LkAjnr7xaA==" + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, "node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -1285,6 +2195,16 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -1367,18 +2287,13 @@ } }, "node_modules/globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, + "peer": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/graceful-fs": { @@ -1443,6 +2358,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dev": true, + "peer": true, + "dependencies": { + "react-is": "^16.7.0" + } + }, "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -1758,8 +2683,7 @@ "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "node_modules/js-yaml": { "version": "3.14.1", @@ -1774,12 +2698,31 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -1793,15 +2736,19 @@ "dev": true }, "node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, + "peer": true, "dependencies": { - "minimist": "^1.2.0" + "minimist": "^1.2.5" }, "bin": { "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, "node_modules/jsx-ast-utils": { @@ -1830,6 +2777,12 @@ "node": ">= 0.8.0" } }, + "node_modules/lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, "node_modules/load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -1845,6 +2798,19 @@ "node": ">=4" } }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -1898,7 +2864,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -1931,14 +2896,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/mime": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", @@ -1977,6 +2934,13 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "node_modules/nanocolors": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", + "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", + "dev": true, + "peer": true + }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -2008,6 +2972,27 @@ "npm": ">=6.0.0" } }, + "node_modules/node-ejdb-lite/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-releases": { + "version": "1.1.77", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", + "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", + "dev": true, + "peer": true + }, "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -2033,7 +3018,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -2198,16 +3182,21 @@ } }, "node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "dependencies": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/path-exists": { @@ -2241,15 +3230,12 @@ "dev": true }, "node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/pify": { @@ -2351,6 +3337,19 @@ "node": ">=6" } }, + "node_modules/pkg-conf/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/pkg-conf/node_modules/path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", @@ -2562,6 +3561,31 @@ "node": ">=6" } }, + "node_modules/react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + }, + "peerDependencies": { + "react": "17.0.2" + } + }, "node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -2653,6 +3677,24 @@ "node": ">=4" } }, + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, "node_modules/regexp.prototype.flags": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", @@ -2739,6 +3781,15 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "node_modules/scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, "node_modules/semistandard": { "version": "16.0.1", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", @@ -2777,17 +3828,11 @@ } }, "node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "bin": { "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" } }, "node_modules/servatron": { @@ -2863,11 +3908,12 @@ } }, "node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, "node_modules/spdx-correct": { @@ -3027,6 +4073,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/stylis": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz", + "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg==", + "dev": true + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -3104,6 +4156,15 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/tsconfig-paths": { "version": "3.11.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", @@ -3116,6 +4177,18 @@ "strip-bom": "^3.0.0" } }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -3164,6 +4237,46 @@ "punycode": "^2.1.0" } }, + "node_modules/urs": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/urs/-/urs-0.0.8.tgz", + "integrity": "sha512-LaSSPpr91XrVA3vW2zPupw4K6DSQEDKdL4yQZX1mO2fpljIMpB5zctrjRvxLurelWSgKsHsCmfHNCImscryirQ==", + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0", + "react-dom": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/use-http": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.24.tgz", + "integrity": "sha512-JPAfcOWEyXdTolQSlmbVYhbLLrIw7rscFFY23R/OZpcZ3C1F0avQLUEi6eMIMpBcvo4HZk4aDd0rg8zVpYvjXA==", + "dependencies": { + "urs": "^0.0.8", + "use-ssr": "^1.0.24", + "utility-types": "^3.10.0" + }, + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0", + "react-dom": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/use-ssr": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/use-ssr/-/use-ssr-1.0.24.tgz", + "integrity": "sha512-0MFps7ezL57/3o0yl4CvrHLlp9z20n1rQZV/lSRz7if+TUoM6POU1XdOvEjIgjgKeIhTEye1U0khrIYWCTWw4g==", + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0", + "react-dom": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "engines": { + "node": ">= 4" + } + }, "node_modules/uuid": { "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", @@ -3191,6 +4304,14 @@ "node": ">=10.12.0" } }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "engines": { + "node": ">= 8" + } + }, "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -3292,6 +4413,15 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", @@ -3331,12 +4461,185 @@ }, "dependencies": { "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", "dev": true, "requires": { - "@babel/highlight": "^7.10.4" + "@babel/highlight": "^7.14.5" + } + }, + "@babel/compat-data": { + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", + "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", + "dev": true, + "peer": true + }, + "@babel/core": { + "version": "7.15.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", + "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", + "dev": true, + "peer": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.15.4", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.4", + "@babel/helpers": "^7.15.4", + "@babel/parser": "^7.15.5", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + } + }, + "@babel/generator": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", + "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", + "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", + "dev": true, + "peer": true, + "requires": { + "@babel/compat-data": "^7.15.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.16.6", + "semver": "^6.3.0" + } + }, + "@babel/helper-function-name": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", + "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", + "dev": true, + "peer": true, + "requires": { + "@babel/helper-get-function-arity": "^7.15.4", + "@babel/template": "^7.15.4", + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", + "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", + "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", + "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-module-imports": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", + "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", + "dev": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-module-transforms": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", + "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "dev": true, + "peer": true, + "requires": { + "@babel/helper-module-imports": "^7.15.4", + "@babel/helper-replace-supers": "^7.15.4", + "@babel/helper-simple-access": "^7.15.4", + "@babel/helper-split-export-declaration": "^7.15.4", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.6" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", + "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", + "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "dev": true, + "peer": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.15.4", + "@babel/helper-optimise-call-expression": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-simple-access": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", + "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", + "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", + "dev": true, + "peer": true, + "requires": { + "@babel/types": "^7.15.4" } }, "@babel/helper-validator-identifier": { @@ -3345,6 +4648,25 @@ "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", "dev": true }, + "@babel/helper-validator-option": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "dev": true, + "peer": true + }, + "@babel/helpers": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", + "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", + "dev": true, + "peer": true, + "requires": { + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" + } + }, "@babel/highlight": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", @@ -3414,10 +4736,198 @@ } } }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + "@babel/parser": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", + "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==", + "dev": true, + "peer": true + }, + "@babel/plugin-syntax-jsx": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", + "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/runtime": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", + "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", + "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "dev": true, + "peer": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4" + } + }, + "@babel/traverse": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", + "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", + "dev": true, + "peer": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.15.4", + "@babel/helper-function-name": "^7.15.4", + "@babel/helper-hoist-variables": "^7.15.4", + "@babel/helper-split-export-declaration": "^7.15.4", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.15.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", + "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.14.9", + "to-fast-properties": "^2.0.0" + } + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "@emotion/babel-plugin": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.3.0.tgz", + "integrity": "sha512-UZKwBV2rADuhRp+ZOGgNWg2eYgbzKzQXfQPtJbu/PLy8onurxlNCLvxMQEvlr1/GudguPI5IU9qIY1+2z1M5bA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/plugin-syntax-jsx": "^7.12.13", + "@babel/runtime": "^7.13.10", + "@emotion/hash": "^0.8.0", + "@emotion/memoize": "^0.7.5", + "@emotion/serialize": "^1.0.2", + "babel-plugin-macros": "^2.6.1", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "^4.0.3" + } + }, + "@emotion/cache": { + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz", + "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==", + "dev": true, + "peer": true, + "requires": { + "@emotion/memoize": "^0.7.4", + "@emotion/sheet": "^1.0.0", + "@emotion/utils": "^1.0.0", + "@emotion/weak-memoize": "^0.2.5", + "stylis": "^4.0.3" + } + }, + "@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", + "dev": true + }, + "@emotion/is-prop-valid": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.0.tgz", + "integrity": "sha512-9RkilvXAufQHsSsjQ3PIzSns+pxuX4EW8EbGeSPjZMHuMx6z/MOzb9LpqNieQX4F3mre3NWS2+X3JNRHTQztUQ==", + "dev": true, + "requires": { + "@emotion/memoize": "^0.7.4" + } + }, + "@emotion/memoize": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz", + "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==", + "dev": true + }, + "@emotion/react": { + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.1.tgz", + "integrity": "sha512-pRegcsuGYj4FCdZN6j5vqCALkNytdrKw3TZMekTzNXixRg4wkLsU5QEaBG5LC6l01Vppxlp7FE3aTHpIG5phLg==", + "dev": true, + "peer": true, + "requires": { + "@babel/runtime": "^7.13.10", + "@emotion/cache": "^11.4.0", + "@emotion/serialize": "^1.0.2", + "@emotion/sheet": "^1.0.2", + "@emotion/utils": "^1.0.0", + "@emotion/weak-memoize": "^0.2.5", + "hoist-non-react-statics": "^3.3.1" + } + }, + "@emotion/serialize": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz", + "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==", + "dev": true, + "requires": { + "@emotion/hash": "^0.8.0", + "@emotion/memoize": "^0.7.4", + "@emotion/unitless": "^0.7.5", + "@emotion/utils": "^1.0.0", + "csstype": "^3.0.2" + } + }, + "@emotion/sheet": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.2.tgz", + "integrity": "sha512-QQPB1B70JEVUHuNtzjHftMGv6eC3Y9wqavyarj4x4lg47RACkeSfNo5pxIOKizwS9AEFLohsqoaxGQj4p0vSIw==", + "dev": true, + "peer": true + }, + "@emotion/styled": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.3.0.tgz", + "integrity": "sha512-fUoLcN3BfMiLlRhJ8CuPUMEyKkLEoM+n+UyAbnqGEsCd5IzKQ7VQFLtzpJOaCD2/VR2+1hXQTnSZXVJeiTNltA==", + "dev": true, + "requires": { + "@babel/runtime": "^7.13.10", + "@emotion/babel-plugin": "^11.3.0", + "@emotion/is-prop-valid": "^1.1.0", + "@emotion/serialize": "^1.0.2", + "@emotion/utils": "^1.0.0" + } + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", + "dev": true + }, + "@emotion/utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz", + "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==", + "dev": true + }, + "@emotion/weak-memoize": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", + "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", + "dev": true, + "peer": true }, "@eslint/eslintrc": { "version": "0.4.3", @@ -3434,6 +4944,17 @@ "js-yaml": "^3.13.1", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + } } }, "@humanwhocodes/config-array": { @@ -3469,6 +4990,12 @@ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -3536,26 +5063,25 @@ } }, "array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", + "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, "requires": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" + "es-abstract": "^1.19.0" } }, "array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz", + "integrity": "sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA==", "dev": true, "requires": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" + "es-abstract": "^1.19.0" } }, "astral-regex": { @@ -3573,18 +5099,29 @@ "follow-redirects": "^1.14.4" } }, + "babel-plugin-macros": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", + "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.7.2", + "cosmiconfig": "^6.0.0", + "resolve": "^1.12.0" + } + }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "basictap": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.1.tgz", - "integrity": "sha512-swsaokEcWVcjJ2iwffUJTqo+stJo6wxcFeNk1bvCGIkCS+wrGMBLO+MnrBCR1ZAl6DhUCYXOIt00qdSaJFyRvw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.2.tgz", + "integrity": "sha512-mvDJ1fyahqhcfadkq/RgoTZ/64LBKuh2AQmLbdGXzaRb6kNBIHhnlue5KPWKy4EP+wYsnKYsB7tyIPwvUId57Q==", "dev": true, "requires": { - "colorette": "^1.3.0", + "colorette": "^2.0.13", "events": "^3.3.0", "promise-limit": "^2.7.0" } @@ -3598,6 +5135,20 @@ "concat-map": "0.0.1" } }, + "browserslist": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", + "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", + "dev": true, + "peer": true, + "requires": { + "caniuse-lite": "^1.0.30001261", + "electron-to-chromium": "^1.3.854", + "escalade": "^3.1.1", + "nanocolors": "^0.2.12", + "node-releases": "^1.1.76" + } + }, "c8": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/c8/-/c8-7.9.0.tgz", @@ -3633,6 +5184,13 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, + "caniuse-lite": { + "version": "1.0.30001263", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", + "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", + "dev": true, + "peer": true + }, "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -3666,9 +5224,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.13.tgz", + "integrity": "sha512-lvA4NbohpqUypdfTtJpb5BwhdUrwi1ACLM6uW3lEj0CWKOXrCSJlexv9IgUUN6obat0YGTSy7wfLDLEfOvzFLA==", "dev": true }, "concat-map": { @@ -3684,6 +5242,19 @@ "safe-buffer": "~5.1.1" } }, + "cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + } + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -3694,6 +5265,27 @@ "which": "^2.0.1" } }, + "crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "requires": { + "type-fest": "^1.0.1" + }, + "dependencies": { + "type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" + } + } + }, + "csstype": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", + "integrity": "sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==", + "dev": true + }, "debarrel": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", @@ -3732,6 +5324,13 @@ "esutils": "^2.0.2" } }, + "electron-to-chromium": { + "version": "1.3.857", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", + "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", + "dev": true, + "peer": true + }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -3794,6 +5393,142 @@ "is-symbol": "^1.0.2" } }, + "esbuild": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.3.tgz", + "integrity": "sha512-98xovMLKnyhv3gcReUuAEi5Ig1rK6SIgvsJuBIcfwzqGSEHsV8UJjMlmkhHoHMf9XZybMpE9Zax8AA8f7i2hlQ==", + "dev": true, + "requires": { + "esbuild-android-arm64": "0.13.3", + "esbuild-darwin-64": "0.13.3", + "esbuild-darwin-arm64": "0.13.3", + "esbuild-freebsd-64": "0.13.3", + "esbuild-freebsd-arm64": "0.13.3", + "esbuild-linux-32": "0.13.3", + "esbuild-linux-64": "0.13.3", + "esbuild-linux-arm": "0.13.3", + "esbuild-linux-arm64": "0.13.3", + "esbuild-linux-mips64le": "0.13.3", + "esbuild-linux-ppc64le": "0.13.3", + "esbuild-openbsd-64": "0.13.3", + "esbuild-sunos-64": "0.13.3", + "esbuild-windows-32": "0.13.3", + "esbuild-windows-64": "0.13.3", + "esbuild-windows-arm64": "0.13.3" + } + }, + "esbuild-android-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.3.tgz", + "integrity": "sha512-jc9E8vGTHkzb0Vwl74H8liANV9BWsqtzLHaKvcsRgf1M+aVCBSF0gUheduAKfDsbDMT0judeMLhwBP34EUesTA==", + "dev": true, + "optional": true + }, + "esbuild-darwin-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.3.tgz", + "integrity": "sha512-8bG3Zq+ZNuLlIJebOO2+weI7P2LVf33sOzaUfHj8MuJ+1Ixe4KtQxfYp7qhFnP6xP2ToJaYHxGUfLeiUCEz9hw==", + "dev": true, + "optional": true + }, + "esbuild-darwin-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.3.tgz", + "integrity": "sha512-5E81eImYtTgh8pY7Gq4WQHhWkR/LvYadUXmuYeZBiP+3ADZJZcG60UFceZrjqNPaFOWKr/xmh4aNocwagEubcA==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.3.tgz", + "integrity": "sha512-ou+f91KkTGexi8HvF/BdtsITL6plbciQfZGys7QX6/QEwyE96PmL5KnU6ZQwoU7E99Ts6Sc9bUDq8HXJubKtBA==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.3.tgz", + "integrity": "sha512-F1zV7nySjHswJuvIgjkiG5liZ63MeazDGXGKViTCeegjZ71sAhOChcaGhKcu6vq9+vqZxlfEi1fmXlx6Pc3coQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-32": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.3.tgz", + "integrity": "sha512-mHHc2v6uLrHH4zaaq5RB/5IWzgimEJ1HGldzf1qtGI513KZWfH0HRRQ8p1di4notJgBn7tDzWQ1f34ZHy69viQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.3.tgz", + "integrity": "sha512-FJ1De2O89mrOuqtaEXu41qIYJU6R41F+OA6vheNwcAQcX8fu0aiA13FJeLABq29BYJuTVgRj3cyC8q+tz19/dQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.3.tgz", + "integrity": "sha512-9BJNRtLwBh3OP22cln9g3AJdbAQUcjRHqA4BScx9k4RZpGqPokFr548zpeplxWhcwrIjT8qPebwH9CrRVy8Bsw==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.3.tgz", + "integrity": "sha512-Cauhr45KSo+wRUojs+1qfycQqQCAXTOvsWvkZ6xmEMAXLAm+f8RQGDQeP8CAf8Yeelnegcn6UNdvzdzLHhWDFg==", + "dev": true, + "optional": true + }, + "esbuild-linux-mips64le": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.3.tgz", + "integrity": "sha512-YVzJUGCncuuLm2boYyVeuMFsak4ZAhdiBwi0xNDZCC8sy+tS6Boe2mzcrD2uubv5JKAUOrpN186S1DtU4WgBgw==", + "dev": true, + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.3.tgz", + "integrity": "sha512-GU6CqqKtJEoyxC2QWHiJtmuOz9wc/jMv8ZloK2WwiGY5yMvAmM3PI103Dj7xcjebNTHBqITTUw/aigY1wx5A3w==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.3.tgz", + "integrity": "sha512-HVpkgpn4BQt4BPDAjTOpeMub6mzNWw6Y3gaLQJrpbO24pws6ZwYkY24OI3/Uo3LDCbH6856MM81JxECt92OWjA==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.3.tgz", + "integrity": "sha512-XncBVOtnEfUbPV4CaiFBxh38ychnBfwCxuTm9iAqcHzIwkmeNRN5qMzDyfE1jyfJje+Bbt6AvIfz6SdYt8/UEQ==", + "dev": true, + "optional": true + }, + "esbuild-windows-32": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.3.tgz", + "integrity": "sha512-ZlgDz7d1nk8wQACi+z8IDzNZVUlN9iprAme+1YSTsfFDlkyI8jeaGWPk9EQFNY7rJzsLVYm6eZ2mhPioc7uT5A==", + "dev": true, + "optional": true + }, + "esbuild-windows-64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.3.tgz", + "integrity": "sha512-YX7KvRez3TR+GudlQm9tND/ssj2FsF9vb8ZWzAoZOLxpPzE3y+3SFJNrfDzzQKPzJ0Pnh9KBP4gsaMwJjKHDhw==", + "dev": true, + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.3.tgz", + "integrity": "sha512-nP7H0Y2a6OJd3Qi1Q8sehhyP4x4JoXK4S5y6FzH2vgaJgiyEurzFxjUufGdMaw+RxtxiwD/uRndUgwaZ2JD8lg==", + "dev": true, + "optional": true + }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -3851,6 +5586,35 @@ "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } } }, "eslint-config-semistandard": { @@ -4037,12 +5801,6 @@ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true } } }, @@ -4083,6 +5841,13 @@ } } }, + "eslint-plugin-react-hooks": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", + "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", + "dev": true, + "requires": {} + }, "eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", @@ -4220,6 +5985,17 @@ "flat-cache": "^3.0.4" } }, + "final-stream": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.4.tgz", + "integrity": "sha512-kBaHWwbW2oRFp1WZeY28QrCwv5yJVJTO/tPHYIWLs3ezd2DvCXrBayqgG096tJPqZhUaCM/y1439LkAjnr7xaA==" + }, + "find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, "find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -4277,6 +6053,13 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "peer": true + }, "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -4332,13 +6115,11 @@ } }, "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "requires": { - "type-fest": "^0.20.2" - } + "peer": true }, "graceful-fs": { "version": "4.2.8", @@ -4381,6 +6162,16 @@ "has-symbols": "^1.0.2" } }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dev": true, + "peer": true, + "requires": { + "react-is": "^16.7.0" + } + }, "hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -4603,8 +6394,7 @@ "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { "version": "3.14.1", @@ -4616,12 +6406,25 @@ "esprima": "^4.0.0" } }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "peer": true + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -4635,12 +6438,13 @@ "dev": true }, "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, + "peer": true, "requires": { - "minimist": "^1.2.0" + "minimist": "^1.2.5" } }, "jsx-ast-utils": { @@ -4663,6 +6467,12 @@ "type-check": "~0.4.0" } }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -4673,6 +6483,18 @@ "parse-json": "^4.0.0", "pify": "^3.0.0", "strip-bom": "^3.0.0" + }, + "dependencies": { + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + } } }, "locate-path": { @@ -4722,7 +6544,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" } @@ -4741,13 +6562,6 @@ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "requires": { "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } } }, "mime": { @@ -4779,6 +6593,13 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "nanocolors": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", + "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", + "dev": true, + "peer": true + }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -4791,8 +6612,25 @@ "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", "requires": { "semver": "^7.3.5" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + } } }, + "node-releases": { + "version": "1.1.77", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", + "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", + "dev": true, + "peer": true + }, "normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -4816,8 +6654,7 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-inspect": { "version": "1.11.0", @@ -4931,13 +6768,15 @@ } }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "requires": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" } }, "path-exists": { @@ -4962,13 +6801,10 @@ "dev": true }, "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true }, "pify": { "version": "3.0.0", @@ -5042,6 +6878,16 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", @@ -5205,6 +7051,25 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, + "react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + } + }, "react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -5220,6 +7085,17 @@ "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", "path-type": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } } }, "read-pkg-up": { @@ -5277,6 +7153,12 @@ } } }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, "regexp.prototype.flags": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", @@ -5333,6 +7215,15 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, "semistandard": { "version": "16.0.1", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", @@ -5351,12 +7242,9 @@ } }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" }, "servatron": { "version": "2.2.3", @@ -5413,9 +7301,10 @@ } }, "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true }, "spdx-correct": { "version": "3.1.1", @@ -5533,6 +7422,12 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, + "stylis": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz", + "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg==", + "dev": true + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -5599,6 +7494,12 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, "tsconfig-paths": { "version": "3.11.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", @@ -5609,6 +7510,17 @@ "json5": "^1.0.1", "minimist": "^1.2.0", "strip-bom": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + } } }, "type-check": { @@ -5647,6 +7559,33 @@ "punycode": "^2.1.0" } }, + "urs": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/urs/-/urs-0.0.8.tgz", + "integrity": "sha512-LaSSPpr91XrVA3vW2zPupw4K6DSQEDKdL4yQZX1mO2fpljIMpB5zctrjRvxLurelWSgKsHsCmfHNCImscryirQ==", + "requires": {} + }, + "use-http": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.24.tgz", + "integrity": "sha512-JPAfcOWEyXdTolQSlmbVYhbLLrIw7rscFFY23R/OZpcZ3C1F0avQLUEi6eMIMpBcvo4HZk4aDd0rg8zVpYvjXA==", + "requires": { + "urs": "^0.0.8", + "use-ssr": "^1.0.24", + "utility-types": "^3.10.0" + } + }, + "use-ssr": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/use-ssr/-/use-ssr-1.0.24.tgz", + "integrity": "sha512-0MFps7ezL57/3o0yl4CvrHLlp9z20n1rQZV/lSRz7if+TUoM6POU1XdOvEjIgjgKeIhTEye1U0khrIYWCTWw4g==", + "requires": {} + }, + "utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==" + }, "uuid": { "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", @@ -5666,6 +7605,13 @@ "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0", "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + } } }, "validate-npm-package-license": { @@ -5742,6 +7688,12 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, "yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", diff --git a/package.json b/package.json index 59c79db..fd635c3 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,9 @@ "license": "AGPL-3.0", "dependencies": { "chalk": "^4.1.2", + "crypto-random-string": "^4.0.0", "debarrel": "^1.0.2", + "final-stream": "^2.0.4", "lockbase": "^1.3.1", "logslot": "^2.1.0", "minimist": "^1.2.5", @@ -25,13 +27,19 @@ "servatron": "^2.2.3", "server-destroy": "^1.0.1", "tcpocket": "^7.4.2", + "use-http": "^1.0.24", "uuid": "^8.3.2" }, "devDependencies": { + "@emotion/styled": "^11.3.0", "axios": "^0.22.0", - "basictap": "^2.2.1", + "basictap": "^2.2.2", "c8": "^7.9.0", + "esbuild": "^0.13.3", "eslint": "^7.32.0", + "eslint-plugin-react-hooks": "^4.2.0", + "react": "^17.0.2", + "react-dom": "^17.0.2", "semistandard": "^16.0.1", "wtfnode": "^0.9.1" } diff --git a/web/.eslintrc.json b/web/.eslintrc.json new file mode 100644 index 0000000..69eb78d --- /dev/null +++ b/web/.eslintrc.json @@ -0,0 +1,22 @@ +{ + "plugins": [ + "react-hooks" + ], + "extends": [ + "semistandard", + "standard-jsx", + "plugin:react/recommended" + ], + "rules": { + "react-hooks/rules-of-hooks": "error", + "react-hooks/exhaustive-deps": "warn", + "react/prop-types": "off", + "no-use-before-define": "off" + }, + "settings": { + "react": { + "pragma": "React", + "version": "detect" + } + } +} \ No newline at end of file diff --git a/web/css/index.css b/web/css/index.css new file mode 100644 index 0000000..c020a07 --- /dev/null +++ b/web/css/index.css @@ -0,0 +1,90 @@ +body { + margin: 0; + padding: 0; + font-family: arial; + background-color: #cedddd; +} + +app { + display: flex; + flex-direction: column; + height: 100vh; +} + +header { + background: white; + border-bottom: 5px solid #588486; + display: flex; + place-items: center; +} + +header > img { + margin-bottom: 5px; + height: 50px; + width: 55px; +} + +header > div { + display: flex; + flex-direction: column; + font-size: 20px; +} + +.form-field { + padding-bottom: 10px; +} + +.form-field label:after { + content: ':'; +} + +.form-field label { + display: block; + font-weight: bold; + padding-bottom: 5px; +} + +dialog > article > h1 { + margin: 0; + padding: 0; +} + +dialog { + background-color: rgba(0, 0, 0, 0.4); + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + height: 100vh; + width: 100vw; + margin: 0; + padding: 0; + overflow: auto; +} + +dialog > article { + margin: auto; + margin-top: max(10vh); + padding: 20px; + max-width: 500px; + margin-bottom: 20vh; + background-color: white; + border: 5px solid #588486; + border-radius: 10px; + box-shadow: 1px 1px 45px -25px black; +} + +.file-value { + display: flex; + place-items: center; + border: 2px solid #939393; + padding: 4px 0; + margin-bottom: 2px; +} + +.file-value > img { + width: 20px; + height: 20px; + margin-right: 5px; +} \ No newline at end of file diff --git a/web/index.html b/web/html/index.html similarity index 56% rename from web/index.html rename to web/html/index.html index 0e5488e..8e0943c 100644 --- a/web/index.html +++ b/web/html/index.html @@ -2,11 +2,12 @@ - - Document + canhazdb web + + - HELLO + \ No newline at end of file diff --git a/web/img/file.svg b/web/img/file.svg new file mode 100644 index 0000000..fc65063 --- /dev/null +++ b/web/img/file.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + diff --git a/web/img/fileWhite.svg b/web/img/fileWhite.svg new file mode 100644 index 0000000..5eaf003 --- /dev/null +++ b/web/img/fileWhite.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + diff --git a/web/img/folderWhite.svg b/web/img/folderWhite.svg new file mode 100644 index 0000000..5d48b96 --- /dev/null +++ b/web/img/folderWhite.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/web/img/logo.svg b/web/img/logo.svg new file mode 100644 index 0000000..11edb45 --- /dev/null +++ b/web/img/logo.svg @@ -0,0 +1,194 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/js/components/AuthenticationDialog.js b/web/js/components/AuthenticationDialog.js new file mode 100644 index 0000000..e505295 --- /dev/null +++ b/web/js/components/AuthenticationDialog.js @@ -0,0 +1,81 @@ +import React from 'react'; +import useLocalStorage from '../hooks/useLocalStorage.js'; +import FileInput from '../components/FileInput.js'; +import useApi from '../hooks/useApi.js'; +import useHttp from 'use-http'; + +function AuthenticationDialog (props) { + const { post, response, loading, error } = useHttp({ + cachePolicy: 'no-cache' + }); + const [settings, settingsState] = useApi('/api/settings'); + const [authenticationData, setAuthenticationData] = + useLocalStorage('authenticationData', {}); + + React.useEffect(() => { + if (!settings) { + return; + } + + if (!authenticationData.ca && settings.ca) { + setAuthenticationData({ + ...authenticationData, + ca: settings.ca + }); + } + }, [settings, authenticationData, setAuthenticationData]); + + function handleChange (name) { + return (file) => { + setAuthenticationData({ + ...authenticationData, + [name]: file + }); + }; + } + + async function submit (event) { + event.preventDefault(); + const response = await post('/api/authenticate', authenticationData); + const token = response.token; + props.onAuthenticate && props.onAuthenticate(token); + } + + const continueDisabled = !( + authenticationData && + authenticationData.ca && + authenticationData.cert && + authenticationData.privateKey + ); + + return ( +

+
+

Authenticate

+

+ Select the client tls files below to authenticate with this data server. +

+
+
+ + +
+
+ + +
+
+ + +
+ +
+ + +
+
+
+ ); +} + +export default AuthenticationDialog; diff --git a/web/js/components/FileInput.js b/web/js/components/FileInput.js new file mode 100644 index 0000000..6da155e --- /dev/null +++ b/web/js/components/FileInput.js @@ -0,0 +1,45 @@ +import React from 'react'; +import readFile from '../utils/readFile.js'; + +function FileInput (props) { + const [state, setState] = React.useState(props.value); + + React.useEffect(function () { + if (state !== props.value) { + setState(props.value); + } + }, [state, props]); + + async function handleChange (event) { + const file = event.target.files[0]; + + if (!file) { + setState(null); + return; + } + + const newState = { + name: file.name, + data: await readFile(file) + }; + + setState(newState); + props.onChange && props.onChange(newState); + } + + return ( + <> + {state + ? ( +
+ + {state.name} +
+ ) + : null} + {!props.readonly && } + + ); +} + +export default FileInput; diff --git a/web/js/components/MainUI.js b/web/js/components/MainUI.js new file mode 100644 index 0000000..2bd94b2 --- /dev/null +++ b/web/js/components/MainUI.js @@ -0,0 +1,110 @@ +import React from 'react'; +import useApi from '../hooks/useApi.js'; +import styled from '@emotion/styled'; + +const mainUiStyle = { + display: 'flex', + flexGrow: 1 +}; + +const CollectionsListView = styled.div(` + flex-grow: 1; + + ul { + margin: 5px; + padding: 0; + } + + ul > li { + margin: 0 0 3px 0; + padding: 0; + list-style: none; + } + ul > li > a > img { + height: 20px; + margin-right: 5px; + } + ul > li > a { + display: flex; + place-items: center; + padding: 5px; + background-color: white; + border-radius: 3px; + } + + .panel-title { + padding: 5px 10px 0 10px; + font-weight: bold; + } +`); + +const CollectionsTree = styled.div(` + background-color: white; + + ul { + padding: 0; + margin: 0; + } + + ul > li > a:hover { + background-color: black; + } + + ul > li > a > img { + height: 20px; + margin-right: 5px; + } + ul > li > a { + display: flex; + place-items: center; + background-color: #588486; + color: white; + padding: 5px 10px 5px 5px; + text-decoration: none; + } +`); + +function MainUI (props) { + const [collections, collectionsState] = useApi('/api/system.collections', { + headers: { + authorisation: props.authToken + } + }); + + return ( +
+ + + + + +
system.collections
+ +
+
+ ); +} + +export default MainUI; diff --git a/web/js/hooks/useApi.js b/web/js/hooks/useApi.js new file mode 100644 index 0000000..1984481 --- /dev/null +++ b/web/js/hooks/useApi.js @@ -0,0 +1,26 @@ +import React from 'react'; + +function useApi (url, options) { + const [data, setData] = React.useState(); + const [state, setState] = React.useState('idle'); + + React.useEffect(() => { + (async function () { + setState('loading'); + + try { + const response = await window.fetch(url, options); + const data = await response.json(); + setData(data); + setState('loaded'); + } catch (error) { + console.log(error); + setState('error'); + } + }()); + }, [url, JSON.stringify(options)]); + + return [data, state]; +} + +export default useApi; diff --git a/web/js/hooks/useLocalStorage.js b/web/js/hooks/useLocalStorage.js new file mode 100644 index 0000000..5471401 --- /dev/null +++ b/web/js/hooks/useLocalStorage.js @@ -0,0 +1,28 @@ +// https://usehooks.com/useLocalStorage/ + +import React from 'react'; + +function useLocalStorage (key, initialValue) { + const [storedValue, setStoredValue] = React.useState(() => { + try { + const item = window.localStorage.getItem(key); + return item ? JSON.parse(item) : initialValue; + } catch (error) { + console.error(error); + return initialValue; + } + }); + const setValue = (value) => { + try { + const valueToStore = + value instanceof Function ? value(storedValue) : value; + setStoredValue(valueToStore); + window.localStorage.setItem(key, JSON.stringify(valueToStore)); + } catch (error) { + console.log(error); + } + }; + return [storedValue, setValue]; +} + +export default useLocalStorage; diff --git a/web/js/index.js b/web/js/index.js new file mode 100644 index 0000000..d96810c --- /dev/null +++ b/web/js/index.js @@ -0,0 +1,65 @@ +import React from 'react'; +import ReactDOM from 'react-dom'; + +import AuthenticationDialog from './components/AuthenticationDialog.js'; +import MainUI from './components/MainUI.js'; +import useLocalStorage from './hooks/useLocalStorage.js'; + +async function checkToken (authToken) { + if (!authToken) { + return false; + } + + try { + const collectionsResponse = await window.fetch('/api/authenticate/' + authToken, { + headers: { + authorisation: authToken + } + }); + + return collectionsResponse.status === 200; + } catch (error) { + console.error(error); + return false; + } +} + +function App () { + const [authToken, setAuthToken] = useLocalStorage('authToken'); + const [authValid, setAuthValid] = React.useState(false); + + function handleAuthenticate (token) { + setAuthToken(token); + } + + React.useEffect(() => { + checkToken(authToken).then(valid => { + if (!valid) { + setAuthToken(null); + } else { + setAuthValid(true); + } + }); + }, [authToken, setAuthToken]); + + return ( + <> +
+ +
+ canhazdb + Web UI +
+
+ + {!authToken && } + + {authValid && } + + ); +} + +document.addEventListener('DOMContentLoaded', function () { + const appElement = document.body.getElementsByTagName('app')[0]; + ReactDOM.render(, appElement); +}); diff --git a/web/js/utils/readFile.js b/web/js/utils/readFile.js new file mode 100644 index 0000000..b7068ba --- /dev/null +++ b/web/js/utils/readFile.js @@ -0,0 +1,14 @@ +function readFile (file) { + return new Promise(resolve => { + const reader = new window.FileReader(); + + reader.onload = function (e) { + const content = reader.result; + resolve(content); + }; + + reader.readAsText(file); + }); +} + +export default readFile; diff --git a/web/meta.json b/web/meta.json new file mode 100644 index 0000000..4abee1e --- /dev/null +++ b/web/meta.json @@ -0,0 +1,1053 @@ +{ + "inputs": { + "node_modules/object-assign/index.js": { + "bytes": 2108, + "imports": [] + }, + "node_modules/react/cjs/react.development.js": { + "bytes": 72141, + "imports": [ + { + "path": "node_modules/object-assign/index.js", + "kind": "require-call" + } + ] + }, + "node_modules/react/index.js": { + "bytes": 190, + "imports": [ + { + "path": "node_modules/react/cjs/react.development.js", + "kind": "require-call" + } + ] + }, + "node_modules/scheduler/cjs/scheduler.development.js": { + "bytes": 17563, + "imports": [] + }, + "node_modules/scheduler/index.js": { + "bytes": 198, + "imports": [ + { + "path": "node_modules/scheduler/cjs/scheduler.development.js", + "kind": "require-call" + } + ] + }, + "node_modules/scheduler/cjs/scheduler-tracing.development.js": { + "bytes": 9001, + "imports": [] + }, + "node_modules/scheduler/tracing.js": { + "bytes": 214, + "imports": [ + { + "path": "node_modules/scheduler/cjs/scheduler-tracing.development.js", + "kind": "require-call" + } + ] + }, + "node_modules/react-dom/cjs/react-dom.development.js": { + "bytes": 894563, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "require-call" + }, + { + "path": "node_modules/object-assign/index.js", + "kind": "require-call" + }, + { + "path": "node_modules/scheduler/index.js", + "kind": "require-call" + }, + { + "path": "node_modules/scheduler/tracing.js", + "kind": "require-call" + } + ] + }, + "node_modules/react-dom/index.js": { + "bytes": 1363, + "imports": [ + { + "path": "node_modules/react-dom/cjs/react-dom.development.js", + "kind": "require-call" + } + ] + }, + "web/js/hooks/useLocalStorage.js": { + "bytes": 752, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + } + ] + }, + "web/js/utils/readFile.js": { + "bytes": 273, + "imports": [] + }, + "web/img/file.svg": { + "bytes": 1637, + "imports": [] + }, + "web/js/components/FileInput.js": { + "bytes": 919, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "web/js/utils/readFile.js", + "kind": "import-statement" + }, + { + "path": "web/img/file.svg", + "kind": "require-call" + } + ] + }, + "web/js/hooks/useApi.js": { + "bytes": 589, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-ssr/dist/useSSR.js": { + "bytes": 2079, + "imports": [] + }, + "node_modules/urs/dist/useRefState.js": { + "bytes": 1200, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "require-call" + } + ] + }, + "node_modules/use-http/dist/esm/types.js": { + "bytes": 3133, + "imports": [] + }, + "node_modules/use-http/dist/esm/utils.js": { + "bytes": 13074, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-ssr/dist/useSSR.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/FetchContext.js": { + "bytes": 231, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/defaults.js": { + "bytes": 1541, + "imports": [ + { + "path": "node_modules/use-http/dist/esm/types.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/useFetchArgs.js": { + "bytes": 5012, + "imports": [ + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + }, + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/FetchContext.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/defaults.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/doFetchArgs.js": { + "bytes": 9182, + "imports": [ + { + "path": "node_modules/use-http/dist/esm/types.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/storage/localStorage.js": { + "bytes": 5977, + "imports": [ + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/storage/memoryStorage.js": { + "bytes": 5070, + "imports": [] + }, + "node_modules/use-http/dist/esm/useCache.js": { + "bytes": 1134, + "imports": [ + { + "path": "node_modules/use-ssr/dist/useSSR.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/types.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/storage/localStorage.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/storage/memoryStorage.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/useFetch.js": { + "bytes": 18694, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-ssr/dist/useSSR.js", + "kind": "import-statement" + }, + { + "path": "node_modules/urs/dist/useRefState.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/types.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useFetchArgs.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/doFetchArgs.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useCache.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/useMutation.js": { + "bytes": 2194, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useFetch.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/FetchContext.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/useQuery.js": { + "bytes": 2105, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useFetch.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/FetchContext.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/utils.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/Provider.js": { + "bytes": 692, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-ssr/dist/useSSR.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/FetchContext.js", + "kind": "import-statement" + } + ] + }, + "node_modules/use-http/dist/esm/index.js": { + "bytes": 210, + "imports": [ + { + "path": "node_modules/use-http/dist/esm/useFetch.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useFetch.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useMutation.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/useQuery.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/Provider.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/FetchContext.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/types.js", + "kind": "import-statement" + } + ] + }, + "web/js/components/AuthenticationDialog.js": { + "bytes": 2383, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "web/js/hooks/useLocalStorage.js", + "kind": "import-statement" + }, + { + "path": "web/js/components/FileInput.js", + "kind": "import-statement" + }, + { + "path": "web/js/hooks/useApi.js", + "kind": "import-statement" + }, + { + "path": "node_modules/use-http/dist/esm/index.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@babel/runtime/helpers/esm/extends.js": { + "bytes": 397, + "imports": [] + }, + "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js": { + "bytes": 195, + "imports": [] + }, + "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js": { + "bytes": 4392, + "imports": [ + { + "path": "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js": { + "bytes": 4455, + "imports": [] + }, + "node_modules/stylis/src/Enum.js": { + "bytes": 595, + "imports": [] + }, + "node_modules/stylis/src/Utility.js": { + "bytes": 1944, + "imports": [] + }, + "node_modules/stylis/src/Tokenizer.js": { + "bytes": 4677, + "imports": [ + { + "path": "node_modules/stylis/src/Utility.js", + "kind": "import-statement" + } + ] + }, + "node_modules/stylis/src/Parser.js": { + "bytes": 5365, + "imports": [ + { + "path": "node_modules/stylis/src/Enum.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Utility.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Tokenizer.js", + "kind": "import-statement" + } + ] + }, + "node_modules/stylis/src/Prefixer.js": { + "bytes": 4791, + "imports": [ + { + "path": "node_modules/stylis/src/Enum.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Utility.js", + "kind": "import-statement" + } + ] + }, + "node_modules/stylis/src/Serializer.js": { + "bytes": 944, + "imports": [ + { + "path": "node_modules/stylis/src/Enum.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Utility.js", + "kind": "import-statement" + } + ] + }, + "node_modules/stylis/src/Middleware.js": { + "bytes": 3019, + "imports": [ + { + "path": "node_modules/stylis/src/Enum.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Utility.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Tokenizer.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Serializer.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Prefixer.js", + "kind": "import-statement" + } + ] + }, + "node_modules/stylis/index.js": { + "bytes": 236, + "imports": [ + { + "path": "node_modules/stylis/src/Enum.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Utility.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Parser.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Prefixer.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Tokenizer.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Serializer.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/src/Middleware.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js": { + "bytes": 372, + "imports": [] + }, + "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js": { + "bytes": 10574, + "imports": [ + { + "path": "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/stylis/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "node_modules/react-is/cjs/react-is.development.js": { + "bytes": 6980, + "imports": [] + }, + "node_modules/react-is/index.js": { + "bytes": 196, + "imports": [ + { + "path": "node_modules/react-is/cjs/react-is.development.js", + "kind": "require-call" + } + ] + }, + "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js": { + "bytes": 2743, + "imports": [ + { + "path": "node_modules/react-is/index.js", + "kind": "require-call" + } + ] + }, + "node_modules/@emotion/react/isolated-hoist-non-react-statics-do-not-use-this-in-your-code/dist/emotion-react-isolated-hoist-non-react-statics-do-not-use-this-in-your-code.browser.esm.js": { + "bytes": 452, + "imports": [ + { + "path": "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js": { + "bytes": 1580, + "imports": [] + }, + "node_modules/@emotion/hash/dist/hash.browser.esm.js": { + "bytes": 1648, + "imports": [] + }, + "node_modules/@emotion/unitless/dist/unitless.browser.esm.js": { + "bytes": 899, + "imports": [] + }, + "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js": { + "bytes": 10992, + "imports": [ + { + "path": "node_modules/@emotion/hash/dist/hash.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/unitless/dist/unitless.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js": { + "bytes": 6828, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@babel/runtime/helpers/esm/extends.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/react/isolated-hoist-non-react-statics-do-not-use-this-in-your-code/dist/emotion-react-isolated-hoist-non-react-statics-do-not-use-this-in-your-code.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/react/dist/emotion-react.browser.esm.js": { + "bytes": 10066, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@babel/runtime/helpers/esm/extends.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/react/isolated-hoist-non-react-statics-do-not-use-this-in-your-code/dist/emotion-react-isolated-hoist-non-react-statics-do-not-use-this-in-your-code.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js": { + "bytes": 6082, + "imports": [ + { + "path": "node_modules/@babel/runtime/helpers/esm/extends.js", + "kind": "import-statement" + }, + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/react/dist/emotion-react.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js": { + "bytes": 1667, + "imports": [ + { + "path": "node_modules/@babel/runtime/helpers/esm/extends.js", + "kind": "import-statement" + }, + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/react/dist/emotion-react.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", + "kind": "import-statement" + } + ] + }, + "web/img/folderWhite.svg": { + "bytes": 545, + "imports": [] + }, + "web/js/components/MainUI.js": { + "bytes": 2201, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "web/js/hooks/useApi.js", + "kind": "import-statement" + }, + { + "path": "node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js", + "kind": "import-statement" + }, + { + "path": "web/img/folderWhite.svg", + "kind": "require-call" + }, + { + "path": "web/img/file.svg", + "kind": "require-call" + } + ] + }, + "web/img/logo.svg": { + "bytes": 34195, + "imports": [] + }, + "web/js/index.js": { + "bytes": 1552, + "imports": [ + { + "path": "node_modules/react/index.js", + "kind": "import-statement" + }, + { + "path": "node_modules/react-dom/index.js", + "kind": "import-statement" + }, + { + "path": "web/js/components/AuthenticationDialog.js", + "kind": "import-statement" + }, + { + "path": "web/js/components/MainUI.js", + "kind": "import-statement" + }, + { + "path": "web/js/hooks/useLocalStorage.js", + "kind": "import-statement" + }, + { + "path": "web/img/logo.svg", + "kind": "require-call" + } + ] + } + }, + "outputs": { + "web/public/file-J4MVLT6G.svg": { + "imports": [], + "exports": [], + "inputs": { + "web/img/file.svg": { + "bytesInOutput": 1637 + } + }, + "bytes": 1637 + }, + "web/public/folderWhite-DYGC7V55.svg": { + "imports": [], + "exports": [], + "inputs": { + "web/img/folderWhite.svg": { + "bytesInOutput": 545 + } + }, + "bytes": 545 + }, + "web/public/logo-CIAK2MM6.svg": { + "imports": [], + "exports": [], + "inputs": { + "web/img/logo.svg": { + "bytesInOutput": 34195 + } + }, + "bytes": 34195 + }, + "web/public/index.min.js.map": { + "imports": [], + "exports": [], + "inputs": {}, + "bytes": 1527811 + }, + "web/public/index.min.js": { + "imports": [], + "exports": [], + "entryPoint": "web/js/index.js", + "inputs": { + "node_modules/object-assign/index.js": { + "bytesInOutput": 966 + }, + "node_modules/react/cjs/react.development.js": { + "bytesInOutput": 23921 + }, + "node_modules/react/index.js": { + "bytesInOutput": 51 + }, + "node_modules/scheduler/cjs/scheduler.development.js": { + "bytesInOutput": 5240 + }, + "node_modules/scheduler/index.js": { + "bytesInOutput": 51 + }, + "node_modules/scheduler/cjs/scheduler-tracing.development.js": { + "bytesInOutput": 2956 + }, + "node_modules/scheduler/tracing.js": { + "bytesInOutput": 51 + }, + "node_modules/react-dom/cjs/react-dom.development.js": { + "bytesInOutput": 252296 + }, + "node_modules/react-dom/index.js": { + "bytesInOutput": 51 + }, + "web/img/file.svg": { + "bytesInOutput": 85 + }, + "node_modules/use-ssr/dist/useSSR.js": { + "bytesInOutput": 1185 + }, + "node_modules/urs/dist/useRefState.js": { + "bytesInOutput": 547 + }, + "node_modules/react-is/cjs/react-is.development.js": { + "bytesInOutput": 2579 + }, + "node_modules/react-is/index.js": { + "bytesInOutput": 51 + }, + "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js": { + "bytesInOutput": 1024 + }, + "web/img/folderWhite.svg": { + "bytesInOutput": 85 + }, + "web/img/logo.svg": { + "bytesInOutput": 85 + }, + "web/js/index.js": { + "bytesInOutput": 903 + }, + "web/js/components/AuthenticationDialog.js": { + "bytesInOutput": 1410 + }, + "web/js/hooks/useLocalStorage.js": { + "bytesInOutput": 314 + }, + "web/js/components/FileInput.js": { + "bytesInOutput": 534 + }, + "web/js/utils/readFile.js": { + "bytesInOutput": 136 + }, + "web/js/hooks/useApi.js": { + "bytesInOutput": 307 + }, + "node_modules/use-http/dist/esm/useFetch.js": { + "bytesInOutput": 7348 + }, + "node_modules/use-http/dist/esm/types.js": { + "bytesInOutput": 410 + }, + "node_modules/use-http/dist/esm/utils.js": { + "bytesInOutput": 5200 + }, + "node_modules/use-http/dist/esm/useFetchArgs.js": { + "bytesInOutput": 1958 + }, + "node_modules/use-http/dist/esm/FetchContext.js": { + "bytesInOutput": 78 + }, + "node_modules/use-http/dist/esm/defaults.js": { + "bytesInOutput": 777 + }, + "node_modules/use-http/dist/esm/doFetchArgs.js": { + "bytesInOutput": 3230 + }, + "node_modules/use-http/dist/esm/useCache.js": { + "bytesInOutput": 543 + }, + "node_modules/use-http/dist/esm/storage/localStorage.js": { + "bytesInOutput": 2874 + }, + "node_modules/use-http/dist/esm/storage/memoryStorage.js": { + "bytesInOutput": 2445 + }, + "node_modules/use-http/dist/esm/index.js": { + "bytesInOutput": 0 + }, + "node_modules/use-http/dist/esm/useMutation.js": { + "bytesInOutput": 16 + }, + "node_modules/use-http/dist/esm/useQuery.js": { + "bytesInOutput": 16 + }, + "node_modules/use-http/dist/esm/Provider.js": { + "bytesInOutput": 28 + }, + "web/js/components/MainUI.js": { + "bytesInOutput": 1587 + }, + "node_modules/@babel/runtime/helpers/esm/extends.js": { + "bytesInOutput": 211 + }, + "node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js": { + "bytesInOutput": 1109 + }, + "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js": { + "bytesInOutput": 110 + }, + "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js": { + "bytesInOutput": 4139 + }, + "node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js": { + "bytesInOutput": 2345 + }, + "node_modules/@emotion/react/dist/emotion-react.browser.esm.js": { + "bytesInOutput": 4030 + }, + "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js": { + "bytesInOutput": 1900 + }, + "node_modules/stylis/src/Enum.js": { + "bytesInOutput": 106 + }, + "node_modules/stylis/src/Utility.js": { + "bytesInOutput": 488 + }, + "node_modules/stylis/src/Tokenizer.js": { + "bytesInOutput": 1414 + }, + "node_modules/stylis/src/Parser.js": { + "bytesInOutput": 1551 + }, + "node_modules/stylis/src/Prefixer.js": { + "bytesInOutput": 2142 + }, + "node_modules/stylis/src/Serializer.js": { + "bytesInOutput": 277 + }, + "node_modules/stylis/src/Middleware.js": { + "bytesInOutput": 610 + }, + "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js": { + "bytesInOutput": 3522 + }, + "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js": { + "bytesInOutput": 1018 + }, + "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js": { + "bytesInOutput": 356 + }, + "node_modules/@emotion/hash/dist/hash.browser.esm.js": { + "bytesInOutput": 563 + }, + "node_modules/@emotion/unitless/dist/unitless.browser.esm.js": { + "bytesInOutput": 653 + }, + "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js": { + "bytesInOutput": 4743 + } + }, + "bytes": 355064 + } + } +} \ No newline at end of file From f0e8d3ce1d2b7ae63aa5d730a3ffec74b1a72968 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 3 Oct 2021 21:06:25 +0100 Subject: [PATCH 50/73] Guard notifiers cleanup --- lib/modules/notify/index.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index 16f9f59..fcc3000 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -108,6 +108,10 @@ async function notifyModule (context) { }); context.on('client.closed', socket => { + if (!socket.state.notifiers) { + return; + } + socket.state.notifiers.forEach(notifier => { context.notify.unwatch(notifier.path); }); From df9587c6a510aa0e5ba8097c6ac778ca1fd613f9 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 8 Oct 2021 23:28:37 +0100 Subject: [PATCH 51/73] Fix locking cleanup logic --- demo.sh | 2 + lib/constants.js | 41 +- lib/createHandler.js | 1 + lib/index.js | 15 +- lib/modules/lock/controllers/external/lock.js | 3 +- lib/modules/lock/controllers/internal/lock.js | 3 + lib/modules/lock/index.js | 17 + lib/modules/notify/index.js | 2 +- lib/utils/insertDefaultDocument.js | 67 +- lib/utils/waitUntil.js | 3 + package-lock.json | 678 +++++++++--------- package.json | 8 +- test/features/lock.js | 21 + test/features/notify.js | 2 +- test/index.js | 8 + 15 files changed, 495 insertions(+), 376 deletions(-) create mode 100755 demo.sh diff --git a/demo.sh b/demo.sh new file mode 100755 index 0000000..ec672c7 --- /dev/null +++ b/demo.sh @@ -0,0 +1,2 @@ +node lib/cli.js --tls-ca ./certs/ca.cert.pem --tls-cert ./certs/localhost.cert.pem --tls-key ./certs/localhost.privkey.pem --http-host 127.0.0.1 --http-port 8001 --web-host 127.0.0.1 --web-port 8080 + diff --git a/lib/constants.js b/lib/constants.js index 512a9df..296e107 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -16,26 +16,27 @@ const constants = { PATCH: 13, DELETE: 14, - QUERY: 15, - FIELDS: 16, - LIMIT: 17, - ORDER: 18, - - NOTIFY: 19, - NOTIFY_ON: 20, - NOTIFY_OFF: 21, - NOTIFY_PATH: 22, - - LOCK: 23, - UNLOCK: 24, - LOCK_ID: 25, - LOCK_STRATEGY: 26, - LOCK_STRATEGY_FAIL: 27, - LOCK_STRATEGY_WAIT: 28, - LOCK_KEYS: 29, - - COMMAND: 30, - STATUS: 31, + QUERY: 20, + FIELDS: 21, + LIMIT: 22, + ORDER: 23, + + NOTIFY: 30, + NOTIFY_ON: 31, + NOTIFY_OFF: 32, + NOTIFY_PATH: 33, + + LOCK: 40, + UNLOCK: 41, + LOCK_ID: 42, + LOCK_STRATEGY: 43, + LOCK_STRATEGY_FAIL: 44, + LOCK_STRATEGY_WAIT: 45, + LOCK_KEYS: 46, + LOCK_ORIGIN: 47, + + COMMAND: 50, + STATUS: 51, ERROR: 100, diff --git a/lib/createHandler.js b/lib/createHandler.js index 3dc7789..cd0ace0 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -78,6 +78,7 @@ function createHandler (context) { }); socket.on('close', () => { + socket.activeRequests = 0; waitPromise && waitPromise.cancel(); const clientIndex = context.clients.indexOf(socket); diff --git a/lib/index.js b/lib/index.js index f7e2e6c..b0489ca 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,5 +1,4 @@ import logslot from 'logslot'; -import lockbase from 'lockbase'; import EventEmitter from 'events'; import prepareOptions from './prepareOptions.js'; @@ -79,8 +78,6 @@ async function canhazdb (rawOptions) { context.driver = await driver(context); - context.locks = lockbase(); - const tcpServer = createHandler(context); tcpServer.open(); @@ -183,7 +180,7 @@ async function canhazdb (rawOptions) { Object.assign(new Error('server was closed'), { status: c.STATUS_SERVER_CLOSED }) ); - await waitUntil(() => { + const activeRequestsWait = waitUntil(() => { const activeRequests = context.clients.reduce((total, client) => { return total + client.activeRequests; }, 0); @@ -191,6 +188,16 @@ async function canhazdb (rawOptions) { return activeRequests === 0; }); + const workaroundTimer = setTimeout(() => { + // This shouldn't be needed. The only time it should timeout is + // because we can't remove the activeRequests for a client that + // has unexpectantly disconnected. + console.log('TODO: [FIX_001]'); + activeRequestsWait.cancel(); + }, 500); + await activeRequestsWait; + clearTimeout(workaroundTimer); + await new Promise(resolve => tcpServer.close(resolve)); clearTimeout(context.syncNodesInfoTimer); diff --git a/lib/modules/lock/controllers/external/lock.js b/lib/modules/lock/controllers/external/lock.js index e26e203..2f9038b 100644 --- a/lib/modules/lock/controllers/external/lock.js +++ b/lib/modules/lock/controllers/external/lock.js @@ -10,7 +10,8 @@ async function lockController ({ context, socket, request, response }) { const results = await context.sendToAllNodes(context, c.LOCK, { [c.INTERNAL]: context.thisNode.name, [c.LOCK_ID]: id, - [c.LOCK_KEYS]: requestData[c.LOCK_KEYS] + [c.LOCK_KEYS]: requestData[c.LOCK_KEYS], + [c.LOCK_ORIGIN]: context.thisNode.name }); const errors = results.filter(result => { diff --git a/lib/modules/lock/controllers/internal/lock.js b/lib/modules/lock/controllers/internal/lock.js index 4062eb7..d5df5f1 100644 --- a/lib/modules/lock/controllers/internal/lock.js +++ b/lib/modules/lock/controllers/internal/lock.js @@ -5,7 +5,10 @@ async function lockController ({ context, socket, request, response }) { const keys = requestData[c.LOCK_KEYS]; const id = requestData[c.LOCK_ID]; + const lockOrigin = requestData[c.LOCK_ORIGIN]; + context.locks.byNode[lockOrigin] = context.locks.byNode[lockOrigin] || []; + context.locks.byNode[lockOrigin].push(id); await context.locks.add(keys, id); response.reply(c.STATUS_OK, { diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index feace1c..8383840 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -1,4 +1,5 @@ import logslot from 'logslot'; +import lockbase from 'lockbase'; import systemLocksController from './controllers/external/systemLocksController.js'; import externalLockController from './controllers/external/lock.js'; import externalUnlockController from './controllers/external/unlock.js'; @@ -11,6 +12,9 @@ import c from '../../constants.js'; const log = logslot('canhazdb.lock'); function lockModule (context) { + context.locks = lockbase(); + context.locks.byNode = {}; + context.controllers.external.add({ command: c.LOCK, handler: externalLockController @@ -52,6 +56,19 @@ function lockModule (context) { }); }); + context.on('node.disconnected', async node => { + log.info('cleaning up locks originating from node [' + node.name + ']'); + + if (context.locks.byNode[node?.name]) { + await Promise.all( + context.locks.byNode[node?.name].map(lockId => { + return context.locks.remove(lockId); + }) + ); + delete context.locks.byNode[node?.name]; + } + }); + context.on('client.connected', socket => { socket.state.locks = []; }); diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index fcc3000..89fd1eb 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -96,7 +96,7 @@ async function notifyModule (context) { }); context.on('node.infoReceived', node => { - node.info.internalNotifiers.forEach(newNotifier => { + node.info.internalNotifiers?.forEach(newNotifier => { const existingNotifier = context.notify.internalNotifiers.find( notifier => notifier.nodeName === newNotifier.nodeName && notifier.path === newNotifier.path ); diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index 577c6bf..a41f5af 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -1,21 +1,62 @@ -import canhazdbClient from 'canhazdb-client'; +import logslot from 'logslot'; +import c from '../constants.js'; +import waitUntil from '../utils/waitUntil.js'; +const log = logslot('canhazdb.utils.insertDefaultDocument'); -async function insertDefaultDocument (context, collectionId, document) { - const client = await canhazdbClient(context.clientConfig); - const lockId = await client.lock([collectionId]); - const existingDocument = await client.getOne(collectionId, { - query: { - id: document.id - } - }); +async function miniClient (context) { + await waitUntil(() => context?.thisNode?.client); + + async function lock (lockKeys) { + const results = await context.thisNode.client.send(c.LOCK, { + [c.LOCK_KEYS]: lockKeys + }); + + const lockId = results.json()[c.LOCK_ID]; + return lockId; + } - if (!existingDocument) { - await client.post(collectionId, document, { - lockId + async function unlock (lockId) { + return context.thisNode.client.send(c.UNLOCK, { + [c.LOCK_ID]: lockId }); } - await client.unlock(lockId); + function getOne () { + + } + + function post () { + + } + + return { + lock, + unlock, + getOne, + post + }; +} + +async function insertDefaultDocument (context, collectionId, document) { + try { + const client = await miniClient(context); + const lockId = await client.lock([collectionId]); + const existingDocument = await client.getOne(collectionId, { + query: { + id: document.id + } + }); + + if (!existingDocument) { + await client.post(collectionId, document, { + lockId + }); + } + + await client.unlock(lockId); + } catch (error) { + log.warn('could not insert default document [' + collectionId + ']', { message: error.message }); + } } export default insertDefaultDocument; diff --git a/lib/utils/waitUntil.js b/lib/utils/waitUntil.js index c8b444b..2929c28 100644 --- a/lib/utils/waitUntil.js +++ b/lib/utils/waitUntil.js @@ -1,5 +1,6 @@ function waitUntil (fn) { let timer; + let storedResolve; function attempt (resolve) { const value = fn(); @@ -12,10 +13,12 @@ function waitUntil (fn) { } const promise = new Promise((resolve, reject) => { + storedResolve = resolve; attempt(resolve); }); promise.cancel = () => { + storedResolve(); clearTimeout(timer); }; diff --git a/package-lock.json b/package-lock.json index d2f6e2c..e16c2cf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,16 +20,16 @@ "node-ejdb-lite": "^3.4.4", "servatron": "^2.2.3", "server-destroy": "^1.0.1", - "tcpocket": "^7.4.2", - "use-http": "^1.0.24", + "tcpocket": "^7.4.3", + "use-http": "^1.0.26", "uuid": "^8.3.2" }, "devDependencies": { "@emotion/styled": "^11.3.0", "axios": "^0.22.0", "basictap": "^2.2.2", - "c8": "^7.9.0", - "esbuild": "^0.13.3", + "c8": "^7.10.0", + "esbuild": "^0.13.4", "eslint": "^7.32.0", "eslint-plugin-react-hooks": "^4.2.0", "react": "^17.0.2", @@ -39,9 +39,9 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", - "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", + "integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==", "dev": true, "dependencies": { "@babel/highlight": "^7.14.5" @@ -61,21 +61,21 @@ } }, "node_modules/@babel/core": { - "version": "7.15.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", - "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", + "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", "dev": true, "peer": true, "dependencies": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", + "@babel/code-frame": "^7.15.8", + "@babel/generator": "^7.15.8", "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.8", "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.5", + "@babel/parser": "^7.15.8", "@babel/template": "^7.15.4", "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4", + "@babel/types": "^7.15.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -92,13 +92,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", - "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", + "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", "dev": true, "peer": true, "dependencies": { - "@babel/types": "^7.15.4", + "@babel/types": "^7.15.6", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -192,9 +192,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", - "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz", + "integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==", "dev": true, "peer": true, "dependencies": { @@ -395,9 +395,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", - "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz", + "integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==", "dev": true, "peer": true, "bin": { @@ -674,6 +674,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", @@ -797,16 +809,16 @@ } }, "node_modules/array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", + "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", + "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" + "is-string": "^1.0.7" }, "engines": { "node": ">= 0.4" @@ -904,17 +916,17 @@ } }, "node_modules/browserslist": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", - "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", + "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", "dev": true, "peer": true, "dependencies": { - "caniuse-lite": "^1.0.30001261", - "electron-to-chromium": "^1.3.854", + "caniuse-lite": "^1.0.30001264", + "electron-to-chromium": "^1.3.857", "escalade": "^3.1.1", - "nanocolors": "^0.2.12", - "node-releases": "^1.1.76" + "node-releases": "^1.1.77", + "picocolors": "^0.2.1" }, "bin": { "browserslist": "cli.js" @@ -928,15 +940,15 @@ } }, "node_modules/c8": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.9.0.tgz", - "integrity": "sha512-aQ7dC8gASnKdBwHUuYuzsdKCEDrKnWr7ZuZUnf4CNAL81oyKloKrs7H7zYvcrmCtIrMToudBSUhq2q+LLBMvgg==", + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.10.0.tgz", + "integrity": "sha512-OAwfC5+emvA6R7pkYFVBTOtI5ruf9DahffGmIqUc9l6wEh0h7iAFP6dt/V9Ioqlr2zW5avX9U9/w1I4alTRHkA==", "dependencies": { "@bcoe/v8-coverage": "^0.2.3", "@istanbuljs/schema": "^0.1.2", "find-up": "^5.0.0", "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^3.0.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", "rimraf": "^3.0.0", @@ -975,9 +987,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001263", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", - "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", + "version": "1.0.30001265", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", + "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", "dev": true, "peer": true, "funding": { @@ -1027,9 +1039,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/colorette": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.13.tgz", - "integrity": "sha512-lvA4NbohpqUypdfTtJpb5BwhdUrwi1ACLM6uW3lEj0CWKOXrCSJlexv9IgUUN6obat0YGTSy7wfLDLEfOvzFLA==", + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", "dev": true }, "node_modules/concat-map": { @@ -1088,17 +1100,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/crypto-random-string/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/csstype": { "version": "3.0.9", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", @@ -1158,9 +1159,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.3.857", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", - "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", + "version": "1.3.863", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.863.tgz", + "integrity": "sha512-C+dLP4xM1DCqvEUjtqCGhd6DJGnXq1t03QR2ZxEWUQPkaXxDlzPUyWsSh17LHLQBEfmBCRfTbA3LpjiVikWsxg==", "dev": true, "peer": true }, @@ -1191,9 +1192,9 @@ } }, "node_modules/es-abstract": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.0.tgz", - "integrity": "sha512-oWPrF+7P1nGv/rw9oIInwdkmI1qediEJSvVfHFryBd8mWllCKB5tke3aKyf51J6chgyKmi6mODqdnin2yb88Nw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", "dev": true, "dependencies": { "call-bind": "^1.0.2", @@ -1242,37 +1243,37 @@ } }, "node_modules/esbuild": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.3.tgz", - "integrity": "sha512-98xovMLKnyhv3gcReUuAEi5Ig1rK6SIgvsJuBIcfwzqGSEHsV8UJjMlmkhHoHMf9XZybMpE9Zax8AA8f7i2hlQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.4.tgz", + "integrity": "sha512-wMA5eUwpavTBiNl+It6j8OQuKVh69l6z4DKDLzoTIqC+gChnPpcmqdA8WNHptUHRnfyML+mKEQPlW7Mybj8gHg==", "dev": true, "hasInstallScript": true, "bin": { "esbuild": "bin/esbuild" }, "optionalDependencies": { - "esbuild-android-arm64": "0.13.3", - "esbuild-darwin-64": "0.13.3", - "esbuild-darwin-arm64": "0.13.3", - "esbuild-freebsd-64": "0.13.3", - "esbuild-freebsd-arm64": "0.13.3", - "esbuild-linux-32": "0.13.3", - "esbuild-linux-64": "0.13.3", - "esbuild-linux-arm": "0.13.3", - "esbuild-linux-arm64": "0.13.3", - "esbuild-linux-mips64le": "0.13.3", - "esbuild-linux-ppc64le": "0.13.3", - "esbuild-openbsd-64": "0.13.3", - "esbuild-sunos-64": "0.13.3", - "esbuild-windows-32": "0.13.3", - "esbuild-windows-64": "0.13.3", - "esbuild-windows-arm64": "0.13.3" + "esbuild-android-arm64": "0.13.4", + "esbuild-darwin-64": "0.13.4", + "esbuild-darwin-arm64": "0.13.4", + "esbuild-freebsd-64": "0.13.4", + "esbuild-freebsd-arm64": "0.13.4", + "esbuild-linux-32": "0.13.4", + "esbuild-linux-64": "0.13.4", + "esbuild-linux-arm": "0.13.4", + "esbuild-linux-arm64": "0.13.4", + "esbuild-linux-mips64le": "0.13.4", + "esbuild-linux-ppc64le": "0.13.4", + "esbuild-openbsd-64": "0.13.4", + "esbuild-sunos-64": "0.13.4", + "esbuild-windows-32": "0.13.4", + "esbuild-windows-64": "0.13.4", + "esbuild-windows-arm64": "0.13.4" } }, "node_modules/esbuild-android-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.3.tgz", - "integrity": "sha512-jc9E8vGTHkzb0Vwl74H8liANV9BWsqtzLHaKvcsRgf1M+aVCBSF0gUheduAKfDsbDMT0judeMLhwBP34EUesTA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.4.tgz", + "integrity": "sha512-elDJt+jNyoHFId0/dKsuVYUPke3EcquIyUwzJCH17a3ERglN3A9aMBI5zbz+xNZ+FbaDNdpn0RaJHCFLbZX+fA==", "cpu": [ "arm64" ], @@ -1283,9 +1284,9 @@ ] }, "node_modules/esbuild-darwin-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.3.tgz", - "integrity": "sha512-8bG3Zq+ZNuLlIJebOO2+weI7P2LVf33sOzaUfHj8MuJ+1Ixe4KtQxfYp7qhFnP6xP2ToJaYHxGUfLeiUCEz9hw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.4.tgz", + "integrity": "sha512-zJQGyHRAdZUXlRzbN7W+7ykmEiGC+bq3Gc4GxKYjjWTgDRSEly98ym+vRNkDjXwXYD3gGzSwvH35+MiHAtWvLA==", "cpu": [ "x64" ], @@ -1296,9 +1297,9 @@ ] }, "node_modules/esbuild-darwin-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.3.tgz", - "integrity": "sha512-5E81eImYtTgh8pY7Gq4WQHhWkR/LvYadUXmuYeZBiP+3ADZJZcG60UFceZrjqNPaFOWKr/xmh4aNocwagEubcA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.4.tgz", + "integrity": "sha512-r8oYvAtqSGq8HNTZCAx4TdLE7jZiGhX9ooGi5AQAey37MA6XNaP8ZNlw9OCpcgpx3ryU2WctXwIqPzkHO7a8dg==", "cpu": [ "arm64" ], @@ -1309,9 +1310,9 @@ ] }, "node_modules/esbuild-freebsd-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.3.tgz", - "integrity": "sha512-ou+f91KkTGexi8HvF/BdtsITL6plbciQfZGys7QX6/QEwyE96PmL5KnU6ZQwoU7E99Ts6Sc9bUDq8HXJubKtBA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.4.tgz", + "integrity": "sha512-u9DRGkn09EN8+lCh6z7FKle7awi17PJRBuAKdRNgSo5ZrH/3m+mYaJK2PR2URHMpAfXiwJX341z231tSdVe3Yw==", "cpu": [ "x64" ], @@ -1322,9 +1323,9 @@ ] }, "node_modules/esbuild-freebsd-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.3.tgz", - "integrity": "sha512-F1zV7nySjHswJuvIgjkiG5liZ63MeazDGXGKViTCeegjZ71sAhOChcaGhKcu6vq9+vqZxlfEi1fmXlx6Pc3coQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.4.tgz", + "integrity": "sha512-q3B2k68Uf6gfjATjcK16DqxvjqRQkHL8aPoOfj4op+lSqegdXvBacB1d8jw8PxbWJ8JHpdTLdAVUYU80kotQXA==", "cpu": [ "arm64" ], @@ -1335,9 +1336,9 @@ ] }, "node_modules/esbuild-linux-32": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.3.tgz", - "integrity": "sha512-mHHc2v6uLrHH4zaaq5RB/5IWzgimEJ1HGldzf1qtGI513KZWfH0HRRQ8p1di4notJgBn7tDzWQ1f34ZHy69viQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.4.tgz", + "integrity": "sha512-UUYJPHSiKAO8KoN3Ls/iZtgDLZvK5HarES96aolDPWZnq9FLx4dIHM/x2z4Rxv9IYqQ/DxlPoE2Co1UPBIYYeA==", "cpu": [ "ia32" ], @@ -1348,9 +1349,9 @@ ] }, "node_modules/esbuild-linux-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.3.tgz", - "integrity": "sha512-FJ1De2O89mrOuqtaEXu41qIYJU6R41F+OA6vheNwcAQcX8fu0aiA13FJeLABq29BYJuTVgRj3cyC8q+tz19/dQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.4.tgz", + "integrity": "sha512-+RnohAKiiUW4UHLGRkNR1AnENW1gCuDWuygEtd4jxTNPIoeC7lbXGor7rtgjj9AdUzFgOEvAXyNNX01kJ8NueQ==", "cpu": [ "x64" ], @@ -1361,9 +1362,9 @@ ] }, "node_modules/esbuild-linux-arm": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.3.tgz", - "integrity": "sha512-9BJNRtLwBh3OP22cln9g3AJdbAQUcjRHqA4BScx9k4RZpGqPokFr548zpeplxWhcwrIjT8qPebwH9CrRVy8Bsw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.4.tgz", + "integrity": "sha512-BH5gKve4jglS7UPSsfwHSX79I5agC/lm4eKoRUEyo8lwQs89frQSRp2Xup+6SFQnxt3md5EsKcd2Dbkqeb3gPA==", "cpu": [ "arm" ], @@ -1374,9 +1375,9 @@ ] }, "node_modules/esbuild-linux-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.3.tgz", - "integrity": "sha512-Cauhr45KSo+wRUojs+1qfycQqQCAXTOvsWvkZ6xmEMAXLAm+f8RQGDQeP8CAf8Yeelnegcn6UNdvzdzLHhWDFg==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.4.tgz", + "integrity": "sha512-+A188cAdd6QuSRxMIwRrWLjgphQA0LDAQ/ECVlrPVJwnx+1i64NjDZivoqPYLOTkSPIKntiWwMhhf0U5/RrPHQ==", "cpu": [ "arm64" ], @@ -1387,9 +1388,9 @@ ] }, "node_modules/esbuild-linux-mips64le": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.3.tgz", - "integrity": "sha512-YVzJUGCncuuLm2boYyVeuMFsak4ZAhdiBwi0xNDZCC8sy+tS6Boe2mzcrD2uubv5JKAUOrpN186S1DtU4WgBgw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.4.tgz", + "integrity": "sha512-0xkwtPaUkG5xMTFGaQPe1AadSe5QAiQuD4Gix1O9k5Xo/U8xGIkw9UFUTvfEUeu71vFb6ZgsIacfP1NLoFjWNw==", "cpu": [ "mips64el" ], @@ -1400,9 +1401,9 @@ ] }, "node_modules/esbuild-linux-ppc64le": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.3.tgz", - "integrity": "sha512-GU6CqqKtJEoyxC2QWHiJtmuOz9wc/jMv8ZloK2WwiGY5yMvAmM3PI103Dj7xcjebNTHBqITTUw/aigY1wx5A3w==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.4.tgz", + "integrity": "sha512-E1+oJPP7A+j23GPo3CEpBhGwG1bni4B8IbTA3/3rvzjURwUMZdcN3Fhrz24rnjzdLSHmULtOE4VsbT42h1Om4Q==", "cpu": [ "ppc64" ], @@ -1413,9 +1414,9 @@ ] }, "node_modules/esbuild-openbsd-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.3.tgz", - "integrity": "sha512-HVpkgpn4BQt4BPDAjTOpeMub6mzNWw6Y3gaLQJrpbO24pws6ZwYkY24OI3/Uo3LDCbH6856MM81JxECt92OWjA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.4.tgz", + "integrity": "sha512-xEkI1o5HYxDzbv9jSox0EsDxpwraG09SRiKKv0W8pH6O3bt+zPSlnoK7+I7Q69tkvONkpIq5n2o+c55uq0X7cw==", "cpu": [ "x64" ], @@ -1426,9 +1427,9 @@ ] }, "node_modules/esbuild-sunos-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.3.tgz", - "integrity": "sha512-XncBVOtnEfUbPV4CaiFBxh38ychnBfwCxuTm9iAqcHzIwkmeNRN5qMzDyfE1jyfJje+Bbt6AvIfz6SdYt8/UEQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.4.tgz", + "integrity": "sha512-bjXUMcODMnB6hQicLBBmmnBl7OMDyVpFahKvHGXJfDChIi5udiIRKCmFUFIRn+AUAKVlfrofRKdyPC7kBsbvGQ==", "cpu": [ "x64" ], @@ -1439,9 +1440,9 @@ ] }, "node_modules/esbuild-windows-32": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.3.tgz", - "integrity": "sha512-ZlgDz7d1nk8wQACi+z8IDzNZVUlN9iprAme+1YSTsfFDlkyI8jeaGWPk9EQFNY7rJzsLVYm6eZ2mhPioc7uT5A==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.4.tgz", + "integrity": "sha512-z4CH07pfyVY0XF98TCsGmLxKCl0kyvshKDbdpTekW9f2d+dJqn5mmoUyWhpSVJ0SfYWJg86FoD9nMbbaMVyGdg==", "cpu": [ "ia32" ], @@ -1452,9 +1453,9 @@ ] }, "node_modules/esbuild-windows-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.3.tgz", - "integrity": "sha512-YX7KvRez3TR+GudlQm9tND/ssj2FsF9vb8ZWzAoZOLxpPzE3y+3SFJNrfDzzQKPzJ0Pnh9KBP4gsaMwJjKHDhw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.4.tgz", + "integrity": "sha512-uVL11vORRPjocGLYam67rwFLd0LvkrHEs+JG+1oJN4UD9MQmNGZPa4gBHo6hDpF+kqRJ9kXgQSeDqUyRy0tj/Q==", "cpu": [ "x64" ], @@ -1465,9 +1466,9 @@ ] }, "node_modules/esbuild-windows-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.3.tgz", - "integrity": "sha512-nP7H0Y2a6OJd3Qi1Q8sehhyP4x4JoXK4S5y6FzH2vgaJgiyEurzFxjUufGdMaw+RxtxiwD/uRndUgwaZ2JD8lg==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.4.tgz", + "integrity": "sha512-vA6GLvptgftRcDcWngD5cMlL4f4LbL8JjU2UMT9yJ0MT5ra6hdZNFWnOeOoEtY4GtJ6OjZ0i+81sTqhAB0fMkg==", "cpu": [ "arm64" ], @@ -1966,6 +1967,18 @@ "node": ">=10" } }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", @@ -2669,9 +2682,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.3.tgz", + "integrity": "sha512-0i77ZFLsb9U3DHi22WzmIngVzfoyxxbQcZRqlF3KoKmCJGq9nhFHoGi8FqBztN2rE8w6hURnZghetn0xpkVb6A==", "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -2934,13 +2947,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/nanocolors": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", - "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", - "dev": true, - "peer": true - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -3059,29 +3065,28 @@ } }, "node_modules/object.entries": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", + "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" + "es-abstract": "^1.19.1" }, "engines": { "node": ">= 0.4" } }, "node_modules/object.fromentries": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", + "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has": "^1.0.3" + "es-abstract": "^1.19.1" }, "engines": { "node": ">= 0.4" @@ -3091,14 +3096,14 @@ } }, "node_modules/object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" + "es-abstract": "^1.19.1" }, "engines": { "node": ">= 0.4" @@ -3238,6 +3243,13 @@ "node": ">=8" } }, + "node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true, + "peer": true + }, "node_modules/pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", @@ -3997,14 +4009,14 @@ } }, "node_modules/string.prototype.matchall": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz", + "integrity": "sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2", + "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", "has-symbols": "^1.0.2", "internal-slot": "^1.0.3", @@ -4130,11 +4142,11 @@ "dev": true }, "node_modules/tcpocket": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.2.tgz", - "integrity": "sha512-FHVknoAyIb4i9BRB16BITLlLsqF+MZM62Fl0MwZVpY7PzdiE4bXd9zC5gePfa5Uo5Mrf1TesIMpyOFKmvsg40w==", + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.3.tgz", + "integrity": "sha512-+7R3+2/cVxCnE5QNcI8jCbGyHg8dkCZkqS0E5gaEFLJnru+RQBCTMwbiafgliRcgy//Bljrp/idCAh8kjAgn4A==", "dependencies": { - "increlation": "^2.0.0" + "increlation": "^2.0.1" } }, "node_modules/test-exclude": { @@ -4202,10 +4214,9 @@ } }, "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "engines": { "node": ">=10" }, @@ -4247,9 +4258,9 @@ } }, "node_modules/use-http": { - "version": "1.0.24", - "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.24.tgz", - "integrity": "sha512-JPAfcOWEyXdTolQSlmbVYhbLLrIw7rscFFY23R/OZpcZ3C1F0avQLUEi6eMIMpBcvo4HZk4aDd0rg8zVpYvjXA==", + "version": "1.0.26", + "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.26.tgz", + "integrity": "sha512-yB0dXX2S0Doyiti/kHqMsvlShL3tlI8YkoEARao1OVFKrGvyXejmWvrYkEI+oVTPvUqGzOsHbNROY0qKDC88Pg==", "dependencies": { "urs": "^0.0.8", "use-ssr": "^1.0.24", @@ -4461,9 +4472,9 @@ }, "dependencies": { "@babel/code-frame": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", - "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", + "integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==", "dev": true, "requires": { "@babel/highlight": "^7.14.5" @@ -4477,21 +4488,21 @@ "peer": true }, "@babel/core": { - "version": "7.15.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", - "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", + "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", "dev": true, "peer": true, "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", + "@babel/code-frame": "^7.15.8", + "@babel/generator": "^7.15.8", "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.8", "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.5", + "@babel/parser": "^7.15.8", "@babel/template": "^7.15.4", "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4", + "@babel/types": "^7.15.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -4501,13 +4512,13 @@ } }, "@babel/generator": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", - "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", + "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", "dev": true, "peer": true, "requires": { - "@babel/types": "^7.15.4", + "@babel/types": "^7.15.6", "jsesc": "^2.5.1", "source-map": "^0.5.0" } @@ -4577,9 +4588,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", - "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz", + "integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==", "dev": true, "peer": true, "requires": { @@ -4737,9 +4748,9 @@ } }, "@babel/parser": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", - "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz", + "integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==", "dev": true, "peer": true }, @@ -4954,6 +4965,12 @@ "requires": { "type-fest": "^0.20.2" } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true } } }, @@ -5050,16 +5067,16 @@ } }, "array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", + "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", + "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" + "is-string": "^1.0.7" } }, "array.prototype.flat": { @@ -5136,29 +5153,29 @@ } }, "browserslist": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", - "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", + "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", "dev": true, "peer": true, "requires": { - "caniuse-lite": "^1.0.30001261", - "electron-to-chromium": "^1.3.854", + "caniuse-lite": "^1.0.30001264", + "electron-to-chromium": "^1.3.857", "escalade": "^3.1.1", - "nanocolors": "^0.2.12", - "node-releases": "^1.1.76" + "node-releases": "^1.1.77", + "picocolors": "^0.2.1" } }, "c8": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.9.0.tgz", - "integrity": "sha512-aQ7dC8gASnKdBwHUuYuzsdKCEDrKnWr7ZuZUnf4CNAL81oyKloKrs7H7zYvcrmCtIrMToudBSUhq2q+LLBMvgg==", + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.10.0.tgz", + "integrity": "sha512-OAwfC5+emvA6R7pkYFVBTOtI5ruf9DahffGmIqUc9l6wEh0h7iAFP6dt/V9Ioqlr2zW5avX9U9/w1I4alTRHkA==", "requires": { "@bcoe/v8-coverage": "^0.2.3", "@istanbuljs/schema": "^0.1.2", "find-up": "^5.0.0", "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^3.0.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", "rimraf": "^3.0.0", @@ -5185,9 +5202,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001263", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", - "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", + "version": "1.0.30001265", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", + "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", "dev": true, "peer": true }, @@ -5224,9 +5241,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.13.tgz", - "integrity": "sha512-lvA4NbohpqUypdfTtJpb5BwhdUrwi1ACLM6uW3lEj0CWKOXrCSJlexv9IgUUN6obat0YGTSy7wfLDLEfOvzFLA==", + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", "dev": true }, "concat-map": { @@ -5271,13 +5288,6 @@ "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", "requires": { "type-fest": "^1.0.1" - }, - "dependencies": { - "type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" - } } }, "csstype": { @@ -5325,9 +5335,9 @@ } }, "electron-to-chromium": { - "version": "1.3.857", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", - "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", + "version": "1.3.863", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.863.tgz", + "integrity": "sha512-C+dLP4xM1DCqvEUjtqCGhd6DJGnXq1t03QR2ZxEWUQPkaXxDlzPUyWsSh17LHLQBEfmBCRfTbA3LpjiVikWsxg==", "dev": true, "peer": true }, @@ -5355,9 +5365,9 @@ } }, "es-abstract": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.0.tgz", - "integrity": "sha512-oWPrF+7P1nGv/rw9oIInwdkmI1qediEJSvVfHFryBd8mWllCKB5tke3aKyf51J6chgyKmi6mODqdnin2yb88Nw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5394,138 +5404,138 @@ } }, "esbuild": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.3.tgz", - "integrity": "sha512-98xovMLKnyhv3gcReUuAEi5Ig1rK6SIgvsJuBIcfwzqGSEHsV8UJjMlmkhHoHMf9XZybMpE9Zax8AA8f7i2hlQ==", - "dev": true, - "requires": { - "esbuild-android-arm64": "0.13.3", - "esbuild-darwin-64": "0.13.3", - "esbuild-darwin-arm64": "0.13.3", - "esbuild-freebsd-64": "0.13.3", - "esbuild-freebsd-arm64": "0.13.3", - "esbuild-linux-32": "0.13.3", - "esbuild-linux-64": "0.13.3", - "esbuild-linux-arm": "0.13.3", - "esbuild-linux-arm64": "0.13.3", - "esbuild-linux-mips64le": "0.13.3", - "esbuild-linux-ppc64le": "0.13.3", - "esbuild-openbsd-64": "0.13.3", - "esbuild-sunos-64": "0.13.3", - "esbuild-windows-32": "0.13.3", - "esbuild-windows-64": "0.13.3", - "esbuild-windows-arm64": "0.13.3" + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.4.tgz", + "integrity": "sha512-wMA5eUwpavTBiNl+It6j8OQuKVh69l6z4DKDLzoTIqC+gChnPpcmqdA8WNHptUHRnfyML+mKEQPlW7Mybj8gHg==", + "dev": true, + "requires": { + "esbuild-android-arm64": "0.13.4", + "esbuild-darwin-64": "0.13.4", + "esbuild-darwin-arm64": "0.13.4", + "esbuild-freebsd-64": "0.13.4", + "esbuild-freebsd-arm64": "0.13.4", + "esbuild-linux-32": "0.13.4", + "esbuild-linux-64": "0.13.4", + "esbuild-linux-arm": "0.13.4", + "esbuild-linux-arm64": "0.13.4", + "esbuild-linux-mips64le": "0.13.4", + "esbuild-linux-ppc64le": "0.13.4", + "esbuild-openbsd-64": "0.13.4", + "esbuild-sunos-64": "0.13.4", + "esbuild-windows-32": "0.13.4", + "esbuild-windows-64": "0.13.4", + "esbuild-windows-arm64": "0.13.4" } }, "esbuild-android-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.3.tgz", - "integrity": "sha512-jc9E8vGTHkzb0Vwl74H8liANV9BWsqtzLHaKvcsRgf1M+aVCBSF0gUheduAKfDsbDMT0judeMLhwBP34EUesTA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.4.tgz", + "integrity": "sha512-elDJt+jNyoHFId0/dKsuVYUPke3EcquIyUwzJCH17a3ERglN3A9aMBI5zbz+xNZ+FbaDNdpn0RaJHCFLbZX+fA==", "dev": true, "optional": true }, "esbuild-darwin-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.3.tgz", - "integrity": "sha512-8bG3Zq+ZNuLlIJebOO2+weI7P2LVf33sOzaUfHj8MuJ+1Ixe4KtQxfYp7qhFnP6xP2ToJaYHxGUfLeiUCEz9hw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.4.tgz", + "integrity": "sha512-zJQGyHRAdZUXlRzbN7W+7ykmEiGC+bq3Gc4GxKYjjWTgDRSEly98ym+vRNkDjXwXYD3gGzSwvH35+MiHAtWvLA==", "dev": true, "optional": true }, "esbuild-darwin-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.3.tgz", - "integrity": "sha512-5E81eImYtTgh8pY7Gq4WQHhWkR/LvYadUXmuYeZBiP+3ADZJZcG60UFceZrjqNPaFOWKr/xmh4aNocwagEubcA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.4.tgz", + "integrity": "sha512-r8oYvAtqSGq8HNTZCAx4TdLE7jZiGhX9ooGi5AQAey37MA6XNaP8ZNlw9OCpcgpx3ryU2WctXwIqPzkHO7a8dg==", "dev": true, "optional": true }, "esbuild-freebsd-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.3.tgz", - "integrity": "sha512-ou+f91KkTGexi8HvF/BdtsITL6plbciQfZGys7QX6/QEwyE96PmL5KnU6ZQwoU7E99Ts6Sc9bUDq8HXJubKtBA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.4.tgz", + "integrity": "sha512-u9DRGkn09EN8+lCh6z7FKle7awi17PJRBuAKdRNgSo5ZrH/3m+mYaJK2PR2URHMpAfXiwJX341z231tSdVe3Yw==", "dev": true, "optional": true }, "esbuild-freebsd-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.3.tgz", - "integrity": "sha512-F1zV7nySjHswJuvIgjkiG5liZ63MeazDGXGKViTCeegjZ71sAhOChcaGhKcu6vq9+vqZxlfEi1fmXlx6Pc3coQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.4.tgz", + "integrity": "sha512-q3B2k68Uf6gfjATjcK16DqxvjqRQkHL8aPoOfj4op+lSqegdXvBacB1d8jw8PxbWJ8JHpdTLdAVUYU80kotQXA==", "dev": true, "optional": true }, "esbuild-linux-32": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.3.tgz", - "integrity": "sha512-mHHc2v6uLrHH4zaaq5RB/5IWzgimEJ1HGldzf1qtGI513KZWfH0HRRQ8p1di4notJgBn7tDzWQ1f34ZHy69viQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.4.tgz", + "integrity": "sha512-UUYJPHSiKAO8KoN3Ls/iZtgDLZvK5HarES96aolDPWZnq9FLx4dIHM/x2z4Rxv9IYqQ/DxlPoE2Co1UPBIYYeA==", "dev": true, "optional": true }, "esbuild-linux-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.3.tgz", - "integrity": "sha512-FJ1De2O89mrOuqtaEXu41qIYJU6R41F+OA6vheNwcAQcX8fu0aiA13FJeLABq29BYJuTVgRj3cyC8q+tz19/dQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.4.tgz", + "integrity": "sha512-+RnohAKiiUW4UHLGRkNR1AnENW1gCuDWuygEtd4jxTNPIoeC7lbXGor7rtgjj9AdUzFgOEvAXyNNX01kJ8NueQ==", "dev": true, "optional": true }, "esbuild-linux-arm": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.3.tgz", - "integrity": "sha512-9BJNRtLwBh3OP22cln9g3AJdbAQUcjRHqA4BScx9k4RZpGqPokFr548zpeplxWhcwrIjT8qPebwH9CrRVy8Bsw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.4.tgz", + "integrity": "sha512-BH5gKve4jglS7UPSsfwHSX79I5agC/lm4eKoRUEyo8lwQs89frQSRp2Xup+6SFQnxt3md5EsKcd2Dbkqeb3gPA==", "dev": true, "optional": true }, "esbuild-linux-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.3.tgz", - "integrity": "sha512-Cauhr45KSo+wRUojs+1qfycQqQCAXTOvsWvkZ6xmEMAXLAm+f8RQGDQeP8CAf8Yeelnegcn6UNdvzdzLHhWDFg==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.4.tgz", + "integrity": "sha512-+A188cAdd6QuSRxMIwRrWLjgphQA0LDAQ/ECVlrPVJwnx+1i64NjDZivoqPYLOTkSPIKntiWwMhhf0U5/RrPHQ==", "dev": true, "optional": true }, "esbuild-linux-mips64le": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.3.tgz", - "integrity": "sha512-YVzJUGCncuuLm2boYyVeuMFsak4ZAhdiBwi0xNDZCC8sy+tS6Boe2mzcrD2uubv5JKAUOrpN186S1DtU4WgBgw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.4.tgz", + "integrity": "sha512-0xkwtPaUkG5xMTFGaQPe1AadSe5QAiQuD4Gix1O9k5Xo/U8xGIkw9UFUTvfEUeu71vFb6ZgsIacfP1NLoFjWNw==", "dev": true, "optional": true }, "esbuild-linux-ppc64le": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.3.tgz", - "integrity": "sha512-GU6CqqKtJEoyxC2QWHiJtmuOz9wc/jMv8ZloK2WwiGY5yMvAmM3PI103Dj7xcjebNTHBqITTUw/aigY1wx5A3w==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.4.tgz", + "integrity": "sha512-E1+oJPP7A+j23GPo3CEpBhGwG1bni4B8IbTA3/3rvzjURwUMZdcN3Fhrz24rnjzdLSHmULtOE4VsbT42h1Om4Q==", "dev": true, "optional": true }, "esbuild-openbsd-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.3.tgz", - "integrity": "sha512-HVpkgpn4BQt4BPDAjTOpeMub6mzNWw6Y3gaLQJrpbO24pws6ZwYkY24OI3/Uo3LDCbH6856MM81JxECt92OWjA==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.4.tgz", + "integrity": "sha512-xEkI1o5HYxDzbv9jSox0EsDxpwraG09SRiKKv0W8pH6O3bt+zPSlnoK7+I7Q69tkvONkpIq5n2o+c55uq0X7cw==", "dev": true, "optional": true }, "esbuild-sunos-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.3.tgz", - "integrity": "sha512-XncBVOtnEfUbPV4CaiFBxh38ychnBfwCxuTm9iAqcHzIwkmeNRN5qMzDyfE1jyfJje+Bbt6AvIfz6SdYt8/UEQ==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.4.tgz", + "integrity": "sha512-bjXUMcODMnB6hQicLBBmmnBl7OMDyVpFahKvHGXJfDChIi5udiIRKCmFUFIRn+AUAKVlfrofRKdyPC7kBsbvGQ==", "dev": true, "optional": true }, "esbuild-windows-32": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.3.tgz", - "integrity": "sha512-ZlgDz7d1nk8wQACi+z8IDzNZVUlN9iprAme+1YSTsfFDlkyI8jeaGWPk9EQFNY7rJzsLVYm6eZ2mhPioc7uT5A==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.4.tgz", + "integrity": "sha512-z4CH07pfyVY0XF98TCsGmLxKCl0kyvshKDbdpTekW9f2d+dJqn5mmoUyWhpSVJ0SfYWJg86FoD9nMbbaMVyGdg==", "dev": true, "optional": true }, "esbuild-windows-64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.3.tgz", - "integrity": "sha512-YX7KvRez3TR+GudlQm9tND/ssj2FsF9vb8ZWzAoZOLxpPzE3y+3SFJNrfDzzQKPzJ0Pnh9KBP4gsaMwJjKHDhw==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.4.tgz", + "integrity": "sha512-uVL11vORRPjocGLYam67rwFLd0LvkrHEs+JG+1oJN4UD9MQmNGZPa4gBHo6hDpF+kqRJ9kXgQSeDqUyRy0tj/Q==", "dev": true, "optional": true }, "esbuild-windows-arm64": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.3.tgz", - "integrity": "sha512-nP7H0Y2a6OJd3Qi1Q8sehhyP4x4JoXK4S5y6FzH2vgaJgiyEurzFxjUufGdMaw+RxtxiwD/uRndUgwaZ2JD8lg==", + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.4.tgz", + "integrity": "sha512-vA6GLvptgftRcDcWngD5cMlL4f4LbL8JjU2UMT9yJ0MT5ra6hdZNFWnOeOoEtY4GtJ6OjZ0i+81sTqhAB0fMkg==", "dev": true, "optional": true }, @@ -5614,6 +5624,12 @@ "requires": { "lru-cache": "^6.0.0" } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true } } }, @@ -6383,9 +6399,9 @@ } }, "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.3.tgz", + "integrity": "sha512-0i77ZFLsb9U3DHi22WzmIngVzfoyxxbQcZRqlF3KoKmCJGq9nhFHoGi8FqBztN2rE8w6hURnZghetn0xpkVb6A==", "requires": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -6593,13 +6609,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "nanocolors": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", - "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", - "dev": true, - "peer": true - }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -6681,37 +6690,36 @@ } }, "object.entries": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", + "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" + "es-abstract": "^1.19.1" } }, "object.fromentries": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", + "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has": "^1.0.3" + "es-abstract": "^1.19.1" } }, "object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" + "es-abstract": "^1.19.1" } }, "once": { @@ -6806,6 +6814,13 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true, + "peer": true + }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", @@ -7367,14 +7382,14 @@ } }, "string.prototype.matchall": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz", + "integrity": "sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2", + "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", "has-symbols": "^1.0.2", "internal-slot": "^1.0.3", @@ -7471,11 +7486,11 @@ } }, "tcpocket": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.2.tgz", - "integrity": "sha512-FHVknoAyIb4i9BRB16BITLlLsqF+MZM62Fl0MwZVpY7PzdiE4bXd9zC5gePfa5Uo5Mrf1TesIMpyOFKmvsg40w==", + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.3.tgz", + "integrity": "sha512-+7R3+2/cVxCnE5QNcI8jCbGyHg8dkCZkqS0E5gaEFLJnru+RQBCTMwbiafgliRcgy//Bljrp/idCAh8kjAgn4A==", "requires": { - "increlation": "^2.0.0" + "increlation": "^2.0.1" } }, "test-exclude": { @@ -7533,10 +7548,9 @@ } }, "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" }, "unbox-primitive": { "version": "1.0.1", @@ -7566,9 +7580,9 @@ "requires": {} }, "use-http": { - "version": "1.0.24", - "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.24.tgz", - "integrity": "sha512-JPAfcOWEyXdTolQSlmbVYhbLLrIw7rscFFY23R/OZpcZ3C1F0avQLUEi6eMIMpBcvo4HZk4aDd0rg8zVpYvjXA==", + "version": "1.0.26", + "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.26.tgz", + "integrity": "sha512-yB0dXX2S0Doyiti/kHqMsvlShL3tlI8YkoEARao1OVFKrGvyXejmWvrYkEI+oVTPvUqGzOsHbNROY0qKDC88Pg==", "requires": { "urs": "^0.0.8", "use-ssr": "^1.0.24", diff --git a/package.json b/package.json index fd635c3..60416cc 100644 --- a/package.json +++ b/package.json @@ -26,16 +26,16 @@ "node-ejdb-lite": "^3.4.4", "servatron": "^2.2.3", "server-destroy": "^1.0.1", - "tcpocket": "^7.4.2", - "use-http": "^1.0.24", + "tcpocket": "^7.4.3", + "use-http": "^1.0.26", "uuid": "^8.3.2" }, "devDependencies": { "@emotion/styled": "^11.3.0", "axios": "^0.22.0", "basictap": "^2.2.2", - "c8": "^7.9.0", - "esbuild": "^0.13.3", + "c8": "^7.10.0", + "esbuild": "^0.13.4", "eslint": "^7.32.0", "eslint-plugin-react-hooks": "^4.2.0", "react": "^17.0.2", diff --git a/test/features/lock.js b/test/features/lock.js index a6b2d6a..d3f2c0b 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -349,3 +349,24 @@ test('lock - system collection (system.locks)', async t => { await client.close(); await servers.close(); }); + +test('lock - releases when node disconnects', async t => { + t.plan(1); + + const servers = await createTestServers(2); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await client.send(c.LOCK, { + [c.LOCK_KEYS]: ['tests'] + }); + + await servers[0].close(); + + const testLocks = servers[1].locks.state.locks.filter(lock => lock[1][0] === 'tests'); + + t.equal(testLocks.length, 0); + + await client.close(); + await servers.close(); +}); diff --git a/test/features/notify.js b/test/features/notify.js index a67a689..7303c57 100644 --- a/test/features/notify.js +++ b/test/features/notify.js @@ -338,7 +338,7 @@ test('notify - reconnections', async t => { [c.NOTIFY_PATH]: '.*:/tests/.*' }); - server2.close(); + await server2.close(); await sleep(100); server2 = await server2.recreate(); await sleep(100); diff --git a/test/index.js b/test/index.js index 865902a..6af30a3 100644 --- a/test/index.js +++ b/test/index.js @@ -1,3 +1,5 @@ +// import wtfnode from 'wtfnode'; + import('./lib/driver/index.js'); import('./lib/utils/calculateAllowedErrorCount.js'); import('./lib/prepareOptions.js'); @@ -12,3 +14,9 @@ import('./features/lock.js'); import('./features/systemCollections.js'); import('./modules/controllers/createControllerStore.js'); + +// process.on('beforeExit', () => { +// setTimeout(() => { +// wtfnode.dump(); +// }, 5000); +// }); From 567c41e3968640cc7196e783005267ef92a958f0 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 10:26:18 +0100 Subject: [PATCH 52/73] Fix insertDefaultDocument when server crashes --- .gitmodules | 3 + client | 1 + lib/utils/insertDefaultDocument.js | 47 +---- package-lock.json | 269 +++++++++++++++++++++++++++-- package.json | 5 +- test/features/conflicts.js | 13 +- test/features/lock.js | 9 +- test/features/systemCollections.js | 4 +- test/index.js | 2 +- 9 files changed, 288 insertions(+), 65 deletions(-) create mode 100644 .gitmodules create mode 160000 client diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..e7df86e --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "client"] + path = client + url = https://github.com/canhazdb/client.git diff --git a/client b/client new file mode 160000 index 0000000..44721fe --- /dev/null +++ b/client @@ -0,0 +1 @@ +Subproject commit 44721fe73bb984c6aa243c49ffb0348e8a5d563c diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index a41f5af..ec78e6a 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -1,46 +1,14 @@ import logslot from 'logslot'; -import c from '../constants.js'; -import waitUntil from '../utils/waitUntil.js'; +import canhazdbClient from 'canhazdb-client'; const log = logslot('canhazdb.utils.insertDefaultDocument'); -async function miniClient (context) { - await waitUntil(() => context?.thisNode?.client); - - async function lock (lockKeys) { - const results = await context.thisNode.client.send(c.LOCK, { - [c.LOCK_KEYS]: lockKeys - }); - - const lockId = results.json()[c.LOCK_ID]; - return lockId; - } - - async function unlock (lockId) { - return context.thisNode.client.send(c.UNLOCK, { - [c.LOCK_ID]: lockId - }); - } - - function getOne () { - - } - - function post () { - - } - - return { - lock, - unlock, - getOne, - post - }; -} - async function insertDefaultDocument (context, collectionId, document) { + let lockId; + let client; try { - const client = await miniClient(context); - const lockId = await client.lock([collectionId]); + client = await canhazdbClient(context.clientConfig); + + lockId = await client.lock([collectionId]); const existingDocument = await client.getOne(collectionId, { query: { id: document.id @@ -55,6 +23,9 @@ async function insertDefaultDocument (context, collectionId, document) { await client.unlock(lockId); } catch (error) { + if (lockId) { + client.unlock(lockId).catch(() => {}); + } log.warn('could not insert default document [' + collectionId + ']', { message: error.message }); } } diff --git a/package-lock.json b/package-lock.json index e16c2cf..2b9b305 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "8.0.0", "license": "AGPL-3.0", "dependencies": { + "canhazdb-client": "file:./client", "chalk": "^4.1.2", "crypto-random-string": "^4.0.0", "debarrel": "^1.0.2", @@ -20,7 +21,7 @@ "node-ejdb-lite": "^3.4.4", "servatron": "^2.2.3", "server-destroy": "^1.0.1", - "tcpocket": "^7.4.3", + "tcpocket": "^7.5.0", "use-http": "^1.0.26", "uuid": "^8.3.2" }, @@ -38,6 +39,22 @@ "wtfnode": "^0.9.1" } }, + "client": { + "name": "canhazdb-client", + "version": "1.1.3", + "license": "MIT", + "dependencies": { + "mql-to-jql": "^1.4.0", + "tcpocket": "^7.5.0" + }, + "devDependencies": { + "@types/util.promisify": "^1.0.4", + "basictap": "^2.2.2", + "c8": "^7.9.0", + "typedoc": "^0.22.5", + "typescript": "^4.4.3" + } + }, "node_modules/@babel/code-frame": { "version": "7.15.8", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", @@ -725,12 +742,27 @@ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, + "node_modules/@types/node": { + "version": "16.10.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.3.tgz", + "integrity": "sha512-ho3Ruq+fFnBrZhUYI46n/bV2GjwzSkwuT4dTf0GkuNFmnb8nq4ny2z9JEVemFi6bdEJanHLlYfy9c6FN9B9McQ==", + "dev": true + }, "node_modules/@types/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, + "node_modules/@types/util.promisify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/util.promisify/-/util.promisify-1.0.4.tgz", + "integrity": "sha512-sqbKBFegMRBvFOTq1+dXmRNfZvGZTNT+PlmIla/RFWLTQuNIKK3F9txxuG35Hk5Yl72pQLKdMBKwieqDcgzJ4Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -986,6 +1018,10 @@ "node": ">=6" } }, + "node_modules/canhazdb-client": { + "resolved": "client", + "link": true + }, "node_modules/caniuse-lite": { "version": "1.0.30001265", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", @@ -1159,9 +1195,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.3.863", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.863.tgz", - "integrity": "sha512-C+dLP4xM1DCqvEUjtqCGhd6DJGnXq1t03QR2ZxEWUQPkaXxDlzPUyWsSh17LHLQBEfmBCRfTbA3LpjiVikWsxg==", + "version": "1.3.864", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz", + "integrity": "sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw==", "dev": true, "peer": true }, @@ -2764,6 +2800,12 @@ "node": ">=6" } }, + "node_modules/jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true + }, "node_modules/jsx-ast-utils": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz", @@ -2895,6 +2937,12 @@ "node": ">=10" } }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -2909,6 +2957,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/marked": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.7.tgz", + "integrity": "sha512-ctKqbnLuNbsHbI26cfMyOlKgXGfl1orOv1AvWWDX7AkgfMOwCWvmuYc+mVLeWhQ9W6hdWVBynOs96VkcscKo0Q==", + "dev": true, + "bin": { + "marked": "bin/marked" + }, + "engines": { + "node": ">= 12" + } + }, "node_modules/mime": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", @@ -3120,6 +3180,30 @@ "wrappy": "1" } }, + "node_modules/onigasm": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", + "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", + "dev": true, + "dependencies": { + "lru-cache": "^5.1.1" + } + }, + "node_modules/onigasm/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/onigasm/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, "node_modules/optionator": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", @@ -3883,6 +3967,17 @@ "node": ">=8" } }, + "node_modules/shiki": { + "version": "0.9.11", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.11.tgz", + "integrity": "sha512-tjruNTLFhU0hruCPoJP0y+B9LKOmcqUhTpxn7pcJB3fa+04gFChuEmxmrUfOJ7ZO6Jd+HwMnDHgY3lv3Tqonuw==", + "dev": true, + "dependencies": { + "jsonc-parser": "^3.0.0", + "onigasm": "^2.2.5", + "vscode-textmate": "5.2.0" + } + }, "node_modules/side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -4142,9 +4237,9 @@ "dev": true }, "node_modules/tcpocket": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.3.tgz", - "integrity": "sha512-+7R3+2/cVxCnE5QNcI8jCbGyHg8dkCZkqS0E5gaEFLJnru+RQBCTMwbiafgliRcgy//Bljrp/idCAh8kjAgn4A==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.5.0.tgz", + "integrity": "sha512-fjSRCtt5MIEdBcTYJsM36q3Whgtf1zvv6OSyzGH4OEkBGTnscUtbKR2J9KwFnLqe9UWJolPsLsTSASBIuVNuyA==", "dependencies": { "increlation": "^2.0.1" } @@ -4224,6 +4319,41 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/typedoc": { + "version": "0.22.5", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.5.tgz", + "integrity": "sha512-KFrWGU1iKiTGw0RcyjLNYDmhd7uICU14HgBNPmFKY/sT4Pm/fraaLyWyisst9vGTUAKxqibqoDITR7+ZcAkhHg==", + "dev": true, + "dependencies": { + "glob": "^7.2.0", + "lunr": "^2.3.9", + "marked": "^3.0.4", + "minimatch": "^3.0.4", + "shiki": "^0.9.11" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 12.10.0" + }, + "peerDependencies": { + "typescript": "4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x" + } + }, + "node_modules/typescript": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz", + "integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, "node_modules/unbox-primitive": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", @@ -4333,6 +4463,12 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/vscode-textmate": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", + "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", + "dev": true + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -5007,12 +5143,27 @@ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, + "@types/node": { + "version": "16.10.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.3.tgz", + "integrity": "sha512-ho3Ruq+fFnBrZhUYI46n/bV2GjwzSkwuT4dTf0GkuNFmnb8nq4ny2z9JEVemFi6bdEJanHLlYfy9c6FN9B9McQ==", + "dev": true + }, "@types/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, + "@types/util.promisify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/util.promisify/-/util.promisify-1.0.4.tgz", + "integrity": "sha512-sqbKBFegMRBvFOTq1+dXmRNfZvGZTNT+PlmIla/RFWLTQuNIKK3F9txxuG35Hk5Yl72pQLKdMBKwieqDcgzJ4Q==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -5201,6 +5352,18 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, + "canhazdb-client": { + "version": "file:client", + "requires": { + "@types/util.promisify": "^1.0.4", + "basictap": "^2.2.2", + "c8": "^7.9.0", + "mql-to-jql": "^1.4.0", + "tcpocket": "^7.5.0", + "typedoc": "^0.22.5", + "typescript": "^4.4.3" + } + }, "caniuse-lite": { "version": "1.0.30001265", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", @@ -5335,9 +5498,9 @@ } }, "electron-to-chromium": { - "version": "1.3.863", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.863.tgz", - "integrity": "sha512-C+dLP4xM1DCqvEUjtqCGhd6DJGnXq1t03QR2ZxEWUQPkaXxDlzPUyWsSh17LHLQBEfmBCRfTbA3LpjiVikWsxg==", + "version": "1.3.864", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz", + "integrity": "sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw==", "dev": true, "peer": true }, @@ -6463,6 +6626,12 @@ "minimist": "^1.2.5" } }, + "jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true + }, "jsx-ast-utils": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz", @@ -6572,6 +6741,12 @@ "yallist": "^4.0.0" } }, + "lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -6580,6 +6755,12 @@ "semver": "^6.0.0" } }, + "marked": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.7.tgz", + "integrity": "sha512-ctKqbnLuNbsHbI26cfMyOlKgXGfl1orOv1AvWWDX7AkgfMOwCWvmuYc+mVLeWhQ9W6hdWVBynOs96VkcscKo0Q==", + "dev": true + }, "mime": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", @@ -6730,6 +6911,32 @@ "wrappy": "1" } }, + "onigasm": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", + "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", + "dev": true, + "requires": { + "lru-cache": "^5.1.1" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, "optionator": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", @@ -7288,6 +7495,17 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, + "shiki": { + "version": "0.9.11", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.11.tgz", + "integrity": "sha512-tjruNTLFhU0hruCPoJP0y+B9LKOmcqUhTpxn7pcJB3fa+04gFChuEmxmrUfOJ7ZO6Jd+HwMnDHgY3lv3Tqonuw==", + "dev": true, + "requires": { + "jsonc-parser": "^3.0.0", + "onigasm": "^2.2.5", + "vscode-textmate": "5.2.0" + } + }, "side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -7486,9 +7704,9 @@ } }, "tcpocket": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.4.3.tgz", - "integrity": "sha512-+7R3+2/cVxCnE5QNcI8jCbGyHg8dkCZkqS0E5gaEFLJnru+RQBCTMwbiafgliRcgy//Bljrp/idCAh8kjAgn4A==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.5.0.tgz", + "integrity": "sha512-fjSRCtt5MIEdBcTYJsM36q3Whgtf1zvv6OSyzGH4OEkBGTnscUtbKR2J9KwFnLqe9UWJolPsLsTSASBIuVNuyA==", "requires": { "increlation": "^2.0.1" } @@ -7552,6 +7770,25 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" }, + "typedoc": { + "version": "0.22.5", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.5.tgz", + "integrity": "sha512-KFrWGU1iKiTGw0RcyjLNYDmhd7uICU14HgBNPmFKY/sT4Pm/fraaLyWyisst9vGTUAKxqibqoDITR7+ZcAkhHg==", + "dev": true, + "requires": { + "glob": "^7.2.0", + "lunr": "^2.3.9", + "marked": "^3.0.4", + "minimatch": "^3.0.4", + "shiki": "^0.9.11" + } + }, + "typescript": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz", + "integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==", + "dev": true + }, "unbox-primitive": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", @@ -7638,6 +7875,12 @@ "spdx-expression-parse": "^3.0.0" } }, + "vscode-textmate": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", + "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", + "dev": true + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", diff --git a/package.json b/package.json index 60416cc..36fdea8 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "lib/index.js", "scripts": { - "test": "./makeCerts.sh && NODE_ENV=test c8 --check-coverage --lines 89 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 -x client --check-coverage --lines 89 node test" }, "keywords": [], "author": { @@ -15,6 +15,7 @@ }, "license": "AGPL-3.0", "dependencies": { + "canhazdb-client": "file:./client", "chalk": "^4.1.2", "crypto-random-string": "^4.0.0", "debarrel": "^1.0.2", @@ -26,7 +27,7 @@ "node-ejdb-lite": "^3.4.4", "servatron": "^2.2.3", "server-destroy": "^1.0.1", - "tcpocket": "^7.4.3", + "tcpocket": "^7.5.0", "use-http": "^1.0.26", "uuid": "^8.3.2" }, diff --git a/test/features/conflicts.js b/test/features/conflicts.js index aaadb2e..ab94e2a 100644 --- a/test/features/conflicts.js +++ b/test/features/conflicts.js @@ -3,6 +3,7 @@ import c from '../../lib/constants.js'; import createTestServers from '../helpers/createTestServers.js'; import tcpocket from 'tcpocket'; import test from 'basictap'; +import waitUntil from '../../lib/utils/waitUntil.js'; const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); @@ -44,7 +45,7 @@ async function createConflict (servers, client) { } test('conflicts - post failure creates conflict', async t => { - t.plan(4); + t.plan(2); t.timeout(3000); const servers = await createTestServers(2); @@ -63,11 +64,13 @@ test('conflicts - post failure creates conflict', async t => { t.equal(foundConflict, undefined, 'conflict not found'); } - await sleep(500); + await waitUntil(() => { + const unhealthyServers = servers.filter((server) => { + return server.thisNode.status !== 'healthy'; + }); - for (const server of servers) { - t.equal(server.thisNode.status, 'healthy', 'server status is healthy'); - } + return unhealthyServers.length === 0; + }); await Promise.all([ client.close(), diff --git a/test/features/lock.js b/test/features/lock.js index d3f2c0b..14d6769 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -322,7 +322,7 @@ test('lock - and wait but node closes', async t => { }); test('lock - system collection (system.locks)', async t => { - t.plan(5); + t.plan(4); const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); @@ -342,9 +342,10 @@ test('lock - system collection (system.locks)', async t => { const locks = getResponse.json()[c.DATA]; - t.equal(locks.length, 1, 'had 1 lock'); - t.ok(locks[0].id, 'first lock had id'); - t.deepEqual(locks[0].keys, ['tests']); + const filteredLocks = locks.filter(lock => lock.keys[0] === 'tests'); + + t.equal(filteredLocks.length, 1, 'had 1 lock'); + t.ok(filteredLocks[0].id, 'first lock had id'); await client.close(); await servers.close(); diff --git a/test/features/systemCollections.js b/test/features/systemCollections.js index 8829bf1..e74f7f4 100644 --- a/test/features/systemCollections.js +++ b/test/features/systemCollections.js @@ -33,7 +33,7 @@ test('systemCollections - post increments documentCount', async t => { t.equal(postResponses[0].command, c.STATUS_CREATED, 'has correct status'); - await sleep(250); + await sleep(500); const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'system.collections', @@ -62,7 +62,7 @@ test('systemCollections - post batch increments documentCount', async t => { // First batch { await createExampleDocuments(client, 3); - await sleep(250); + await sleep(500); const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'system.collections', diff --git a/test/index.js b/test/index.js index 6af30a3..77f7af6 100644 --- a/test/index.js +++ b/test/index.js @@ -16,7 +16,7 @@ import('./features/systemCollections.js'); import('./modules/controllers/createControllerStore.js'); // process.on('beforeExit', () => { -// setTimeout(() => { +// setInterval(() => { // wtfnode.dump(); // }, 5000); // }); From d774866938c18841f783dc7cf219e0de55fa78b1 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 10:29:16 +0100 Subject: [PATCH 53/73] Add checkout submodules to ci --- .github/workflows/test.yml | 3 +++ lib/modules/web/index.js | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 99877da..e60dd0d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -15,6 +15,9 @@ jobs: steps: - uses: actions/checkout@v2 + - name: Checkout submodules + uses: textbook/git-checkout-submodule-action@master + - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: diff --git a/lib/modules/web/index.js b/lib/modules/web/index.js index 414586c..3683135 100644 --- a/lib/modules/web/index.js +++ b/lib/modules/web/index.js @@ -70,7 +70,7 @@ function webModule (context) { }) ); } catch (error) { - log.warn('failed to authenticate', { error }); + log.warn('failed to authenticate', { error: error.message }); response.end( JSON.stringify({ error: error.message From 4947be983a7af54e73753f5d12f8d75d1c5f40ec Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 17:25:19 +0100 Subject: [PATCH 54/73] Remove web meta --- web/meta.json | 1053 ------------------------------------------------- 1 file changed, 1053 deletions(-) delete mode 100644 web/meta.json diff --git a/web/meta.json b/web/meta.json deleted file mode 100644 index 4abee1e..0000000 --- a/web/meta.json +++ /dev/null @@ -1,1053 +0,0 @@ -{ - "inputs": { - "node_modules/object-assign/index.js": { - "bytes": 2108, - "imports": [] - }, - "node_modules/react/cjs/react.development.js": { - "bytes": 72141, - "imports": [ - { - "path": "node_modules/object-assign/index.js", - "kind": "require-call" - } - ] - }, - "node_modules/react/index.js": { - "bytes": 190, - "imports": [ - { - "path": "node_modules/react/cjs/react.development.js", - "kind": "require-call" - } - ] - }, - "node_modules/scheduler/cjs/scheduler.development.js": { - "bytes": 17563, - "imports": [] - }, - "node_modules/scheduler/index.js": { - "bytes": 198, - "imports": [ - { - "path": "node_modules/scheduler/cjs/scheduler.development.js", - "kind": "require-call" - } - ] - }, - "node_modules/scheduler/cjs/scheduler-tracing.development.js": { - "bytes": 9001, - "imports": [] - }, - "node_modules/scheduler/tracing.js": { - "bytes": 214, - "imports": [ - { - "path": "node_modules/scheduler/cjs/scheduler-tracing.development.js", - "kind": "require-call" - } - ] - }, - "node_modules/react-dom/cjs/react-dom.development.js": { - "bytes": 894563, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "require-call" - }, - { - "path": "node_modules/object-assign/index.js", - "kind": "require-call" - }, - { - "path": "node_modules/scheduler/index.js", - "kind": "require-call" - }, - { - "path": "node_modules/scheduler/tracing.js", - "kind": "require-call" - } - ] - }, - "node_modules/react-dom/index.js": { - "bytes": 1363, - "imports": [ - { - "path": "node_modules/react-dom/cjs/react-dom.development.js", - "kind": "require-call" - } - ] - }, - "web/js/hooks/useLocalStorage.js": { - "bytes": 752, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - } - ] - }, - "web/js/utils/readFile.js": { - "bytes": 273, - "imports": [] - }, - "web/img/file.svg": { - "bytes": 1637, - "imports": [] - }, - "web/js/components/FileInput.js": { - "bytes": 919, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "web/js/utils/readFile.js", - "kind": "import-statement" - }, - { - "path": "web/img/file.svg", - "kind": "require-call" - } - ] - }, - "web/js/hooks/useApi.js": { - "bytes": 589, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-ssr/dist/useSSR.js": { - "bytes": 2079, - "imports": [] - }, - "node_modules/urs/dist/useRefState.js": { - "bytes": 1200, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "require-call" - } - ] - }, - "node_modules/use-http/dist/esm/types.js": { - "bytes": 3133, - "imports": [] - }, - "node_modules/use-http/dist/esm/utils.js": { - "bytes": 13074, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-ssr/dist/useSSR.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/FetchContext.js": { - "bytes": 231, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/defaults.js": { - "bytes": 1541, - "imports": [ - { - "path": "node_modules/use-http/dist/esm/types.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/useFetchArgs.js": { - "bytes": 5012, - "imports": [ - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - }, - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/FetchContext.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/defaults.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/doFetchArgs.js": { - "bytes": 9182, - "imports": [ - { - "path": "node_modules/use-http/dist/esm/types.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/storage/localStorage.js": { - "bytes": 5977, - "imports": [ - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/storage/memoryStorage.js": { - "bytes": 5070, - "imports": [] - }, - "node_modules/use-http/dist/esm/useCache.js": { - "bytes": 1134, - "imports": [ - { - "path": "node_modules/use-ssr/dist/useSSR.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/types.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/storage/localStorage.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/storage/memoryStorage.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/useFetch.js": { - "bytes": 18694, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-ssr/dist/useSSR.js", - "kind": "import-statement" - }, - { - "path": "node_modules/urs/dist/useRefState.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/types.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useFetchArgs.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/doFetchArgs.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useCache.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/useMutation.js": { - "bytes": 2194, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useFetch.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/FetchContext.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/useQuery.js": { - "bytes": 2105, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useFetch.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/FetchContext.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/utils.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/Provider.js": { - "bytes": 692, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-ssr/dist/useSSR.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/FetchContext.js", - "kind": "import-statement" - } - ] - }, - "node_modules/use-http/dist/esm/index.js": { - "bytes": 210, - "imports": [ - { - "path": "node_modules/use-http/dist/esm/useFetch.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useFetch.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useMutation.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/useQuery.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/Provider.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/FetchContext.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/types.js", - "kind": "import-statement" - } - ] - }, - "web/js/components/AuthenticationDialog.js": { - "bytes": 2383, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "web/js/hooks/useLocalStorage.js", - "kind": "import-statement" - }, - { - "path": "web/js/components/FileInput.js", - "kind": "import-statement" - }, - { - "path": "web/js/hooks/useApi.js", - "kind": "import-statement" - }, - { - "path": "node_modules/use-http/dist/esm/index.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@babel/runtime/helpers/esm/extends.js": { - "bytes": 397, - "imports": [] - }, - "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js": { - "bytes": 195, - "imports": [] - }, - "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js": { - "bytes": 4392, - "imports": [ - { - "path": "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js": { - "bytes": 4455, - "imports": [] - }, - "node_modules/stylis/src/Enum.js": { - "bytes": 595, - "imports": [] - }, - "node_modules/stylis/src/Utility.js": { - "bytes": 1944, - "imports": [] - }, - "node_modules/stylis/src/Tokenizer.js": { - "bytes": 4677, - "imports": [ - { - "path": "node_modules/stylis/src/Utility.js", - "kind": "import-statement" - } - ] - }, - "node_modules/stylis/src/Parser.js": { - "bytes": 5365, - "imports": [ - { - "path": "node_modules/stylis/src/Enum.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Utility.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Tokenizer.js", - "kind": "import-statement" - } - ] - }, - "node_modules/stylis/src/Prefixer.js": { - "bytes": 4791, - "imports": [ - { - "path": "node_modules/stylis/src/Enum.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Utility.js", - "kind": "import-statement" - } - ] - }, - "node_modules/stylis/src/Serializer.js": { - "bytes": 944, - "imports": [ - { - "path": "node_modules/stylis/src/Enum.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Utility.js", - "kind": "import-statement" - } - ] - }, - "node_modules/stylis/src/Middleware.js": { - "bytes": 3019, - "imports": [ - { - "path": "node_modules/stylis/src/Enum.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Utility.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Tokenizer.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Serializer.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Prefixer.js", - "kind": "import-statement" - } - ] - }, - "node_modules/stylis/index.js": { - "bytes": 236, - "imports": [ - { - "path": "node_modules/stylis/src/Enum.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Utility.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Parser.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Prefixer.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Tokenizer.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Serializer.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/src/Middleware.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js": { - "bytes": 372, - "imports": [] - }, - "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js": { - "bytes": 10574, - "imports": [ - { - "path": "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/stylis/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "node_modules/react-is/cjs/react-is.development.js": { - "bytes": 6980, - "imports": [] - }, - "node_modules/react-is/index.js": { - "bytes": 196, - "imports": [ - { - "path": "node_modules/react-is/cjs/react-is.development.js", - "kind": "require-call" - } - ] - }, - "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js": { - "bytes": 2743, - "imports": [ - { - "path": "node_modules/react-is/index.js", - "kind": "require-call" - } - ] - }, - "node_modules/@emotion/react/isolated-hoist-non-react-statics-do-not-use-this-in-your-code/dist/emotion-react-isolated-hoist-non-react-statics-do-not-use-this-in-your-code.browser.esm.js": { - "bytes": 452, - "imports": [ - { - "path": "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js": { - "bytes": 1580, - "imports": [] - }, - "node_modules/@emotion/hash/dist/hash.browser.esm.js": { - "bytes": 1648, - "imports": [] - }, - "node_modules/@emotion/unitless/dist/unitless.browser.esm.js": { - "bytes": 899, - "imports": [] - }, - "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js": { - "bytes": 10992, - "imports": [ - { - "path": "node_modules/@emotion/hash/dist/hash.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/unitless/dist/unitless.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js": { - "bytes": 6828, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@babel/runtime/helpers/esm/extends.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/react/isolated-hoist-non-react-statics-do-not-use-this-in-your-code/dist/emotion-react-isolated-hoist-non-react-statics-do-not-use-this-in-your-code.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/react/dist/emotion-react.browser.esm.js": { - "bytes": 10066, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@babel/runtime/helpers/esm/extends.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/react/isolated-hoist-non-react-statics-do-not-use-this-in-your-code/dist/emotion-react-isolated-hoist-non-react-statics-do-not-use-this-in-your-code.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js": { - "bytes": 6082, - "imports": [ - { - "path": "node_modules/@babel/runtime/helpers/esm/extends.js", - "kind": "import-statement" - }, - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/react/dist/emotion-react.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js": { - "bytes": 1667, - "imports": [ - { - "path": "node_modules/@babel/runtime/helpers/esm/extends.js", - "kind": "import-statement" - }, - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/react/dist/emotion-react.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js", - "kind": "import-statement" - } - ] - }, - "web/img/folderWhite.svg": { - "bytes": 545, - "imports": [] - }, - "web/js/components/MainUI.js": { - "bytes": 2201, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "web/js/hooks/useApi.js", - "kind": "import-statement" - }, - { - "path": "node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js", - "kind": "import-statement" - }, - { - "path": "web/img/folderWhite.svg", - "kind": "require-call" - }, - { - "path": "web/img/file.svg", - "kind": "require-call" - } - ] - }, - "web/img/logo.svg": { - "bytes": 34195, - "imports": [] - }, - "web/js/index.js": { - "bytes": 1552, - "imports": [ - { - "path": "node_modules/react/index.js", - "kind": "import-statement" - }, - { - "path": "node_modules/react-dom/index.js", - "kind": "import-statement" - }, - { - "path": "web/js/components/AuthenticationDialog.js", - "kind": "import-statement" - }, - { - "path": "web/js/components/MainUI.js", - "kind": "import-statement" - }, - { - "path": "web/js/hooks/useLocalStorage.js", - "kind": "import-statement" - }, - { - "path": "web/img/logo.svg", - "kind": "require-call" - } - ] - } - }, - "outputs": { - "web/public/file-J4MVLT6G.svg": { - "imports": [], - "exports": [], - "inputs": { - "web/img/file.svg": { - "bytesInOutput": 1637 - } - }, - "bytes": 1637 - }, - "web/public/folderWhite-DYGC7V55.svg": { - "imports": [], - "exports": [], - "inputs": { - "web/img/folderWhite.svg": { - "bytesInOutput": 545 - } - }, - "bytes": 545 - }, - "web/public/logo-CIAK2MM6.svg": { - "imports": [], - "exports": [], - "inputs": { - "web/img/logo.svg": { - "bytesInOutput": 34195 - } - }, - "bytes": 34195 - }, - "web/public/index.min.js.map": { - "imports": [], - "exports": [], - "inputs": {}, - "bytes": 1527811 - }, - "web/public/index.min.js": { - "imports": [], - "exports": [], - "entryPoint": "web/js/index.js", - "inputs": { - "node_modules/object-assign/index.js": { - "bytesInOutput": 966 - }, - "node_modules/react/cjs/react.development.js": { - "bytesInOutput": 23921 - }, - "node_modules/react/index.js": { - "bytesInOutput": 51 - }, - "node_modules/scheduler/cjs/scheduler.development.js": { - "bytesInOutput": 5240 - }, - "node_modules/scheduler/index.js": { - "bytesInOutput": 51 - }, - "node_modules/scheduler/cjs/scheduler-tracing.development.js": { - "bytesInOutput": 2956 - }, - "node_modules/scheduler/tracing.js": { - "bytesInOutput": 51 - }, - "node_modules/react-dom/cjs/react-dom.development.js": { - "bytesInOutput": 252296 - }, - "node_modules/react-dom/index.js": { - "bytesInOutput": 51 - }, - "web/img/file.svg": { - "bytesInOutput": 85 - }, - "node_modules/use-ssr/dist/useSSR.js": { - "bytesInOutput": 1185 - }, - "node_modules/urs/dist/useRefState.js": { - "bytesInOutput": 547 - }, - "node_modules/react-is/cjs/react-is.development.js": { - "bytesInOutput": 2579 - }, - "node_modules/react-is/index.js": { - "bytesInOutput": 51 - }, - "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js": { - "bytesInOutput": 1024 - }, - "web/img/folderWhite.svg": { - "bytesInOutput": 85 - }, - "web/img/logo.svg": { - "bytesInOutput": 85 - }, - "web/js/index.js": { - "bytesInOutput": 903 - }, - "web/js/components/AuthenticationDialog.js": { - "bytesInOutput": 1410 - }, - "web/js/hooks/useLocalStorage.js": { - "bytesInOutput": 314 - }, - "web/js/components/FileInput.js": { - "bytesInOutput": 534 - }, - "web/js/utils/readFile.js": { - "bytesInOutput": 136 - }, - "web/js/hooks/useApi.js": { - "bytesInOutput": 307 - }, - "node_modules/use-http/dist/esm/useFetch.js": { - "bytesInOutput": 7348 - }, - "node_modules/use-http/dist/esm/types.js": { - "bytesInOutput": 410 - }, - "node_modules/use-http/dist/esm/utils.js": { - "bytesInOutput": 5200 - }, - "node_modules/use-http/dist/esm/useFetchArgs.js": { - "bytesInOutput": 1958 - }, - "node_modules/use-http/dist/esm/FetchContext.js": { - "bytesInOutput": 78 - }, - "node_modules/use-http/dist/esm/defaults.js": { - "bytesInOutput": 777 - }, - "node_modules/use-http/dist/esm/doFetchArgs.js": { - "bytesInOutput": 3230 - }, - "node_modules/use-http/dist/esm/useCache.js": { - "bytesInOutput": 543 - }, - "node_modules/use-http/dist/esm/storage/localStorage.js": { - "bytesInOutput": 2874 - }, - "node_modules/use-http/dist/esm/storage/memoryStorage.js": { - "bytesInOutput": 2445 - }, - "node_modules/use-http/dist/esm/index.js": { - "bytesInOutput": 0 - }, - "node_modules/use-http/dist/esm/useMutation.js": { - "bytesInOutput": 16 - }, - "node_modules/use-http/dist/esm/useQuery.js": { - "bytesInOutput": 16 - }, - "node_modules/use-http/dist/esm/Provider.js": { - "bytesInOutput": 28 - }, - "web/js/components/MainUI.js": { - "bytesInOutput": 1587 - }, - "node_modules/@babel/runtime/helpers/esm/extends.js": { - "bytesInOutput": 211 - }, - "node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js": { - "bytesInOutput": 1109 - }, - "node_modules/@emotion/memoize/dist/emotion-memoize.browser.esm.js": { - "bytesInOutput": 110 - }, - "node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js": { - "bytesInOutput": 4139 - }, - "node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js": { - "bytesInOutput": 2345 - }, - "node_modules/@emotion/react/dist/emotion-react.browser.esm.js": { - "bytesInOutput": 4030 - }, - "node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js": { - "bytesInOutput": 1900 - }, - "node_modules/stylis/src/Enum.js": { - "bytesInOutput": 106 - }, - "node_modules/stylis/src/Utility.js": { - "bytesInOutput": 488 - }, - "node_modules/stylis/src/Tokenizer.js": { - "bytesInOutput": 1414 - }, - "node_modules/stylis/src/Parser.js": { - "bytesInOutput": 1551 - }, - "node_modules/stylis/src/Prefixer.js": { - "bytesInOutput": 2142 - }, - "node_modules/stylis/src/Serializer.js": { - "bytesInOutput": 277 - }, - "node_modules/stylis/src/Middleware.js": { - "bytesInOutput": 610 - }, - "node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js": { - "bytesInOutput": 3522 - }, - "node_modules/@emotion/react/dist/emotion-element-99289b21.browser.esm.js": { - "bytesInOutput": 1018 - }, - "node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js": { - "bytesInOutput": 356 - }, - "node_modules/@emotion/hash/dist/hash.browser.esm.js": { - "bytesInOutput": 563 - }, - "node_modules/@emotion/unitless/dist/unitless.browser.esm.js": { - "bytesInOutput": 653 - }, - "node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js": { - "bytesInOutput": 4743 - } - }, - "bytes": 355064 - } - } -} \ No newline at end of file From 1a7665844347e1a30a4b771a3ef778e41c59b45f Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 17:25:37 +0100 Subject: [PATCH 55/73] Fix react bug with infinite loop --- .gitignore | 1 + package.json | 3 +++ web/js/components/AuthenticationDialog.js | 10 +++++++--- web/js/components/MainUI.js | 2 +- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 011425e..0cab1c2 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ canhazdata certs coverage web/public +web/meta.json diff --git a/package.json b/package.json index 36fdea8..fb2c800 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,9 @@ "email": "me@markwylde.com", "url": "https://github.com/markwylde" }, + "semistandard": { + "ignore": "client" + }, "license": "AGPL-3.0", "dependencies": { "canhazdb-client": "file:./client", diff --git a/web/js/components/AuthenticationDialog.js b/web/js/components/AuthenticationDialog.js index e505295..59feaa2 100644 --- a/web/js/components/AuthenticationDialog.js +++ b/web/js/components/AuthenticationDialog.js @@ -4,11 +4,13 @@ import FileInput from '../components/FileInput.js'; import useApi from '../hooks/useApi.js'; import useHttp from 'use-http'; +const allowCustomCA = false; + function AuthenticationDialog (props) { - const { post, response, loading, error } = useHttp({ + const { post } = useHttp({ cachePolicy: 'no-cache' }); - const [settings, settingsState] = useApi('/api/settings'); + const [settings] = useApi('/api/settings'); const [authenticationData, setAuthenticationData] = useLocalStorage('authenticationData', {}); @@ -17,7 +19,9 @@ function AuthenticationDialog (props) { return; } - if (!authenticationData.ca && settings.ca) { + const sameCA = authenticationData.ca === settings.ca; + + if (!authenticationData.ca || (!sameCA && !allowCustomCA)) { setAuthenticationData({ ...authenticationData, ca: settings.ca diff --git a/web/js/components/MainUI.js b/web/js/components/MainUI.js index 2bd94b2..9ba8ecd 100644 --- a/web/js/components/MainUI.js +++ b/web/js/components/MainUI.js @@ -65,7 +65,7 @@ const CollectionsTree = styled.div(` `); function MainUI (props) { - const [collections, collectionsState] = useApi('/api/system.collections', { + const [collections] = useApi('/api/system.collections', { headers: { authorisation: props.authToken } From e200cd2dd9cace3b23b517ae2cf6a102f35949d3 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 18:14:28 +0100 Subject: [PATCH 56/73] Implement document view --- lib/modules/http/index.js | 12 ++++++++---- package-lock.json | 11 +++++++++++ package.json | 1 + web/js/components/MainUI.js | 38 ++++++++++++++++++++++++------------- 4 files changed, 45 insertions(+), 17 deletions(-) diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js index 85ee622..62ac1e2 100644 --- a/lib/modules/http/index.js +++ b/lib/modules/http/index.js @@ -17,9 +17,11 @@ async function handleGetDocument (context, request, response, { collectionId, do response.end(JSON.stringify(data[0], null, 2)); } -async function handleGetCollection (context, request, response, { collectionId }) { +async function handleGetCollection (context, request, response, { collectionId, query, limit }) { const getResult = await context.thisNode.client.send(c.GET, { - [c.COLLECTION_ID]: collectionId + [c.COLLECTION_ID]: collectionId, + [c.QUERY]: query, + [c.LIMIT]: limit ? parseInt(limit) : undefined }); const data = getResult.json()[c.DATA]; @@ -38,11 +40,13 @@ function httpModule (context) { }, function (request, response) { log.info('request received'); const path = request.url || request.headers[':path']; - const parts = path.split('/'); + const url = new URL(path, 'http://example.com'); + const parts = url.pathname.split('/'); if (parts.length === 3) { handleGetCollection(context, request, response, { - collectionId: parts[2] + collectionId: parts[2], + limit: url.searchParams.get('limit') }); return; } diff --git a/package-lock.json b/package-lock.json index 2b9b305..3e40151 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "dependencies": { "canhazdb-client": "file:./client", "chalk": "^4.1.2", + "classnames": "^2.3.1", "crypto-random-string": "^4.0.0", "debarrel": "^1.0.2", "final-stream": "^2.0.4", @@ -1048,6 +1049,11 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -5380,6 +5386,11 @@ "supports-color": "^7.1.0" } }, + "classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", diff --git a/package.json b/package.json index fb2c800..127a684 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "dependencies": { "canhazdb-client": "file:./client", "chalk": "^4.1.2", + "classnames": "^2.3.1", "crypto-random-string": "^4.0.0", "debarrel": "^1.0.2", "final-stream": "^2.0.4", diff --git a/web/js/components/MainUI.js b/web/js/components/MainUI.js index 9ba8ecd..3245b84 100644 --- a/web/js/components/MainUI.js +++ b/web/js/components/MainUI.js @@ -1,6 +1,7 @@ import React from 'react'; import useApi from '../hooks/useApi.js'; import styled from '@emotion/styled'; +import classnames from 'classnames'; const mainUiStyle = { display: 'flex', @@ -20,11 +21,7 @@ const CollectionsListView = styled.div(` padding: 0; list-style: none; } - ul > li > a > img { - height: 20px; - margin-right: 5px; - } - ul > li > a { + ul > li { display: flex; place-items: center; padding: 5px; @@ -47,13 +44,16 @@ const CollectionsTree = styled.div(` } ul > li > a:hover { - background-color: black; + background-color: #325759; } ul > li > a > img { height: 20px; margin-right: 5px; } + ul > li.active > a { + background-color: #325759; + } ul > li > a { display: flex; place-items: center; @@ -65,19 +65,34 @@ const CollectionsTree = styled.div(` `); function MainUI (props) { + const collectionId = window.location.pathname.substr(1); + const [collections] = useApi('/api/system.collections', { headers: { authorisation: props.authToken } }); + const [documents] = useApi(`/api/${collectionId}?limit=10`, { + headers: { + authorisation: props.authToken + } + }); + return (
    {(collections || []).map(collection => { return ( -
  • +
  • {collection.collectionId} @@ -89,15 +104,12 @@ function MainUI (props) { -
    system.collections
    +
    {collectionId}
      - {(collections || []).map(collection => { + {(documents || []).map(collection => { return (
    • - - - {collection.collectionId} - +
      {JSON.stringify(collection, null, 2)}
    • ); })} From 3c9e1bc84f799648a1494370698b8f22e10569fd Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 18:43:14 +0100 Subject: [PATCH 57/73] Upgrade basictap --- package-lock.json | 14 +++++++------- package.json | 2 +- test/lib/driver/index.js | 14 +++++++------- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3e40151..3e67433 100644 --- a/package-lock.json +++ b/package-lock.json @@ -29,7 +29,7 @@ "devDependencies": { "@emotion/styled": "^11.3.0", "axios": "^0.22.0", - "basictap": "^2.2.2", + "basictap": "^2.4.0", "c8": "^7.10.0", "esbuild": "^0.13.4", "eslint": "^7.32.0", @@ -929,9 +929,9 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/basictap": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.2.tgz", - "integrity": "sha512-mvDJ1fyahqhcfadkq/RgoTZ/64LBKuh2AQmLbdGXzaRb6kNBIHhnlue5KPWKy4EP+wYsnKYsB7tyIPwvUId57Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.0.tgz", + "integrity": "sha512-vYcZb0F6X2ZLykBS9KRp8UVXCFh0FmXSRfJXi2ulqVIQ3a8+q5XOFJpQNTu4QnP6Qz4ZmPcaX9be8g6TGle/OQ==", "dev": true, "dependencies": { "colorette": "^2.0.13", @@ -5290,9 +5290,9 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "basictap": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.2.2.tgz", - "integrity": "sha512-mvDJ1fyahqhcfadkq/RgoTZ/64LBKuh2AQmLbdGXzaRb6kNBIHhnlue5KPWKy4EP+wYsnKYsB7tyIPwvUId57Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.0.tgz", + "integrity": "sha512-vYcZb0F6X2ZLykBS9KRp8UVXCFh0FmXSRfJXi2ulqVIQ3a8+q5XOFJpQNTu4QnP6Qz4ZmPcaX9be8g6TGle/OQ==", "dev": true, "requires": { "colorette": "^2.0.13", diff --git a/package.json b/package.json index 127a684..39ab3ad 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@emotion/styled": "^11.3.0", "axios": "^0.22.0", - "basictap": "^2.2.2", + "basictap": "^2.4.0", "c8": "^7.10.0", "esbuild": "^0.13.4", "eslint": "^7.32.0", diff --git a/test/lib/driver/index.js b/test/lib/driver/index.js index 4ab3693..fc1d14f 100644 --- a/test/lib/driver/index.js +++ b/test/lib/driver/index.js @@ -6,7 +6,7 @@ import createDriver from '../../../lib/driver/index.js'; test('count: no records', async t => { t.plan(1); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { @@ -24,7 +24,7 @@ test('count: no records', async t => { test('get: no records', async t => { t.plan(1); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { @@ -42,7 +42,7 @@ test('get: no records', async t => { test('post: records', async t => { t.plan(2); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { @@ -62,7 +62,7 @@ test('post: records', async t => { test('get: records - with projection', async t => { t.plan(1); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { @@ -91,7 +91,7 @@ test('get: records - with projection', async t => { test('put: record', async t => { t.plan(2); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { @@ -123,7 +123,7 @@ test('put: record', async t => { test('patch: record', async t => { t.plan(2); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { @@ -155,7 +155,7 @@ test('patch: record', async t => { test('del: record', async t => { t.plan(2); - await fs.promises.rmdir('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); + await fs.promises.rm('./canhazdata/tmptest', { recursive: true }).catch(_ => {}); const driver = await createDriver({ options: { From 2ad2dde93137734c8b87ec462e91958e42f936a0 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 19:57:54 +0100 Subject: [PATCH 58/73] Add better debug message --- lib/index.js | 7 +++---- package-lock.json | 14 +++++++------- package.json | 2 +- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/index.js b/lib/index.js index b0489ca..d012a63 100644 --- a/lib/index.js +++ b/lib/index.js @@ -188,11 +188,10 @@ async function canhazdb (rawOptions) { return activeRequests === 0; }); + // #72 activeRequests is sometimes wrong when closing server + // https://github.com/canhazdb/server/issues/72 const workaroundTimer = setTimeout(() => { - // This shouldn't be needed. The only time it should timeout is - // because we can't remove the activeRequests for a client that - // has unexpectantly disconnected. - console.log('TODO: [FIX_001]'); + console.log('Issue 72: Workaround was required as activeRequests did not reset in time!'); activeRequestsWait.cancel(); }, 500); await activeRequestsWait; diff --git a/package-lock.json b/package-lock.json index 3e67433..32b6cf2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -29,7 +29,7 @@ "devDependencies": { "@emotion/styled": "^11.3.0", "axios": "^0.22.0", - "basictap": "^2.4.0", + "basictap": "^2.4.1", "c8": "^7.10.0", "esbuild": "^0.13.4", "eslint": "^7.32.0", @@ -929,9 +929,9 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/basictap": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.0.tgz", - "integrity": "sha512-vYcZb0F6X2ZLykBS9KRp8UVXCFh0FmXSRfJXi2ulqVIQ3a8+q5XOFJpQNTu4QnP6Qz4ZmPcaX9be8g6TGle/OQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.1.tgz", + "integrity": "sha512-Jsje8aaoL26KofHENS6crAdBtz6oFc89LEoULNfChAYCc+noSwp+YVy1Jp8jmr/r67TFgCrGSYSvO4yKLcOp0g==", "dev": true, "dependencies": { "colorette": "^2.0.13", @@ -5290,9 +5290,9 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "basictap": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.0.tgz", - "integrity": "sha512-vYcZb0F6X2ZLykBS9KRp8UVXCFh0FmXSRfJXi2ulqVIQ3a8+q5XOFJpQNTu4QnP6Qz4ZmPcaX9be8g6TGle/OQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.1.tgz", + "integrity": "sha512-Jsje8aaoL26KofHENS6crAdBtz6oFc89LEoULNfChAYCc+noSwp+YVy1Jp8jmr/r67TFgCrGSYSvO4yKLcOp0g==", "dev": true, "requires": { "colorette": "^2.0.13", diff --git a/package.json b/package.json index 39ab3ad..530e816 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@emotion/styled": "^11.3.0", "axios": "^0.22.0", - "basictap": "^2.4.0", + "basictap": "^2.4.1", "c8": "^7.10.0", "esbuild": "^0.13.4", "eslint": "^7.32.0", From 6c9fd52a76c8ddbe101db3df7e4bc783c2f2321c Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sat, 9 Oct 2021 21:09:02 +0100 Subject: [PATCH 59/73] Add system.nodes to system.collections --- lib/modules/collections/index.js | 6 +++++ test/features/http.js | 44 ++++++++++++++++++++++++-------- web/js/components/MainUI.js | 4 +-- 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js index 4082ac3..ee6e849 100644 --- a/lib/modules/collections/index.js +++ b/lib/modules/collections/index.js @@ -59,6 +59,12 @@ function collectionsModule (context) { collectionId: 'system.collections', documentCount: 0 }); + + insertDefaultDocument(context, 'system.collections', { + id: 'system.nodes', + collectionId: 'system.nodes', + documentCount: 0 + }); }); const collector = documentCountCollector(async function (cache) { diff --git a/test/features/http.js b/test/features/http.js index 33bc472..df85047 100644 --- a/test/features/http.js +++ b/test/features/http.js @@ -1,3 +1,4 @@ +import fs from 'fs'; import test from 'basictap'; import tcpocket from 'tcpocket'; import createTestServers from '../helpers/createTestServers.js'; @@ -5,15 +6,43 @@ import httpRequest from '../helpers/httpRequest.js'; import createExampleDocuments from '../helpers/createExampleDocuments.js'; import c from '../../lib/constants.js'; -test('http - get collection', async t => { - t.plan(3); +const packageJson = JSON.parse( + fs.readFileSync('./package.json', 'utf8') +); +async function prepareTest () { const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); const domain = `${servers[0].options.httpHost}:${servers[0].options.httpPort}`; - await createExampleDocuments(client, 3); + const exampleDocuments = await createExampleDocuments(client, 3); + + return { client, servers, domain, exampleDocuments }; +} + +test.skip('get: root pathname', async t => { + t.plan(1); + + const { client, servers, domain } = await prepareTest(); + + const request = await httpRequest(`https://${domain}/`); + + await client.close(); + await servers.close(); + + t.deepEqual(request.data, { + info: 'https://canhazdb.com', + name: packageJson.name, + status: 200, + version: packageJson.version + }); +}); + +test('http - get collection', async t => { + t.plan(3); + + const { client, servers, domain } = await prepareTest(); const request = await httpRequest(`https://${domain}/api/tests`); const documents = request.data.sort((a, b) => { @@ -31,13 +60,8 @@ test('http - get collection', async t => { test('http - get document', async t => { t.plan(3); - const servers = await createTestServers(1); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); - const domain = `${servers[0].options.httpHost}:${servers[0].options.httpPort}`; - - const createResults = await createExampleDocuments(client, 1); - const document = createResults[0].json()[c.DATA]; + const { client, servers, domain, exampleDocuments } = await prepareTest(); + const document = exampleDocuments[0].json()[c.DATA]; const request = await httpRequest(`https://${domain}/api/tests/${document.id}`); diff --git a/web/js/components/MainUI.js b/web/js/components/MainUI.js index 3245b84..04be22d 100644 --- a/web/js/components/MainUI.js +++ b/web/js/components/MainUI.js @@ -89,11 +89,11 @@ function MainUI (props) { key={collection.id} className={ classnames({ - active: collection.id === collectionId + active: collection.collectionId === collectionId }) } > - + {collection.collectionId} From d634453b4382b58dadb1491702bcc3b44fcfc6e7 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 10 Oct 2021 14:47:49 +0100 Subject: [PATCH 60/73] Add root version information to http endpoint --- client | 2 +- lib/index.js | 1 + lib/modules/collections/index.js | 26 +++--- lib/modules/http/index.js | 42 ++++++++- lib/utils/insertDefaultDocument.js | 15 +++- lib/utils/validateAlphaNumericDashDot.js | 10 +++ package-lock.json | 107 +++++++++++++++-------- package.json | 3 +- test/features/http.js | 2 +- 9 files changed, 153 insertions(+), 55 deletions(-) create mode 100644 lib/utils/validateAlphaNumericDashDot.js diff --git a/client b/client index 44721fe..e64156e 160000 --- a/client +++ b/client @@ -1 +1 @@ -Subproject commit 44721fe73bb984c6aa243c49ffb0348e8a5d563c +Subproject commit e64156efade0fa728315d1be3243cf18f58c5056 diff --git a/lib/index.js b/lib/index.js index d012a63..61c4db7 100644 --- a/lib/index.js +++ b/lib/index.js @@ -174,6 +174,7 @@ async function canhazdb (rawOptions) { }; context.close = async function () { + context.emit('closed'); context.closed = true; context.locks.cancel( diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js index ee6e849..61f25c1 100644 --- a/lib/modules/collections/index.js +++ b/lib/modules/collections/index.js @@ -53,18 +53,22 @@ function collectionsModule (context) { handler: systemNodesController }); - context.on('ready', () => { - insertDefaultDocument(context, 'system.collections', { - id: 'system.collections', - collectionId: 'system.collections', - documentCount: 0 - }); + context.on('ready', async () => { + try { + await insertDefaultDocument(context, 'system.collections', { + id: 'system.collections', + collectionId: 'system.collections', + documentCount: 0 + }); - insertDefaultDocument(context, 'system.collections', { - id: 'system.nodes', - collectionId: 'system.nodes', - documentCount: 0 - }); + await insertDefaultDocument(context, 'system.collections', { + id: 'system.nodes', + collectionId: 'system.nodes', + documentCount: 0 + }); + } catch (error) { + // + } }); const collector = documentCountCollector(async function (cache) { diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js index 62ac1e2..4ddb5fb 100644 --- a/lib/modules/http/index.js +++ b/lib/modules/http/index.js @@ -1,7 +1,14 @@ +import fs from 'fs'; import http2 from 'http2'; import logslot from 'logslot'; +import writeResponse from 'write-response'; +import validateAlphaNumericDashDot from '../../utils/validateAlphaNumericDashDot.js'; import c from '../../constants.js'; +const packageJson = JSON.parse( + fs.readFileSync('./package.json', 'utf8') +); + const log = logslot('canhazdb.http'); async function handleGetDocument (context, request, response, { collectionId, documentId }) { @@ -38,11 +45,42 @@ function httpModule (context) { ...context.options.tls, allowHTTP1: true }, function (request, response) { - log.info('request received'); const path = request.url || request.headers[':path']; - const url = new URL(path, 'http://example.com'); + const url = new URL(path, 'https://127.0.0.1/'); const parts = url.pathname.split('/'); + const [, collectionId, resourceId] = url.pathname.split('/'); + + log.info('request received', { pathname: url.pathname, method: request.method }); + + if (collectionId && !validateAlphaNumericDashDot(collectionId)) { + writeResponse(422, { + errors: ['collectionId can only contain a-z, A-Z, 0-9, dashs or dots'] + }, response); + return; + } + + const unhealthyNodes = context.nodes.filter(node => node.status !== 'healthy'); + if (unhealthyNodes.length > context.settings.replicas - 1) { + writeResponse(503, { + errors: ['too many nodes in the cluster are unhealthy, therefore the database is down'] + }, response); + return; + } + + if (request.method === 'GET' && url.pathname === '/') { + writeResponse(200, { + status: 200, + name: packageJson.name, + version: packageJson.version, + info: 'https://canhazdb.com' + }, response); + return; + } else if (url.pathname === '/') { + writeResponse(405, { error: 'method not allowed' }, response); + return; + } + if (parts.length === 3) { handleGetCollection(context, request, response, { collectionId: parts[2], diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index ec78e6a..e44f7e7 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -1,12 +1,25 @@ import logslot from 'logslot'; import canhazdbClient from 'canhazdb-client'; +import waitUntil from './waitUntil.js'; + const log = logslot('canhazdb.utils.insertDefaultDocument'); async function insertDefaultDocument (context, collectionId, document) { let lockId; let client; try { - client = await canhazdbClient(context.clientConfig); + await waitUntil(() => { + return context.thisNode || context.closed; + }); + + if (!context.thisNode || !context.thisNode.client) { + throw new Error('no thisNode.connection'); + } + + client = await canhazdbClient({ + ...context.clientConfig, + connection: context.thisNode.client + }); lockId = await client.lock([collectionId]); const existingDocument = await client.getOne(collectionId, { diff --git a/lib/utils/validateAlphaNumericDashDot.js b/lib/utils/validateAlphaNumericDashDot.js new file mode 100644 index 0000000..be66678 --- /dev/null +++ b/lib/utils/validateAlphaNumericDashDot.js @@ -0,0 +1,10 @@ +const validateAlphaNumericDashDot = (value) => { + const matches = value.match(/[^a-z0-9-.]/gi, ''); + if (matches) { + return false; + } + + return true; +}; + +export default validateAlphaNumericDashDot; diff --git a/package-lock.json b/package-lock.json index 32b6cf2..1bc5488 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,7 +22,7 @@ "node-ejdb-lite": "^3.4.4", "servatron": "^2.2.3", "server-destroy": "^1.0.1", - "tcpocket": "^7.5.0", + "tcpocket": "^7.5.2", "use-http": "^1.0.26", "uuid": "^8.3.2" }, @@ -37,6 +37,7 @@ "react": "^17.0.2", "react-dom": "^17.0.2", "semistandard": "^16.0.1", + "write-response": "^1.2.3", "wtfnode": "^0.9.1" } }, @@ -46,7 +47,7 @@ "license": "MIT", "dependencies": { "mql-to-jql": "^1.4.0", - "tcpocket": "^7.5.0" + "tcpocket": "^7.5.2" }, "devDependencies": { "@types/util.promisify": "^1.0.4", @@ -1233,6 +1234,12 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/error-with-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/error-with-object/-/error-with-object-1.1.0.tgz", + "integrity": "sha512-ctthqZF3x2gG1CxAGB+irtAOXGYj7S9r+0flbRGe01qCOU/yJJAyvzOKuR/Locu/8pA1+v9jGDiEKS5ZX6OKDw==", + "dev": true + }, "node_modules/es-abstract": { "version": "1.19.1", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", @@ -1701,25 +1708,6 @@ "ms": "^2.1.1" } }, - "node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, "node_modules/eslint-plugin-import": { "version": "2.24.2", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", @@ -1854,6 +1842,25 @@ "eslint": ">=5.16.0" } }, + "node_modules/eslint-plugin-node/node_modules/eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "dev": true, + "dependencies": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=4.19.1" + } + }, "node_modules/eslint-plugin-node/node_modules/ignore": { "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", @@ -4243,9 +4250,9 @@ "dev": true }, "node_modules/tcpocket": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.5.0.tgz", - "integrity": "sha512-fjSRCtt5MIEdBcTYJsM36q3Whgtf1zvv6OSyzGH4OEkBGTnscUtbKR2J9KwFnLqe9UWJolPsLsTSASBIuVNuyA==", + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.5.2.tgz", + "integrity": "sha512-3U8Jw8MI0q8se1f6gk2vCNjzEiSyFifB/A2TH4xauptwEaGCalCNAboaO8U2fMn3mexzLh5vcq7prPU0KhYQfg==", "dependencies": { "increlation": "^2.0.1" } @@ -4535,6 +4542,15 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, + "node_modules/write-response": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/write-response/-/write-response-1.2.3.tgz", + "integrity": "sha512-Na6IPeWSJJsu3sqGmvVVsEAhgCSjbycZOQJJc8mm8Ek3zX4u2kkoFXDHouWw6Wd0VdAJLfuoWEnHVsGqKv0/LQ==", + "dev": true, + "dependencies": { + "error-with-object": "^1.1.0" + } + }, "node_modules/wtfnode": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz", @@ -5365,7 +5381,7 @@ "basictap": "^2.2.2", "c8": "^7.9.0", "mql-to-jql": "^1.4.0", - "tcpocket": "^7.5.0", + "tcpocket": "^7.5.2", "typedoc": "^0.22.5", "typescript": "^4.4.3" } @@ -5538,6 +5554,12 @@ "is-arrayish": "^0.2.1" } }, + "error-with-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/error-with-object/-/error-with-object-1.1.0.tgz", + "integrity": "sha512-ctthqZF3x2gG1CxAGB+irtAOXGYj7S9r+0flbRGe01qCOU/yJJAyvzOKuR/Locu/8pA1+v9jGDiEKS5ZX6OKDw==", + "dev": true + }, "es-abstract": { "version": "1.19.1", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", @@ -5870,16 +5892,6 @@ } } }, - "eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - } - }, "eslint-plugin-import": { "version": "2.24.2", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", @@ -5986,6 +5998,16 @@ "semver": "^6.1.0" }, "dependencies": { + "eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "dev": true, + "requires": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + } + }, "ignore": { "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", @@ -7715,9 +7737,9 @@ } }, "tcpocket": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.5.0.tgz", - "integrity": "sha512-fjSRCtt5MIEdBcTYJsM36q3Whgtf1zvv6OSyzGH4OEkBGTnscUtbKR2J9KwFnLqe9UWJolPsLsTSASBIuVNuyA==", + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/tcpocket/-/tcpocket-7.5.2.tgz", + "integrity": "sha512-3U8Jw8MI0q8se1f6gk2vCNjzEiSyFifB/A2TH4xauptwEaGCalCNAboaO8U2fMn3mexzLh5vcq7prPU0KhYQfg==", "requires": { "increlation": "^2.0.1" } @@ -7934,6 +7956,15 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, + "write-response": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/write-response/-/write-response-1.2.3.tgz", + "integrity": "sha512-Na6IPeWSJJsu3sqGmvVVsEAhgCSjbycZOQJJc8mm8Ek3zX4u2kkoFXDHouWw6Wd0VdAJLfuoWEnHVsGqKv0/LQ==", + "dev": true, + "requires": { + "error-with-object": "^1.1.0" + } + }, "wtfnode": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz", diff --git a/package.json b/package.json index 530e816..573aaca 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "node-ejdb-lite": "^3.4.4", "servatron": "^2.2.3", "server-destroy": "^1.0.1", - "tcpocket": "^7.5.0", + "tcpocket": "^7.5.2", "use-http": "^1.0.26", "uuid": "^8.3.2" }, @@ -46,6 +46,7 @@ "react": "^17.0.2", "react-dom": "^17.0.2", "semistandard": "^16.0.1", + "write-response": "^1.2.3", "wtfnode": "^0.9.1" } } diff --git a/test/features/http.js b/test/features/http.js index df85047..271ef5f 100644 --- a/test/features/http.js +++ b/test/features/http.js @@ -21,7 +21,7 @@ async function prepareTest () { return { client, servers, domain, exampleDocuments }; } -test.skip('get: root pathname', async t => { +test('get: root pathname', async t => { t.plan(1); const { client, servers, domain } = await prepareTest(); From d1956281b71bf63780a329a76a57426f96e8bb62 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 10 Oct 2021 21:55:50 +0100 Subject: [PATCH 61/73] Fix the insertDefaultDocument strategy logic --- lib/index.js | 2 -- .../collections/documentCountCollector.js | 13 +++++-- lib/modules/collections/index.js | 34 +++++++------------ lib/modules/http/index.js | 16 ++++----- lib/modules/lock/index.js | 10 +++--- lib/modules/notify/index.js | 10 +++--- lib/modules/web/index.js | 5 +-- lib/utils/insertDefaultDocument.js | 9 +++-- package-lock.json | 14 ++++---- package.json | 2 +- test/features/conflicts.js | 3 ++ test/features/http.js | 8 +++-- test/features/systemCollections.js | 2 +- test/index.js | 28 +++++++++++---- web/js/components/MainUI.js | 2 +- 15 files changed, 88 insertions(+), 70 deletions(-) diff --git a/lib/index.js b/lib/index.js index 61c4db7..3cb18b9 100644 --- a/lib/index.js +++ b/lib/index.js @@ -219,8 +219,6 @@ async function canhazdb (rawOptions) { ...context.options.tls }; - context.emit('ready'); - return context; } diff --git a/lib/modules/collections/documentCountCollector.js b/lib/modules/collections/documentCountCollector.js index 8320e72..d936aac 100644 --- a/lib/modules/collections/documentCountCollector.js +++ b/lib/modules/collections/documentCountCollector.js @@ -1,5 +1,8 @@ +import logslot from 'logslot'; import debarrel from 'debarrel'; +const log = logslot('canhazdb.documentCountCollector'); + function documentCountCollector (handler) { const cache = {}; let processing = false; @@ -12,9 +15,13 @@ function documentCountCollector (handler) { processing = true; - await handler(cache); - - processing = false; + try { + await handler(cache); + } catch (error) { + log.error('could not update documentCount', error); + } finally { + processing = false; + } } const watch = debarrel( diff --git a/lib/modules/collections/index.js b/lib/modules/collections/index.js index 61f25c1..93c35bc 100644 --- a/lib/modules/collections/index.js +++ b/lib/modules/collections/index.js @@ -30,12 +30,10 @@ async function updateCollectionByAmount (context, collectionId, cachedItem) { } }); } else { - await context.thisNode.client.send(c.POST, { - [c.COLLECTION_ID]: 'system.collections', - [c.DATA]: { - collectionId, - documentCount: cachedItem.documentCountAdd - } + await insertDefaultDocument(context, 'system.collections', { + id: collectionId, + collectionId: collectionId, + documentCount: cachedItem.documentCountAdd }); } } @@ -53,22 +51,16 @@ function collectionsModule (context) { handler: systemNodesController }); - context.on('ready', async () => { - try { - await insertDefaultDocument(context, 'system.collections', { - id: 'system.collections', - collectionId: 'system.collections', - documentCount: 0 - }); + insertDefaultDocument(context, 'system.collections', { + id: 'system.collections', + collectionId: 'system.collections', + documentCount: 0 + }); - await insertDefaultDocument(context, 'system.collections', { - id: 'system.nodes', - collectionId: 'system.nodes', - documentCount: 0 - }); - } catch (error) { - // - } + insertDefaultDocument(context, 'system.collections', { + id: 'system.nodes', + collectionId: 'system.nodes', + documentCount: 0 }); const collector = documentCountCollector(async function (cache) { diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js index 4ddb5fb..a48b8ae 100644 --- a/lib/modules/http/index.js +++ b/lib/modules/http/index.js @@ -33,7 +33,7 @@ async function handleGetCollection (context, request, response, { collectionId, const data = getResult.json()[c.DATA]; - response.end(JSON.stringify(data, null, 2)); + writeResponse(200, data, response); } function httpModule (context) { @@ -81,18 +81,18 @@ function httpModule (context) { return; } - if (parts.length === 3) { + if (parts.length === 2) { handleGetCollection(context, request, response, { - collectionId: parts[2], + collectionId: parts[1], limit: url.searchParams.get('limit') }); return; } - if (parts.length === 4) { + if (parts.length === 3) { handleGetDocument(context, request, response, { - collectionId: parts[2], - documentId: parts[3] + collectionId: parts[1], + documentId: parts[2] }); return; } @@ -102,14 +102,14 @@ function httpModule (context) { server.on('error', (error) => console.error(error)); server.on('listening', () => { - log.info('web server listening on ' + server.address().port); + log.info('http server listening on ' + server.address().port); }); server.listen(context.options.httpPort, context.options.httpHost); return { cleanup: () => { - log.info('web server closed'); + log.info('http server closed'); server.close(); } }; diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index 8383840..def6933 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -73,12 +73,10 @@ function lockModule (context) { socket.state.locks = []; }); - context.on('ready', () => { - insertDefaultDocument(context, 'system.collections', { - id: 'system.locks', - collectionId: 'system.locks', - documentCount: 0 - }); + insertDefaultDocument(context, 'system.collections', { + id: 'system.locks', + collectionId: 'system.locks', + documentCount: 0 }); } diff --git a/lib/modules/notify/index.js b/lib/modules/notify/index.js index 89fd1eb..1bb3213 100644 --- a/lib/modules/notify/index.js +++ b/lib/modules/notify/index.js @@ -151,12 +151,10 @@ async function notifyModule (context) { }); }); - context.on('ready', () => { - insertDefaultDocument(context, 'system.collections', { - id: 'system.notifys', - collectionId: 'system.notifys', - documentCount: 0 - }); + insertDefaultDocument(context, 'system.collections', { + id: 'system.notifys', + collectionId: 'system.notifys', + documentCount: 0 }); } diff --git a/lib/modules/web/index.js b/lib/modules/web/index.js index 3683135..8f0abe9 100644 --- a/lib/modules/web/index.js +++ b/lib/modules/web/index.js @@ -105,7 +105,8 @@ function webModule (context) { if (request.headers.authorisation) { try { - const proxiedResponse = await axios(`https://localhost:${context.options.httpPort}${urlPath}`, { + const proxyUrl = `https://localhost:${context.options.httpPort}${urlPath.replace('/api', '')}`; + const proxiedResponse = await axios(proxyUrl, { method: request.method, httpsAgent: authentications[request.headers.authorisation]?.httpsAgent }); @@ -134,7 +135,7 @@ function webModule (context) { server.on('error', (error) => console.error(error)); server.on('listening', () => { - log.info('web server listening on ' + server.address().port); + log.info('web ui server listening on ' + server.address().port); }); server.listen(context.options.webPort, context.options.webHost); diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index e44f7e7..bb83a73 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -9,10 +9,10 @@ async function insertDefaultDocument (context, collectionId, document) { let client; try { await waitUntil(() => { - return context.thisNode || context.closed; + return context?.thisNode?.status === 'healthy' || context.closed; }); - if (!context.thisNode || !context.thisNode.client) { + if (!context?.thisNode?.client) { throw new Error('no thisNode.connection'); } @@ -39,7 +39,10 @@ async function insertDefaultDocument (context, collectionId, document) { if (lockId) { client.unlock(lockId).catch(() => {}); } - log.warn('could not insert default document [' + collectionId + ']', { message: error.message }); + log.warn('could not insert default document [' + document.id + ']', { message: error.message }); + if (!context.closed) { + return insertDefaultDocument(context, collectionId, document); + } } } diff --git a/package-lock.json b/package-lock.json index 1bc5488..99b838c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,7 @@ "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", - "node-ejdb-lite": "^3.4.4", + "node-ejdb-lite": "^3.4.5", "servatron": "^2.2.3", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", @@ -3027,9 +3027,9 @@ "dev": true }, "node_modules/node-ejdb-lite": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", - "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.5.tgz", + "integrity": "sha512-vO2Qcd2gGRIreX+2x6OhB+dtY/WziaG8N0dJeemaucQ135x/V48gRLu7hyiMGX2GeNS+YaWOqiYyDcbIvAEZfA==", "cpu": [ "x64", "x32", @@ -6830,9 +6830,9 @@ "dev": true }, "node-ejdb-lite": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.4.tgz", - "integrity": "sha512-izUVg9CTaDeCoIABO93iJ9mquhYFxXIxAJ5tDD5DN7K4C1haMGFb8hff0vYXnfH5hbvih+mz6uWqzU1AOnGmNg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.5.tgz", + "integrity": "sha512-vO2Qcd2gGRIreX+2x6OhB+dtY/WziaG8N0dJeemaucQ135x/V48gRLu7hyiMGX2GeNS+YaWOqiYyDcbIvAEZfA==", "requires": { "semver": "^7.3.5" }, diff --git a/package.json b/package.json index 573aaca..32174c8 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "logslot": "^2.1.0", "minimist": "^1.2.5", "mql-to-jql": "^1.4.0", - "node-ejdb-lite": "^3.4.4", + "node-ejdb-lite": "^3.4.5", "servatron": "^2.2.3", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", diff --git a/test/features/conflicts.js b/test/features/conflicts.js index ab94e2a..be48054 100644 --- a/test/features/conflicts.js +++ b/test/features/conflicts.js @@ -48,6 +48,8 @@ test('conflicts - post failure creates conflict', async t => { t.plan(2); t.timeout(3000); + console.log('THERE IS A RACE CONDITION BUG IN THIS TEST'); + const servers = await createTestServers(2); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); @@ -66,6 +68,7 @@ test('conflicts - post failure creates conflict', async t => { await waitUntil(() => { const unhealthyServers = servers.filter((server) => { + console.log('RACE CONDITION: May be here?'); return server.thisNode.status !== 'healthy'; }); diff --git a/test/features/http.js b/test/features/http.js index 271ef5f..87ff421 100644 --- a/test/features/http.js +++ b/test/features/http.js @@ -22,7 +22,7 @@ async function prepareTest () { } test('get: root pathname', async t => { - t.plan(1); + t.plan(2); const { client, servers, domain } = await prepareTest(); @@ -31,6 +31,8 @@ test('get: root pathname', async t => { await client.close(); await servers.close(); + t.equal(request.headers['content-type'], 'application/json'); + t.deepEqual(request.data, { info: 'https://canhazdb.com', name: packageJson.name, @@ -44,7 +46,7 @@ test('http - get collection', async t => { const { client, servers, domain } = await prepareTest(); - const request = await httpRequest(`https://${domain}/api/tests`); + const request = await httpRequest(`https://${domain}/tests`); const documents = request.data.sort((a, b) => { return a.foo > b.foo ? 1 : -1; }); @@ -63,7 +65,7 @@ test('http - get document', async t => { const { client, servers, domain, exampleDocuments } = await prepareTest(); const document = exampleDocuments[0].json()[c.DATA]; - const request = await httpRequest(`https://${domain}/api/tests/${document.id}`); + const request = await httpRequest(`https://${domain}/tests/${document.id}`); t.equal(request.status, 200); t.ok(request.data.id, 'has an id'); diff --git a/test/features/systemCollections.js b/test/features/systemCollections.js index e74f7f4..7c6c55f 100644 --- a/test/features/systemCollections.js +++ b/test/features/systemCollections.js @@ -62,7 +62,7 @@ test('systemCollections - post batch increments documentCount', async t => { // First batch { await createExampleDocuments(client, 3); - await sleep(500); + await sleep(1000); const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'system.collections', diff --git a/test/index.js b/test/index.js index 77f7af6..dbba420 100644 --- a/test/index.js +++ b/test/index.js @@ -1,4 +1,5 @@ -// import wtfnode from 'wtfnode'; +import wtfnode from 'wtfnode'; +import basictap from 'basictap'; import('./lib/driver/index.js'); import('./lib/utils/calculateAllowedErrorCount.js'); @@ -15,8 +16,23 @@ import('./features/systemCollections.js'); import('./modules/controllers/createControllerStore.js'); -// process.on('beforeExit', () => { -// setInterval(() => { -// wtfnode.dump(); -// }, 5000); -// }); +let timer; +let testsFinished; + +basictap.on('finish', () => { + testsFinished = true; + console.log('Finding hanging tasks...'); +}); + +process.on('beforeExit', () => { + if (testsFinished) { + clearInterval(timer); + return; + } + timer = setInterval(() => { + if (testsFinished) { + clearInterval(timer); + } + wtfnode.dump(); + }, 5000); +}); diff --git a/web/js/components/MainUI.js b/web/js/components/MainUI.js index 04be22d..055a488 100644 --- a/web/js/components/MainUI.js +++ b/web/js/components/MainUI.js @@ -65,7 +65,7 @@ const CollectionsTree = styled.div(` `); function MainUI (props) { - const collectionId = window.location.pathname.substr(1); + const collectionId = window.location.pathname.substr(1) || 'system.collections'; const [collections] = useApi('/api/system.collections', { headers: { From 510eee2d617c9ccae57025078a6cead1c17b2d51 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Mon, 11 Oct 2021 21:07:09 +0100 Subject: [PATCH 62/73] Validate request body --- lib/modules/http/index.js | 33 +++++++++++++++++++- test/features/{http.js => http/index.js} | 36 ++++++++++++---------- test/features/http/prepareTest.js | 16 ++++++++++ test/features/http/rootMethodNotAllowed.js | 20 ++++++++++++ test/features/http/validateBodyExists.js | 20 ++++++++++++ test/features/http/validateBodyJson.js | 23 ++++++++++++++ test/index.js | 2 +- 7 files changed, 132 insertions(+), 18 deletions(-) rename test/features/{http.js => http/index.js} (61%) create mode 100644 test/features/http/prepareTest.js create mode 100644 test/features/http/rootMethodNotAllowed.js create mode 100644 test/features/http/validateBodyExists.js create mode 100644 test/features/http/validateBodyJson.js diff --git a/lib/modules/http/index.js b/lib/modules/http/index.js index a48b8ae..6941210 100644 --- a/lib/modules/http/index.js +++ b/lib/modules/http/index.js @@ -4,6 +4,21 @@ import logslot from 'logslot'; import writeResponse from 'write-response'; import validateAlphaNumericDashDot from '../../utils/validateAlphaNumericDashDot.js'; import c from '../../constants.js'; +import finalStream from 'final-stream'; + +async function parseRequestBody (request) { + const data = await finalStream(request); + + try { + if (!data || data.toString() === '') { + return [null, 'none']; + } + + return [JSON.parse(data), 'json']; + } catch (error) { + return [null, 'invalid']; + } +} const packageJson = JSON.parse( fs.readFileSync('./package.json', 'utf8') @@ -44,7 +59,18 @@ function httpModule (context) { const server = http2.createSecureServer({ ...context.options.tls, allowHTTP1: true - }, function (request, response) { + }, async function (request, response) { + const [body, bodyType] = await parseRequestBody(request); + if (bodyType === 'invalid') { + writeResponse(400, { error: 'request body not valid json' }, response); + return; + } + + if (body instanceof Error) { + console.log(body); + process.exit(1); + } + const path = request.url || request.headers[':path']; const url = new URL(path, 'https://127.0.0.1/'); const parts = url.pathname.split('/'); @@ -81,6 +107,11 @@ function httpModule (context) { return; } + if (!body && ['POST', 'PUT', 'PATCH'].includes(request.method)) { + writeResponse(400, { error: 'empty request body not allowed' }, response); + return; + } + if (parts.length === 2) { handleGetCollection(context, request, response, { collectionId: parts[1], diff --git a/test/features/http.js b/test/features/http/index.js similarity index 61% rename from test/features/http.js rename to test/features/http/index.js index 87ff421..ef70782 100644 --- a/test/features/http.js +++ b/test/features/http/index.js @@ -1,26 +1,17 @@ import fs from 'fs'; import test from 'basictap'; -import tcpocket from 'tcpocket'; -import createTestServers from '../helpers/createTestServers.js'; -import httpRequest from '../helpers/httpRequest.js'; -import createExampleDocuments from '../helpers/createExampleDocuments.js'; -import c from '../../lib/constants.js'; +import httpRequest from '../../helpers/httpRequest.js'; +import c from '../../../lib/constants.js'; + +import prepareTest from './prepareTest.js'; +import rootMethodNotAllowed from './rootMethodNotAllowed.js'; +import validateBodyExists from './validateBodyExists.js'; +import validateBodyJson from './validateBodyJson.js'; const packageJson = JSON.parse( fs.readFileSync('./package.json', 'utf8') ); -async function prepareTest () { - const servers = await createTestServers(1); - const client = tcpocket.createClient(servers[0].clientConfig); - await client.waitUntilConnected(); - const domain = `${servers[0].options.httpHost}:${servers[0].options.httpPort}`; - - const exampleDocuments = await createExampleDocuments(client, 3); - - return { client, servers, domain, exampleDocuments }; -} - test('get: root pathname', async t => { t.plan(2); @@ -41,6 +32,19 @@ test('get: root pathname', async t => { }); }); +test('post: root pathname', rootMethodNotAllowed('post')); +test('put: root pathname', rootMethodNotAllowed('put')); +test('patch: root pathname', rootMethodNotAllowed('patch')); +test('delete: root pathname', rootMethodNotAllowed('delete')); + +test('post: body exists', validateBodyExists('post')); +test('put: body exists', validateBodyExists('put')); +test('patch: body exists', validateBodyExists('patch')); + +test('post: body is json', validateBodyJson('post')); +test('put: body is json', validateBodyJson('put')); +test('patch: body is json', validateBodyJson('patch')); + test('http - get collection', async t => { t.plan(3); diff --git a/test/features/http/prepareTest.js b/test/features/http/prepareTest.js new file mode 100644 index 0000000..f21e93a --- /dev/null +++ b/test/features/http/prepareTest.js @@ -0,0 +1,16 @@ +import tcpocket from 'tcpocket'; +import createTestServers from '../../helpers/createTestServers.js'; +import createExampleDocuments from '../../helpers/createExampleDocuments.js'; + +async function prepareTest () { + const servers = await createTestServers(1); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + const domain = `${servers[0].options.httpHost}:${servers[0].options.httpPort}`; + + const exampleDocuments = await createExampleDocuments(client, 3); + + return { client, servers, domain, exampleDocuments }; +} + +export default prepareTest; diff --git a/test/features/http/rootMethodNotAllowed.js b/test/features/http/rootMethodNotAllowed.js new file mode 100644 index 0000000..670f8ee --- /dev/null +++ b/test/features/http/rootMethodNotAllowed.js @@ -0,0 +1,20 @@ +import httpRequest from '../../helpers/httpRequest.js'; +import prepareTest from './prepareTest.js'; + +function rootMethodNotAllowed (method) { + return async t => { + t.plan(2); + + const { client, servers, domain } = await prepareTest(); + + const request = await httpRequest(`https://${domain}/`, { method }); + + await client.close(); + await servers.close(); + + t.deepEqual(request.data, { error: 'method not allowed' }); + t.equal(request.status, 405); + }; +} + +export default rootMethodNotAllowed; diff --git a/test/features/http/validateBodyExists.js b/test/features/http/validateBodyExists.js new file mode 100644 index 0000000..2ed5cb5 --- /dev/null +++ b/test/features/http/validateBodyExists.js @@ -0,0 +1,20 @@ +import httpRequest from '../../helpers/httpRequest.js'; +import prepareTest from './prepareTest.js'; + +function validateBodyExists (method) { + return async t => { + t.plan(2); + + const { client, servers, domain } = await prepareTest(); + + const request = await httpRequest(`https://${domain}/tests`, { method }); + + await client.close(); + await servers.close(); + + t.deepEqual(request.data, { error: 'empty request body not allowed' }); + t.equal(request.status, 400); + }; +} + +export default validateBodyExists; diff --git a/test/features/http/validateBodyJson.js b/test/features/http/validateBodyJson.js new file mode 100644 index 0000000..6f7fbfd --- /dev/null +++ b/test/features/http/validateBodyJson.js @@ -0,0 +1,23 @@ +import httpRequest from '../../helpers/httpRequest.js'; +import prepareTest from './prepareTest.js'; + +function validateBodyJson (method) { + return async t => { + t.plan(2); + + const { client, servers, domain } = await prepareTest(); + + const request = await httpRequest(`https://${domain}/tests`, { + method, + data: 'this is not json' + }); + + await client.close(); + await servers.close(); + + t.deepEqual(request.data, { error: 'request body not valid json' }); + t.equal(request.status, 400); + }; +} + +export default validateBodyJson; diff --git a/test/index.js b/test/index.js index dbba420..6aa506b 100644 --- a/test/index.js +++ b/test/index.js @@ -6,7 +6,7 @@ import('./lib/utils/calculateAllowedErrorCount.js'); import('./lib/prepareOptions.js'); import('./features/basic.js'); -import('./features/http.js'); +import('./features/http/index.js'); import('./features/cluster.js'); import('./features/conflicts.js'); import('./features/health.js'); From 420e36db1d58c3c57941699b272fd79fee777579 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 12 Aug 2022 00:29:26 +0100 Subject: [PATCH 63/73] Fix a large chunk of raft and locks --- lib/constants.js | 64 +- lib/createHandler.js | 10 +- lib/index.js | 13 +- .../crud/controllers/internal/delete.js | 2 +- .../crud/controllers/internal/patch.js | 2 +- lib/modules/crud/controllers/internal/post.js | 2 +- lib/modules/crud/controllers/internal/put.js | 2 +- lib/modules/lock/controllers/external/lock.js | 28 +- .../external/systemLocksController.js | 7 +- .../lock/controllers/external/unlock.js | 28 +- lib/modules/lock/controllers/internal/lock.js | 26 +- .../lock/controllers/internal/unlock.js | 18 +- lib/modules/lock/index.js | 73 +- lib/modules/raft/index.js | 161 + lib/utils/insertDefaultDocument.js | 4 +- lib/utils/isLockedOrWait.js | 12 +- lib/utils/join.js | 1 + package-lock.json | 7013 +++++++---------- package.json | 35 +- test/features/lock.js | 46 +- test/features/raft.js | 52 + test/helpers/createTestServers.js | 3 +- test/index.js | 50 +- 23 files changed, 3464 insertions(+), 4188 deletions(-) create mode 100644 lib/modules/raft/index.js create mode 100644 test/features/raft.js diff --git a/lib/constants.js b/lib/constants.js index 296e107..332e13a 100644 --- a/lib/constants.js +++ b/lib/constants.js @@ -2,41 +2,47 @@ const constants = { INTERNAL: 2, SYSTEM: 3, - COLLECTION_ID: 4, - RESOURCE_ID: 5, + COLLECTION_ID: 10, + RESOURCE_ID: 11, - DATA: 6, - REPLICATED_NODES: 7, + DATA: 20, + REPLICATED_NODES: 21, - INFO: 8, - COUNT: 9, - GET: 10, - POST: 11, - PUT: 12, - PATCH: 13, - DELETE: 14, + INFO: 30, + COUNT: 31, + GET: 32, + POST: 33, + PUT: 34, + PATCH: 35, + DELETE: 36, - QUERY: 20, - FIELDS: 21, - LIMIT: 22, - ORDER: 23, + QUERY: 40, + FIELDS: 41, + LIMIT: 42, + ORDER: 43, - NOTIFY: 30, - NOTIFY_ON: 31, - NOTIFY_OFF: 32, - NOTIFY_PATH: 33, + NOTIFY: 50, + NOTIFY_ON: 51, + NOTIFY_OFF: 52, + NOTIFY_PATH: 53, - LOCK: 40, - UNLOCK: 41, - LOCK_ID: 42, - LOCK_STRATEGY: 43, - LOCK_STRATEGY_FAIL: 44, - LOCK_STRATEGY_WAIT: 45, - LOCK_KEYS: 46, - LOCK_ORIGIN: 47, + LOCK: 60, + UNLOCK: 61, + LOCK_ID: 62, + LOCK_STRATEGY: 63, + LOCK_STRATEGY_FAIL: 64, + LOCK_STRATEGY_WAIT: 65, + LOCK_KEY: 66, + LOCK_ORIGIN: 67, - COMMAND: 50, - STATUS: 51, + COMMAND: 70, + STATUS: 71, + + RAFT_SYSTEM_PROTO: 80, + RAFT_APPEND: 81, + RAFT_BROADCAST: 82, + RAFT_SNAPSHOT: 83, + RAFT_ACTION_TYPE: 84, ERROR: 100, diff --git a/lib/createHandler.js b/lib/createHandler.js index cd0ace0..7b6afed 100644 --- a/lib/createHandler.js +++ b/lib/createHandler.js @@ -43,12 +43,18 @@ function createHandler (context) { return; } - const result = await controllers[0].handler({ + const resultPromise = controllers[0].handler({ context, socket: request.socket, request, response - }) + }); + + if (!resultPromise.catch) { + throw new Error('createHandler: controllers must return a promise'); + } + + const result = await resultPromise .catch(error => { handleError(request, response, error); }) diff --git a/lib/index.js b/lib/index.js index 3cb18b9..07bb998 100644 --- a/lib/index.js +++ b/lib/index.js @@ -7,13 +7,14 @@ import driver from './driver/index.js'; import join from './utils/join.js'; import waitUntil from './utils/waitUntil.js'; -import notifyModule from './modules/notify/index.js'; import controllersModule from './modules/controllers/index.js'; import collectionsModule from './modules/collections/index.js'; import conflictsModule from './modules/conflicts/index.js'; -import lockModule from './modules/lock/index.js'; import crudModule from './modules/crud/index.js'; import httpModule from './modules/http/index.js'; +import lockModule from './modules/lock/index.js'; +import notifyModule from './modules/notify/index.js'; +import raftModule from './modules/raft/index.js'; import webModule from './modules/web/index.js'; import c from './constants.js'; @@ -65,7 +66,7 @@ async function canhazdb (rawOptions) { } ); - const activeModules = [ + const activeModules = await Promise.all([ controllersModule(context), notifyModule(context), collectionsModule(context), @@ -73,8 +74,9 @@ async function canhazdb (rawOptions) { lockModule(context), crudModule(context), httpModule(context), - webModule(context) - ]; + webModule(context), + raftModule(context) + ]); context.driver = await driver(context); @@ -122,6 +124,7 @@ async function canhazdb (rawOptions) { node.info = resultData[c.DATA]; node.name = resultData[c.DATA].nodeName; + context.nodes[node.name] = node; node.status = resultData[c.DATA].status; if (node.name) { diff --git a/lib/modules/crud/controllers/internal/delete.js b/lib/modules/crud/controllers/internal/delete.js index de463af..c734d89 100644 --- a/lib/modules/crud/controllers/internal/delete.js +++ b/lib/modules/crud/controllers/internal/delete.js @@ -9,7 +9,7 @@ async function deleteController ({ context, socket, request, response }) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + await isLockedOrWait(context, socket, collectionId, lockId, waitForUnlock); const foundDocuments = await context.driver.get(collectionId, query); diff --git a/lib/modules/crud/controllers/internal/patch.js b/lib/modules/crud/controllers/internal/patch.js index 7507b7f..12f468f 100644 --- a/lib/modules/crud/controllers/internal/patch.js +++ b/lib/modules/crud/controllers/internal/patch.js @@ -10,7 +10,7 @@ async function patchController ({ context, socket, request, response }) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + await isLockedOrWait(context, socket, collectionId, lockId, waitForUnlock); const foundDocuments = await context.driver.get(collectionId, query); await context.driver.patch(collectionId, data, query); diff --git a/lib/modules/crud/controllers/internal/post.js b/lib/modules/crud/controllers/internal/post.js index 16c0ba4..b82a649 100644 --- a/lib/modules/crud/controllers/internal/post.js +++ b/lib/modules/crud/controllers/internal/post.js @@ -10,7 +10,7 @@ async function postController ({ context, socket, request, response }) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + await isLockedOrWait(context, socket, collectionId, lockId, waitForUnlock); data._replicatedNodes = replicatedNodes.sort(); const document = await context.driver.post(collectionId, data); diff --git a/lib/modules/crud/controllers/internal/put.js b/lib/modules/crud/controllers/internal/put.js index d26ec3e..19a4bf1 100644 --- a/lib/modules/crud/controllers/internal/put.js +++ b/lib/modules/crud/controllers/internal/put.js @@ -13,7 +13,7 @@ async function putController ({ context, socket, request, response }) { const lockId = requestData[c.LOCK_ID]; const waitForUnlock = requestData[c.LOCK_STRATEGY] !== c.LOCK_STRATEGY_FAIL; - await isLockedOrWait(context, socket, [collectionId], lockId, waitForUnlock); + await isLockedOrWait(context, socket, collectionId, lockId, waitForUnlock); const foundDocuments = await context.driver.get(collectionId, query); diff --git a/lib/modules/lock/controllers/external/lock.js b/lib/modules/lock/controllers/external/lock.js index 2f9038b..d1e6a8f 100644 --- a/lib/modules/lock/controllers/external/lock.js +++ b/lib/modules/lock/controllers/external/lock.js @@ -5,21 +5,31 @@ import c from '../../../../constants.js'; async function lockController ({ context, socket, request, response }) { const requestData = request.json(); + if (typeof requestData[c.LOCK_KEY] !== 'string') { + response.reply(c.STATUS_BAD_REQUEST, { + [c.ERROR]: { + message: 'LOCK_KEY must be a string' + } + }); + return; + } + const id = uuid(); - const results = await context.sendToAllNodes(context, c.LOCK, { - [c.INTERNAL]: context.thisNode.name, + const result = await context.raft.leader.client.send(c.LOCK, { + [c.INTERNAL]: true, [c.LOCK_ID]: id, - [c.LOCK_KEYS]: requestData[c.LOCK_KEYS], + [c.LOCK_KEY]: requestData[c.LOCK_KEY], [c.LOCK_ORIGIN]: context.thisNode.name }); - const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; - }); - - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); + if (result.command !== c.STATUS_OK) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: { + message: 'lock has not been aquired', + reason: result[c.ERROR] + } + }); return; } diff --git a/lib/modules/lock/controllers/external/systemLocksController.js b/lib/modules/lock/controllers/external/systemLocksController.js index 0b1e005..969502e 100644 --- a/lib/modules/lock/controllers/external/systemLocksController.js +++ b/lib/modules/lock/controllers/external/systemLocksController.js @@ -2,12 +2,7 @@ import c from '../../../../constants.js'; async function systemLocksController ({ context, socket, request, response }) { response.reply(c.STATUS_OK, { - [c.DATA]: context.locks.state.locks.map(lock => { - return { - id: lock[0], - keys: lock[1] - }; - }) + [c.DATA]: context.locks.queue }); } diff --git a/lib/modules/lock/controllers/external/unlock.js b/lib/modules/lock/controllers/external/unlock.js index 9109cc3..73f4a02 100644 --- a/lib/modules/lock/controllers/external/unlock.js +++ b/lib/modules/lock/controllers/external/unlock.js @@ -3,23 +3,29 @@ import c from '../../../../constants.js'; async function unlockController ({ context, socket, request, response }) { const requestData = request.json(); - const results = await context.sendToAllNodes(context, c.UNLOCK, { - [c.INTERNAL]: context.thisNode.name, - [c.LOCK_ID]: requestData[c.LOCK_ID] - }); + const matchingLock = socket.state.locks + .find(id => id === requestData[c.LOCK_ID]); - const errors = results.filter(result => { - return result && result.command !== c.STATUS_OK; + if (!matchingLock) { + response.reply(c.STATUS_NOT_FOUND); + return; + } + + const result = await context.raft.leader.client.send(c.UNLOCK, { + [c.INTERNAL]: true, + [c.LOCK_ID]: requestData[c.LOCK_ID] }); - if (errors.length > 0) { - response.reply(errors[0].command, errors[0].data); + if (result.command !== c.STATUS_OK) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: { + message: 'lock has not been released', + reason: result[c.ERROR] + } + }); return; } - socket.state.locks = socket.state.locks - .filter(id => id !== requestData[c.LOCK_ID]); - response.reply(c.STATUS_OK, { [c.LOCK_ID]: requestData[c.LOCK_ID] }); diff --git a/lib/modules/lock/controllers/internal/lock.js b/lib/modules/lock/controllers/internal/lock.js index d5df5f1..468a18b 100644 --- a/lib/modules/lock/controllers/internal/lock.js +++ b/lib/modules/lock/controllers/internal/lock.js @@ -3,16 +3,32 @@ import c from '../../../../constants.js'; async function lockController ({ context, socket, request, response }) { const requestData = request.json(); - const keys = requestData[c.LOCK_KEYS]; + const isLeader = context.raft.leader === context.thisNode; + + if (!isLeader) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: 'internal lock request sent to none leader' + }); + return; + } + + const key = requestData[c.LOCK_KEY]; const id = requestData[c.LOCK_ID]; const lockOrigin = requestData[c.LOCK_ORIGIN]; - context.locks.byNode[lockOrigin] = context.locks.byNode[lockOrigin] || []; context.locks.byNode[lockOrigin].push(id); - await context.locks.add(keys, id); - response.reply(c.STATUS_OK, { - [c.LOCK_ID]: id + context.locks.once('resolved.' + id, () => { + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: id + }); + }); + + await context.dispatchToRaft(context, { + [c.RAFT_ACTION_TYPE]: c.LOCK, + [c.LOCK_KEY]: key, + [c.LOCK_ID]: id, + [c.LOCK_ORIGIN]: lockOrigin }); } diff --git a/lib/modules/lock/controllers/internal/unlock.js b/lib/modules/lock/controllers/internal/unlock.js index 5d7f4bd..da72481 100644 --- a/lib/modules/lock/controllers/internal/unlock.js +++ b/lib/modules/lock/controllers/internal/unlock.js @@ -3,17 +3,31 @@ import c from '../../../../constants.js'; async function unlockController ({ context, socket, request, response }) { const requestData = request.json(); + const isLeader = context.raft.leader === context.thisNode; + + if (!isLeader) { + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: 'internal lock request sent to none leader' + }); + return; + } + const id = requestData[c.LOCK_ID]; - const removedAtLeastOne = await context.locks.remove(id); + const foundLocks = await context.locks.queue.find(lock => lock.id === id); - if (!removedAtLeastOne) { + if (foundLocks.length === 0) { response.reply(c.STATUS_NOT_FOUND, { [c.LOCK_ID]: id }); return; } + await context.dispatchToRaft(context, { + [c.RAFT_ACTION_TYPE]: c.UNLOCK, + [c.LOCK_ID]: id + }); + response.reply(c.STATUS_OK, { [c.LOCK_ID]: id }); diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index def6933..786188d 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -1,17 +1,54 @@ import logslot from 'logslot'; import lockbase from 'lockbase'; +import failmenot from 'failmenot/curried.js'; import systemLocksController from './controllers/external/systemLocksController.js'; import externalLockController from './controllers/external/lock.js'; import externalUnlockController from './controllers/external/unlock.js'; import internalLockController from './controllers/internal/lock.js'; import internalUnlockController from './controllers/internal/unlock.js'; import insertDefaultDocument from '../../utils/insertDefaultDocument.js'; +import waitUntil from '../../utils/waitUntil.js'; import c from '../../constants.js'; const log = logslot('canhazdb.lock'); -function lockModule (context) { +const dispatchToRaftWithRetry = failmenot({ + maximumTime: 5000 +})((context, ...args) => { + if (context.closed) { + return; + } + + return context.dispatchToRaft(context, ...args); +}); + +function lockReducer (state, action) { + if (!state.locks) { + state.locks = { + incremental: 0, + queue: [] + }; + } + if (action[c.RAFT_ACTION_TYPE] === c.LOCK) { + state.locks.queue.push({ + id: action[c.LOCK_ID], + path: action[c.LOCK_KEY] + }); + state.locks.incremental = state.locks.incremental + 1; + return state; + } + + if (action[c.RAFT_ACTION_TYPE] === c.UNLOCK) { + state.locks.queue = state.locks.queue.filter(item => item.id !== action[c.LOCK_ID]); + + return state; + } + + return state; +} + +async function lockModule (context) { context.locks = lockbase(); context.locks.byNode = {}; @@ -46,12 +83,16 @@ function lockModule (context) { }); context.on('client.closed', socket => { + const isLeader = context.raft.leader === context.thisNode; + + if (!isLeader) { + return; + } + socket.state.locks.forEach(lockId => { - context.sendToAllNodes(context, c.UNLOCK, { - [c.INTERNAL]: context.thisNode.name, + dispatchToRaftWithRetry(context, { + [c.RAFT_ACTION_TYPE]: c.UNLOCK, [c.LOCK_ID]: lockId - }).catch(error => { - log.error('could not clean up locks from closed socket', error); }); }); }); @@ -62,7 +103,10 @@ function lockModule (context) { if (context.locks.byNode[node?.name]) { await Promise.all( context.locks.byNode[node?.name].map(lockId => { - return context.locks.remove(lockId); + return dispatchToRaftWithRetry(context, { + [c.RAFT_ACTION_TYPE]: c.UNLOCK, + [c.LOCK_ID]: lockId + }); }) ); delete context.locks.byNode[node?.name]; @@ -73,11 +117,28 @@ function lockModule (context) { socket.state.locks = []; }); + context.on('raft:stateChanged', () => { + context.locks.importState(context.raft.state.locks); + context.locks.byNode = {}; + + context.raft.state.queue?.forEach(lock => { + const lockId = lock.id; + const nodeName = lock.nodeName; + + context.locks.byNode[nodeName] = context.locks.byNode[nodeName] || []; + context.locks.byNode[nodeName].push(lockId); + }); + }); + insertDefaultDocument(context, 'system.collections', { id: 'system.locks', collectionId: 'system.locks', documentCount: 0 }); + + await waitUntil(() => context.raft?.reducers && context.raft?.state); + + context.raft.reducers.push(lockReducer); } export default lockModule; diff --git a/lib/modules/raft/index.js b/lib/modules/raft/index.js new file mode 100644 index 0000000..f80ce44 --- /dev/null +++ b/lib/modules/raft/index.js @@ -0,0 +1,161 @@ +import LifeRaft from '@markwylde/liferaft'; +import logslot from 'logslot'; + +import c from '../../constants.js'; +import waitUntil from '../../utils/waitUntil.js'; + +const log = logslot('canhazdb.raft'); + +async function systemRaftAppendController ({ context, socket, request, response }) { + const requestData = request.json(); + + const isLeader = context.raft.leader === context.thisNode; + + if (!isLeader) { + return context.appendToRaft(context, requestData[c.COMMAND], requestData[c.DATA]); + } + + await context.sendToAllNodes(context, c.RAFT_BROADCAST, { + [c.SYSTEM]: true, + [c.COMMAND]: requestData[c.COMMAND], + [c.RESOURCE_ID]: context.raft.log.length, + [c.DATA]: requestData[c.DATA] + }); + + response.reply(c.STATUS_OK); +} + +async function systemRaftBroadcastController ({ context, socket, request, response }) { + const requestData = request.json(); + + const resourceId = requestData[c.RESOURCE_ID]; + + const action = requestData[c.DATA]; + context.raft.log[resourceId] = action; + + context.raft.state = context.raft.reducers.reduce((state, fn) => { + return fn(state, action); + }, context.raft.state || {}); + + context.emit('raft:stateChanged', context.raft.state); + + response.reply(c.STATUS_OK); +} + +async function raftModule (context) { + let controller; + class CanHazRaft extends LifeRaft { + initialize () { + log.debug(`initializing reply socket on port ${this.address}`); + + controller = async ({ request, response }) => { + const requestData = request.json(); + const data = requestData[c.DATA]; + + this.emit('data', data, (responseData) => { + response.reply(c.RAFT_SYSTEM_PROTO, { + [c.DATA]: responseData + }); + }); + }; + } + + async write (packet, callback) { + if (!this.socket) { + this.socket = context.nodes.find(node => node.address === this.address); + } + + try { + log.debug(`writing packet to socket on port ${this.address}`); + const request = await this.socket?.client?.send(c.RAFT_SYSTEM_PROTO, { + [c.SYSTEM]: true, + [c.DATA]: packet + }); + + if (!request) { + return; + } + + const requestData = request.json(); + const data = requestData[c.DATA]; + + callback(undefined, data); + } catch (error) { + log.warn(`raft failed to write to socket on port ${this.address}`, error); + } + } + } + + context.raft = { + leader: null, + log: [], + reducers: [], + state: {} + }; + + if (Array.from(new Set(context.options.join)).length === 1) { + waitUntil(() => { + return context.thisNode; + }).then(() => { + context.raft.leader = context.thisNode; + }); + } + + context.dispatchToRaft = function (context, data) { + return context.raft.leader.client.send(c.RAFT_APPEND, { + [c.SYSTEM]: true, + [c.DATA]: data + }); + }; + + context.controllers.system.add({ + command: c.RAFT_SYSTEM_PROTO, + handler: (...args) => controller(...args) + }); + + context.controllers.system.add({ + command: c.RAFT_APPEND, + handler: (...args) => systemRaftAppendController(...args) + }); + + context.controllers.system.add({ + command: c.RAFT_BROADCAST, + handler: (...args) => systemRaftBroadcastController(...args) + }); + + const raft = new CanHazRaft(`tls://${context.options.host}:${context.options.port}`, { + context, + 'election min': 200, + 'election max': 1000, + heartbeat: 150 + }); + + raft.on('heartbeat timeout', function () { + log.info('heart beat timeout, starting election'); + }); + + raft.on('leader change', function (to, from) { + context.raft.leader = context.nodes.find(node => node.address === to); + context.emit('raft:leaderChanged', to, from); + log.info('we have a new leader', { to, from }); + }); + + raft.on('leader', function () { + log.info('this node has been elected as the leader'); + }); + + async function join (node) { + raft.join(node.address); + } + + context.nodes.forEach(join); + context.on('node.connected', join); + + return { + cleanup: () => { + raft.end(); + } + }; +} + +export default raftModule; diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index bb83a73..929a40e 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -1,10 +1,12 @@ import logslot from 'logslot'; -import canhazdbClient from 'canhazdb-client'; +// import canhazdbClient from 'canhazdb-client'; import waitUntil from './waitUntil.js'; const log = logslot('canhazdb.utils.insertDefaultDocument'); async function insertDefaultDocument (context, collectionId, document) { + console.warn('insertDefaultDocument has been disabled'); + return; let lockId; let client; try { diff --git a/lib/utils/isLockedOrWait.js b/lib/utils/isLockedOrWait.js index cd7c180..adb2b74 100644 --- a/lib/utils/isLockedOrWait.js +++ b/lib/utils/isLockedOrWait.js @@ -1,23 +1,23 @@ import c from '../constants.js'; -async function isLockedOrWait (context, socket, keys, lockId, waitForUnlock) { - const locked = context.locks.check(keys); +async function isLockedOrWait (context, socket, key, lockId, waitForUnlock) { + const locked = await context.locks.find(key); - if (!locked) { + if (locked.length === 0) { return false; } - if (locked && locked[0] === lockId) { + if (locked[0].id === lockId) { return false; } if (waitForUnlock) { - await context.locks.wait(keys); + await context.locks.wait(key); return false; } throw Object.assign( - new Error('canhazdb: locked ' + keys.toString()), { status: c.STATUS_LOCKED } + new Error('canhazdb: locked ' + key.toString()), { status: c.STATUS_LOCKED } ); } diff --git a/lib/utils/join.js b/lib/utils/join.js index 6f8c573..f0974f2 100644 --- a/lib/utils/join.js +++ b/lib/utils/join.js @@ -25,6 +25,7 @@ function join (context, host, port) { const node = { connected: false, online: false, + address: `tls://${host}:${port}`, host, port, client diff --git a/package-lock.json b/package-lock.json index 99b838c..a6933b4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,820 +9,372 @@ "version": "8.0.0", "license": "AGPL-3.0", "dependencies": { - "canhazdb-client": "file:./client", - "chalk": "^4.1.2", - "classnames": "^2.3.1", - "crypto-random-string": "^4.0.0", + "@markwylde/liferaft": "^1.2.0", + "chalk": "^5.0.1", + "crypto-random-string": "^5.0.0", "debarrel": "^1.0.2", + "failmenot": "^3.0.1", "final-stream": "^2.0.4", - "lockbase": "^1.3.1", - "logslot": "^2.1.0", - "minimist": "^1.2.5", - "mql-to-jql": "^1.4.0", + "lockbase": "^4.1.0", + "logslot": "^2.1.1", + "minimist": "^1.2.6", + "mql-to-jql": "^1.4.1", "node-ejdb-lite": "^3.4.5", - "servatron": "^2.2.3", + "servatron": "^2.3.1", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", "use-http": "^1.0.26", "uuid": "^8.3.2" }, "devDependencies": { - "@emotion/styled": "^11.3.0", - "axios": "^0.22.0", - "basictap": "^2.4.1", - "c8": "^7.10.0", - "esbuild": "^0.13.4", - "eslint": "^7.32.0", - "eslint-plugin-react-hooks": "^4.2.0", - "react": "^17.0.2", - "react-dom": "^17.0.2", + "axios": "^0.27.2", + "basictap": "^3.4.0", + "c8": "^7.12.0", + "esbuild": "^0.15.1", + "eslint": "^8.21.0", + "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", "write-response": "^1.2.3", "wtfnode": "^0.9.1" } }, - "client": { - "name": "canhazdb-client", - "version": "1.1.3", - "license": "MIT", - "dependencies": { - "mql-to-jql": "^1.4.0", - "tcpocket": "^7.5.2" - }, - "devDependencies": { - "@types/util.promisify": "^1.0.4", - "basictap": "^2.2.2", - "c8": "^7.9.0", - "typedoc": "^0.22.5", - "typescript": "^4.4.3" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", - "integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", - "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.18.6", "dev": true, - "peer": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/core": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", - "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", + "node_modules/@babel/highlight": { + "version": "7.14.5", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.15.8", - "@babel/generator": "^7.15.8", - "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.8", - "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.8", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" + "@babel/helper-validator-identifier": "^7.14.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" }, "engines": { "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/generator": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", - "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.15.6", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", - "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.15.0", - "@babel/helper-validator-option": "^7.14.5", - "browserslist": "^4.16.6", - "semver": "^6.3.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=4" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", - "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-get-function-arity": "^7.15.4", - "@babel/template": "^7.15.4", - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" + "color-name": "1.1.3" } }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", - "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", "dev": true, - "peer": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, + "license": "MIT" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=0.8.0" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", - "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", "dev": true, - "peer": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, + "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", - "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.15.4" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", - "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", "dev": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, + "license": "MIT" + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.1.tgz", + "integrity": "sha512-1tORADNFK9QS4KYyUyh3Td9WGrdiI1rSoKvY6A43+9G0kPujBuT4lIGyoK0AweOSO1aRIR28xQUfiJCUa78bUw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=6.9.0" + "node": ">=12" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz", - "integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==", + "node_modules/@eslint/eslintrc": { + "version": "1.3.0", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.15.4", - "@babel/helper-replace-supers": "^7.15.4", - "@babel/helper-simple-access": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/helper-validator-identifier": "^7.15.7", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.3.2", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", - "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.17.0", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.15.4" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=6.9.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", - "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.10.4", "dev": true, - "peer": true, + "license": "Apache-2.0", "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.15.4", - "@babel/helper-optimise-call-expression": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.4" }, "engines": { - "node": ">=6.9.0" + "node": ">=10.10.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", - "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", + "node_modules/@humanwhocodes/gitignore-to-minimatch": { + "version": "1.0.2", "dev": true, - "peer": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" + "license": "Apache-2.0", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", - "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", "dev": true, - "peer": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } + "license": "BSD-3-Clause" }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", "dev": true, + "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", - "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", "dev": true, - "peer": true, + "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=6.0.0" } }, - "node_modules/@babel/helpers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", - "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", "dev": true, - "peer": true, - "dependencies": { - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } + "license": "MIT" }, - "node_modules/@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.14", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/@markwylde/liferaft": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@markwylde/liferaft/-/liferaft-1.2.0.tgz", + "integrity": "sha512-uPYbOEJgdsqrn7KimmQA9x8ihOQpnzbDQ1foOwMos3s1f4OTCTOFFKeEoREJ9aqA0mC+JFe1DkTc7pRcgURH9w==", + "dependencies": { + "emits": "^3.0.0", + "encoding-down": "^7.1.0", + "eventemitter3": "^4.0.7", + "extendible": "^0.1.1", + "immediate": "^3.3.0", + "leveldown": "^6.1.1", + "levelup": "^5.1.1", + "millisecond": "^0.1.2", + "modification": "^1.0.0", + "one-time": "^1.0.0", + "promise-queue": "^2.2.5", + "tick-tock": "^1.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", "dev": true, + "license": "MIT", "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, "engines": { - "node": ">=0.8.0" + "node": ">= 8" } }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", "dev": true, - "engines": { - "node": ">=4" - } + "license": "MIT" }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/@types/json5": { + "version": "0.0.29", "dev": true, + "license": "MIT" + }, + "node_modules/abstract-leveldown": { + "version": "7.2.0", + "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "buffer": "^6.0.3", + "catering": "^2.0.0", + "is-buffer": "^2.0.5", + "level-concat-iterator": "^3.0.0", + "level-supports": "^2.0.1", + "queue-microtask": "^1.2.3" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/@babel/parser": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz", - "integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==", + "node_modules/acorn": { + "version": "8.8.0", "dev": true, - "peer": true, + "license": "MIT", "bin": { - "parser": "bin/babel-parser.js" + "acorn": "bin/acorn" }, "engines": { - "node": ">=6.0.0" + "node": ">=0.4.0" } }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", - "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==", + "node_modules/acorn-jsx": { + "version": "5.3.2", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, + "license": "MIT", "peerDependencies": { - "@babel/core": "^7.0.0-0" + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@babel/runtime": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", - "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", + "node_modules/ajv": { + "version": "6.12.6", "dev": true, + "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.13.4" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@babel/template": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", - "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "node_modules/ansi-colors": { + "version": "4.1.3", "dev": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4" - }, + "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=6" } }, - "node_modules/@babel/traverse": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", - "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", + "node_modules/ansi-regex": { + "version": "5.0.1", "dev": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-function-name": "^7.15.4", - "@babel/helper-hoist-variables": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.15.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", - "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.14.9", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" - }, - "node_modules/@emotion/babel-plugin": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.3.0.tgz", - "integrity": "sha512-UZKwBV2rADuhRp+ZOGgNWg2eYgbzKzQXfQPtJbu/PLy8onurxlNCLvxMQEvlr1/GudguPI5IU9qIY1+2z1M5bA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/plugin-syntax-jsx": "^7.12.13", - "@babel/runtime": "^7.13.10", - "@emotion/hash": "^0.8.0", - "@emotion/memoize": "^0.7.5", - "@emotion/serialize": "^1.0.2", - "babel-plugin-macros": "^2.6.1", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^4.0.0", - "find-root": "^1.1.0", - "source-map": "^0.5.7", - "stylis": "^4.0.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@emotion/cache": { - "version": "11.4.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz", - "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==", - "dev": true, - "peer": true, - "dependencies": { - "@emotion/memoize": "^0.7.4", - "@emotion/sheet": "^1.0.0", - "@emotion/utils": "^1.0.0", - "@emotion/weak-memoize": "^0.2.5", - "stylis": "^4.0.3" - } - }, - "node_modules/@emotion/hash": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", - "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", - "dev": true - }, - "node_modules/@emotion/is-prop-valid": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.0.tgz", - "integrity": "sha512-9RkilvXAufQHsSsjQ3PIzSns+pxuX4EW8EbGeSPjZMHuMx6z/MOzb9LpqNieQX4F3mre3NWS2+X3JNRHTQztUQ==", - "dev": true, - "dependencies": { - "@emotion/memoize": "^0.7.4" - } - }, - "node_modules/@emotion/memoize": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz", - "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==", - "dev": true - }, - "node_modules/@emotion/react": { - "version": "11.4.1", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.1.tgz", - "integrity": "sha512-pRegcsuGYj4FCdZN6j5vqCALkNytdrKw3TZMekTzNXixRg4wkLsU5QEaBG5LC6l01Vppxlp7FE3aTHpIG5phLg==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/runtime": "^7.13.10", - "@emotion/cache": "^11.4.0", - "@emotion/serialize": "^1.0.2", - "@emotion/sheet": "^1.0.2", - "@emotion/utils": "^1.0.0", - "@emotion/weak-memoize": "^0.2.5", - "hoist-non-react-statics": "^3.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "react": ">=16.8.0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@types/react": { - "optional": true - } - } - }, - "node_modules/@emotion/serialize": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz", - "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==", - "dev": true, - "dependencies": { - "@emotion/hash": "^0.8.0", - "@emotion/memoize": "^0.7.4", - "@emotion/unitless": "^0.7.5", - "@emotion/utils": "^1.0.0", - "csstype": "^3.0.2" - } - }, - "node_modules/@emotion/sheet": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.2.tgz", - "integrity": "sha512-QQPB1B70JEVUHuNtzjHftMGv6eC3Y9wqavyarj4x4lg47RACkeSfNo5pxIOKizwS9AEFLohsqoaxGQj4p0vSIw==", - "dev": true, - "peer": true - }, - "node_modules/@emotion/styled": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.3.0.tgz", - "integrity": "sha512-fUoLcN3BfMiLlRhJ8CuPUMEyKkLEoM+n+UyAbnqGEsCd5IzKQ7VQFLtzpJOaCD2/VR2+1hXQTnSZXVJeiTNltA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.13.10", - "@emotion/babel-plugin": "^11.3.0", - "@emotion/is-prop-valid": "^1.1.0", - "@emotion/serialize": "^1.0.2", - "@emotion/utils": "^1.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "@emotion/react": "^11.0.0-rc.0", - "react": ">=16.8.0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@types/react": { - "optional": true - } - } - }, - "node_modules/@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", - "dev": true - }, - "node_modules/@emotion/utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz", - "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==", - "dev": true - }, - "node_modules/@emotion/weak-memoize": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", - "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", - "dev": true, - "peer": true - }, - "node_modules/@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", - "dev": true - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "node_modules/@types/node": { - "version": "16.10.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.3.tgz", - "integrity": "sha512-ho3Ruq+fFnBrZhUYI46n/bV2GjwzSkwuT4dTf0GkuNFmnb8nq4ny2z9JEVemFi6bdEJanHLlYfy9c6FN9B9McQ==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/util.promisify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/util.promisify/-/util.promisify-1.0.4.tgz", - "integrity": "sha512-sqbKBFegMRBvFOTq1+dXmRNfZvGZTNT+PlmIla/RFWLTQuNIKK3F9txxuG35Hk5Yl72pQLKdMBKwieqDcgzJ4Q==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -834,23 +386,18 @@ } }, "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "version": "2.0.1", "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } + "license": "Python-2.0" }, "node_modules/array-includes": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", - "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", + "version": "3.1.5", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5", "get-intrinsic": "^1.1.1", "is-string": "^1.0.7" }, @@ -861,11 +408,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array-union": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/array.prototype.flat": { "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", - "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -879,14 +433,14 @@ } }, "node_modules/array.prototype.flatmap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz", - "integrity": "sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA==", + "version": "1.3.0", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.19.0" + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -897,99 +451,121 @@ }, "node_modules/astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/axios": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.22.0.tgz", - "integrity": "sha512-Z0U3uhqQeg1oNcihswf4ZD57O3NrR1+ZXhxaROaWpDmsDTx7T2HNBV2ulBtie2hwJptu8UvgnJoK+BIqdzh/1w==", + "node_modules/asynckit": { + "version": "0.4.0", "dev": true, - "dependencies": { - "follow-redirects": "^1.14.4" - } + "license": "MIT" }, - "node_modules/babel-plugin-macros": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", - "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", + "node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", "dev": true, "dependencies": { - "@babel/runtime": "^7.7.2", - "cosmiconfig": "^6.0.0", - "resolve": "^1.12.0" + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" } }, "node_modules/balanced-match": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, "node_modules/basictap": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.1.tgz", - "integrity": "sha512-Jsje8aaoL26KofHENS6crAdBtz6oFc89LEoULNfChAYCc+noSwp+YVy1Jp8jmr/r67TFgCrGSYSvO4yKLcOp0g==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.0.tgz", + "integrity": "sha512-OQIeO4BVqKyjsZOvB2FbRjXlqexwiUSwjnKISW5wY6+bAQ1UCMzz7X014Ht+BxQH2c3+vvWd28Q27TkDgJA15w==", "dev": true, "dependencies": { - "colorette": "^2.0.13", + "colorette": "^2.0.16", "events": "^3.3.0", "promise-limit": "^2.7.0" } }, "node_modules/brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/browserslist": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", - "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", + "node_modules/braces": { + "version": "3.0.2", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001264", - "electron-to-chromium": "^1.3.857", - "escalade": "^3.1.1", - "node-releases": "^1.1.77", - "picocolors": "^0.2.1" - }, - "bin": { - "browserslist": "cli.js" + "fill-range": "^7.0.1" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" + "node": ">=8" } }, - "node_modules/c8": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.10.0.tgz", - "integrity": "sha512-OAwfC5+emvA6R7pkYFVBTOtI5ruf9DahffGmIqUc9l6wEh0h7iAFP6dt/V9Ioqlr2zW5avX9U9/w1I4alTRHkA==", - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@istanbuljs/schema": "^0.1.2", + "node_modules/buffer": { + "version": "6.0.3", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/c8": { + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", + "integrity": "sha512-CtgQrHOkyxr5koX1wEUmN/5cfDa2ckbHRA4Gy5LAL0zaCFtVWJS5++n+w4/sr2GWGerBxgTjpKeDclk/Qk6W/A==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.3", "find-up": "^5.0.0", "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.1", + "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.2", - "rimraf": "^3.0.0", + "istanbul-reports": "^3.1.4", + "rimraf": "^3.0.2", "test-exclude": "^6.0.0", - "v8-to-istanbul": "^8.0.0", + "v8-to-istanbul": "^9.0.0", "yargs": "^16.2.0", - "yargs-parser": "^20.2.7" + "yargs-parser": "^20.2.9" }, "bin": { "c8": "bin/c8.js" @@ -1000,9 +576,8 @@ }, "node_modules/call-bind": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" @@ -1013,52 +588,37 @@ }, "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/canhazdb-client": { - "resolved": "client", - "link": true - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001265", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", - "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", - "dev": true, - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" + "node_modules/catering": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "queue-tick": "^1.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", + "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/classnames": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", - "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" - }, "node_modules/cliui": { "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -1067,8 +627,8 @@ }, "node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -1078,48 +638,42 @@ }, "node_modules/color-name": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "dev": true, + "license": "MIT" }, "node_modules/colorette": { "version": "2.0.16", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } }, "node_modules/concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "dev": true, + "license": "MIT" }, "node_modules/convert-source-map": { "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", "dev": true, + "license": "MIT", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" - }, - "engines": { - "node": ">=8" + "safe-buffer": "~5.1.1" } }, "node_modules/cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1130,25 +684,19 @@ } }, "node_modules/crypto-random-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", - "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-5.0.0.tgz", + "integrity": "sha512-KWjTXWwxFd6a94m5CdRGW/t82Tr8DoBc9dNnPCAbFI1EBweN6v1tv8y4Y1m7ndkp/nkIBRxUxAzpaBnR2k3bcQ==", "dependencies": { - "type-fest": "^1.0.1" + "type-fest": "^2.12.2" }, "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/csstype": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", - "integrity": "sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==", - "dev": true - }, "node_modules/debarrel": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", @@ -1156,9 +704,8 @@ }, "node_modules/debug": { "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.1.2" }, @@ -1173,27 +720,58 @@ }, "node_modules/deep-is": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/deferred-leveldown": { + "version": "7.0.0", + "license": "MIT", + "dependencies": { + "abstract-leveldown": "^7.2.0", + "inherits": "^2.0.3" + }, + "engines": { + "node": ">=10" + } }, "node_modules/define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "version": "1.1.4", "dev": true, + "license": "MIT", "dependencies": { - "object-keys": "^1.0.12" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -1201,23 +779,32 @@ "node": ">=6.0.0" } }, - "node_modules/electron-to-chromium": { - "version": "1.3.864", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz", - "integrity": "sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw==", - "dev": true, - "peer": true + "node_modules/emits": { + "version": "3.0.0", + "license": "MIT" }, "node_modules/emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "dev": true, + "license": "MIT" + }, + "node_modules/encoding-down": { + "version": "7.1.0", + "license": "MIT", + "dependencies": { + "abstract-leveldown": "^7.2.0", + "inherits": "^2.0.3", + "level-codec": "^10.0.0", + "level-errors": "^3.0.0" + }, + "engines": { + "node": ">=10" + } }, "node_modules/enquirer": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-colors": "^4.1.1" }, @@ -1227,45 +814,45 @@ }, "node_modules/error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, + "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/error-with-object": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/error-with-object/-/error-with-object-1.1.0.tgz", - "integrity": "sha512-ctthqZF3x2gG1CxAGB+irtAOXGYj7S9r+0flbRGe01qCOU/yJJAyvzOKuR/Locu/8pA1+v9jGDiEKS5ZX6OKDw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/es-abstract": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", - "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", + "version": "1.20.1", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", "get-intrinsic": "^1.1.1", "get-symbol-description": "^1.0.0", "has": "^1.0.3", - "has-symbols": "^1.0.2", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", "internal-slot": "^1.0.3", "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.1", + "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.1", + "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", - "is-weakref": "^1.0.1", - "object-inspect": "^1.11.0", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" + "regexp.prototype.flags": "^1.4.3", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -1274,11 +861,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has": "^1.0.3" + } + }, "node_modules/es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "license": "MIT", "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -1292,37 +886,61 @@ } }, "node_modules/esbuild": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.4.tgz", - "integrity": "sha512-wMA5eUwpavTBiNl+It6j8OQuKVh69l6z4DKDLzoTIqC+gChnPpcmqdA8WNHptUHRnfyML+mKEQPlW7Mybj8gHg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.1.tgz", + "integrity": "sha512-zgxo2st9wSbdiR6rTo44l/L7ohttqdXFmhUi5tE6yWahgdBjCwZjBgIkm/gr/TcBTTIwyzd7em8WI37yZ+F2Mg==", "dev": true, "hasInstallScript": true, "bin": { "esbuild": "bin/esbuild" }, + "engines": { + "node": ">=12" + }, "optionalDependencies": { - "esbuild-android-arm64": "0.13.4", - "esbuild-darwin-64": "0.13.4", - "esbuild-darwin-arm64": "0.13.4", - "esbuild-freebsd-64": "0.13.4", - "esbuild-freebsd-arm64": "0.13.4", - "esbuild-linux-32": "0.13.4", - "esbuild-linux-64": "0.13.4", - "esbuild-linux-arm": "0.13.4", - "esbuild-linux-arm64": "0.13.4", - "esbuild-linux-mips64le": "0.13.4", - "esbuild-linux-ppc64le": "0.13.4", - "esbuild-openbsd-64": "0.13.4", - "esbuild-sunos-64": "0.13.4", - "esbuild-windows-32": "0.13.4", - "esbuild-windows-64": "0.13.4", - "esbuild-windows-arm64": "0.13.4" + "@esbuild/linux-loong64": "0.15.1", + "esbuild-android-64": "0.15.1", + "esbuild-android-arm64": "0.15.1", + "esbuild-darwin-64": "0.15.1", + "esbuild-darwin-arm64": "0.15.1", + "esbuild-freebsd-64": "0.15.1", + "esbuild-freebsd-arm64": "0.15.1", + "esbuild-linux-32": "0.15.1", + "esbuild-linux-64": "0.15.1", + "esbuild-linux-arm": "0.15.1", + "esbuild-linux-arm64": "0.15.1", + "esbuild-linux-mips64le": "0.15.1", + "esbuild-linux-ppc64le": "0.15.1", + "esbuild-linux-riscv64": "0.15.1", + "esbuild-linux-s390x": "0.15.1", + "esbuild-netbsd-64": "0.15.1", + "esbuild-openbsd-64": "0.15.1", + "esbuild-sunos-64": "0.15.1", + "esbuild-windows-32": "0.15.1", + "esbuild-windows-64": "0.15.1", + "esbuild-windows-arm64": "0.15.1" + } + }, + "node_modules/esbuild-android-64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.1.tgz", + "integrity": "sha512-q5kkJZsgLIkyh5e2ZJl4/kXKIueBKtjVMEihP9WCHadqhH6+F9qiycE7fBwUb/g2B15mYlmMBXjp8VmOT3J2gA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" } }, "node_modules/esbuild-android-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.4.tgz", - "integrity": "sha512-elDJt+jNyoHFId0/dKsuVYUPke3EcquIyUwzJCH17a3ERglN3A9aMBI5zbz+xNZ+FbaDNdpn0RaJHCFLbZX+fA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.1.tgz", + "integrity": "sha512-IQuZOzqMaFceLlKJJA27CXAdh+Mzh2ZblHMmcNIu/wxb6iX1zgYXlPWle62iHnmNCtfAux1mzQvmNsP9aLhemA==", "cpu": [ "arm64" ], @@ -1330,12 +948,15 @@ "optional": true, "os": [ "android" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-darwin-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.4.tgz", - "integrity": "sha512-zJQGyHRAdZUXlRzbN7W+7ykmEiGC+bq3Gc4GxKYjjWTgDRSEly98ym+vRNkDjXwXYD3gGzSwvH35+MiHAtWvLA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.1.tgz", + "integrity": "sha512-tyouWLyxwM/Y2fy/reuIvAvVB+KVQwuY9IVyV7LH5CGkJYxgtLb8xVEiwHFF8TG2uo9a2fqdgWffados4YA6Aw==", "cpu": [ "x64" ], @@ -1343,12 +964,15 @@ "optional": true, "os": [ "darwin" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-darwin-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.4.tgz", - "integrity": "sha512-r8oYvAtqSGq8HNTZCAx4TdLE7jZiGhX9ooGi5AQAey37MA6XNaP8ZNlw9OCpcgpx3ryU2WctXwIqPzkHO7a8dg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.1.tgz", + "integrity": "sha512-fb4V1eB1nir3zJwsS75itsbahkbM71XuqUDJVH8iyBLS8VIQD7MWWAAekea2l9keueGfsn0+wTyDluMT+kg8Cw==", "cpu": [ "arm64" ], @@ -1356,12 +980,15 @@ "optional": true, "os": [ "darwin" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-freebsd-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.4.tgz", - "integrity": "sha512-u9DRGkn09EN8+lCh6z7FKle7awi17PJRBuAKdRNgSo5ZrH/3m+mYaJK2PR2URHMpAfXiwJX341z231tSdVe3Yw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.1.tgz", + "integrity": "sha512-1KxEv/FUPlQtUSOjFCwR8FVNEskB5LmkbfW9FNJ7lhpG+4RsLiHWw4Sl2Y1/S+aKX7inyWxLA05zYV6XAzO8DA==", "cpu": [ "x64" ], @@ -1369,12 +996,15 @@ "optional": true, "os": [ "freebsd" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-freebsd-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.4.tgz", - "integrity": "sha512-q3B2k68Uf6gfjATjcK16DqxvjqRQkHL8aPoOfj4op+lSqegdXvBacB1d8jw8PxbWJ8JHpdTLdAVUYU80kotQXA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.1.tgz", + "integrity": "sha512-ueUMGSNrcuHwAadioxBdfOCO4+bTVeI68a147BQ/AFFIrf4XJNow4UXxguvQlZO+ZYaVz6EztaL6mHslKie2Rw==", "cpu": [ "arm64" ], @@ -1382,12 +1012,15 @@ "optional": true, "os": [ "freebsd" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-linux-32": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.4.tgz", - "integrity": "sha512-UUYJPHSiKAO8KoN3Ls/iZtgDLZvK5HarES96aolDPWZnq9FLx4dIHM/x2z4Rxv9IYqQ/DxlPoE2Co1UPBIYYeA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.1.tgz", + "integrity": "sha512-K5WWcN2OZkZ6arFN3+hi1leKc0at9ukKGrXK9Ia94kQOesBphTSmsNK/Gy/AoVoIa0bWrHtxDijS9j9+dz86oA==", "cpu": [ "ia32" ], @@ -1395,12 +1028,15 @@ "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-linux-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.4.tgz", - "integrity": "sha512-+RnohAKiiUW4UHLGRkNR1AnENW1gCuDWuygEtd4jxTNPIoeC7lbXGor7rtgjj9AdUzFgOEvAXyNNX01kJ8NueQ==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.1.tgz", + "integrity": "sha512-+haiVm83DfRi9x8M+GgR4f4LtSN8lnEIG8XMGK8/FYpkYNQiKb398GxeHp2yvoMpX8IPvmWCt215tAm5BBNfZQ==", "cpu": [ "x64" ], @@ -1408,12 +1044,15 @@ "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-linux-arm": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.4.tgz", - "integrity": "sha512-BH5gKve4jglS7UPSsfwHSX79I5agC/lm4eKoRUEyo8lwQs89frQSRp2Xup+6SFQnxt3md5EsKcd2Dbkqeb3gPA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.1.tgz", + "integrity": "sha512-qjAkEDcFhVNYwG2xgaDg/hA8JABoMvjzAzE6g1K8kR516oNkKbVf6rN68UrsQaV1zq1qR3dbVeMv/Ul2bheppA==", "cpu": [ "arm" ], @@ -1421,12 +1060,15 @@ "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-linux-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.4.tgz", - "integrity": "sha512-+A188cAdd6QuSRxMIwRrWLjgphQA0LDAQ/ECVlrPVJwnx+1i64NjDZivoqPYLOTkSPIKntiWwMhhf0U5/RrPHQ==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.1.tgz", + "integrity": "sha512-TP0BCVZEVu/aoVaZe2sn1vpvo63j0LPiH8rvd7AegqOfTwb+mcxLxpgyYwkibafUCMxnIrKdUTsSJeusoMhcLg==", "cpu": [ "arm64" ], @@ -1434,12 +1076,15 @@ "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-linux-mips64le": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.4.tgz", - "integrity": "sha512-0xkwtPaUkG5xMTFGaQPe1AadSe5QAiQuD4Gix1O9k5Xo/U8xGIkw9UFUTvfEUeu71vFb6ZgsIacfP1NLoFjWNw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.1.tgz", + "integrity": "sha512-8vzQzp+kwrn1Y+OjvfFaLS8uL8aR39WnAtxOHwjB72s9g18kHFlE8IQLS9dWDQgKpBSFq9kazsJE65dSVmz+VA==", "cpu": [ "mips64el" ], @@ -1447,12 +1092,15 @@ "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-linux-ppc64le": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.4.tgz", - "integrity": "sha512-E1+oJPP7A+j23GPo3CEpBhGwG1bni4B8IbTA3/3rvzjURwUMZdcN3Fhrz24rnjzdLSHmULtOE4VsbT42h1Om4Q==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.1.tgz", + "integrity": "sha512-QlWSOgC2Ad53Xvf7ZivXU7wM2y29YhQUrd50PjK0QJ3psh/eYSQx77PTe1iWm7Ovjiqv1wPKEAyC7CbyJUgriw==", "cpu": [ "ppc64" ], @@ -1460,12 +1108,63 @@ "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-riscv64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.1.tgz", + "integrity": "sha512-/PRNgNsiwb7G2n3rB5WcHinCwKj0OqUmtu8cdakV4CLNWnFnfChEGEJX1x5n8RcGD3xPUlI5CgqFe0/oBcUh+A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-s390x": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.1.tgz", + "integrity": "sha512-TScRbO4mi4AUUXzIQ8sb6ZXhGkCb/PlJ82qFfBE6xxsioae/d6XaSdaha/+OUTvmPeoro3lNf3vwdw27v3wEgw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.1.tgz", + "integrity": "sha512-ES2pbK8QfsMZbdPkgjkLwWfnEGtPa0vYzVFLQn7GFgP+RiemY+ulH7WWQ8ezMt9rZl4XAR3y14yKLGX0gsBLaw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-openbsd-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.4.tgz", - "integrity": "sha512-xEkI1o5HYxDzbv9jSox0EsDxpwraG09SRiKKv0W8pH6O3bt+zPSlnoK7+I7Q69tkvONkpIq5n2o+c55uq0X7cw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.1.tgz", + "integrity": "sha512-DxNWji11AxSEny4HzSKu21Skia8tEPQI1N+XO/RqVOJComOvsFLq+QeooKsK2caOsQIKl9mO14Hh+px+zFabMA==", "cpu": [ "x64" ], @@ -1473,12 +1172,15 @@ "optional": true, "os": [ "openbsd" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-sunos-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.4.tgz", - "integrity": "sha512-bjXUMcODMnB6hQicLBBmmnBl7OMDyVpFahKvHGXJfDChIi5udiIRKCmFUFIRn+AUAKVlfrofRKdyPC7kBsbvGQ==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.1.tgz", + "integrity": "sha512-lwZoWlv893qtQQx5H4QQCh2mcYzGbxEz09ESFdd4cHcUCfjb193bSAy6jPxW2efBx2fHEo2sw43TRtAkpCf+XQ==", "cpu": [ "x64" ], @@ -1486,12 +1188,15 @@ "optional": true, "os": [ "sunos" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-windows-32": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.4.tgz", - "integrity": "sha512-z4CH07pfyVY0XF98TCsGmLxKCl0kyvshKDbdpTekW9f2d+dJqn5mmoUyWhpSVJ0SfYWJg86FoD9nMbbaMVyGdg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.1.tgz", + "integrity": "sha512-jEFz8DxP+Hh67fk9XMoyLUqPjjoCT6m4bnl36aze0XpPZDuQm0SBDlG/ciOBCjzHDsu/MYUNwxVezvUT3sXh1A==", "cpu": [ "ia32" ], @@ -1499,12 +1204,15 @@ "optional": true, "os": [ "win32" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-windows-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.4.tgz", - "integrity": "sha512-uVL11vORRPjocGLYam67rwFLd0LvkrHEs+JG+1oJN4UD9MQmNGZPa4gBHo6hDpF+kqRJ9kXgQSeDqUyRy0tj/Q==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.1.tgz", + "integrity": "sha512-bUetnfw4xXKBTOQx4sTzoENJVEdgAN29ZTLRtnMseRzsMO8pjObQMsRPpPL3Cstt6FJhj3k3uScHc5VnfC9QkA==", "cpu": [ "x64" ], @@ -1512,12 +1220,15 @@ "optional": true, "os": [ "win32" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/esbuild-windows-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.4.tgz", - "integrity": "sha512-vA6GLvptgftRcDcWngD5cMlL4f4LbL8JjU2UMT9yJ0MT5ra6hdZNFWnOeOoEtY4GtJ6OjZ0i+81sTqhAB0fMkg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.1.tgz", + "integrity": "sha512-oN0JMj7fQZOiqJ/f/wc8lkxjvWwj5Yz0ZhOeU90JFaPZAfafNnysi6GS95glY5uwLUUJz/RNc84cb0dK2qT89A==", "cpu": [ "arm64" ], @@ -1525,21 +1236,23 @@ "optional": true, "os": [ "win32" - ] + ], + "engines": { + "node": ">=12" + } }, "node_modules/escalade": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -1548,49 +1261,48 @@ } }, "node_modules/eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz", + "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==", "dev": true, "dependencies": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", + "@eslint/eslintrc": "^1.3.0", + "@humanwhocodes/config-array": "^0.10.4", + "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", - "debug": "^4.0.1", + "debug": "^4.3.2", "doctrine": "^3.0.0", - "enquirer": "^2.3.5", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.3", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", - "globals": "^13.6.0", - "ignore": "^4.0.6", + "glob-parent": "^6.0.1", + "globals": "^13.15.0", + "globby": "^11.1.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, @@ -1598,80 +1310,16 @@ "eslint": "bin/eslint.js" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-config-semistandard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", - "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", - "dev": true, - "peerDependencies": { - "eslint": ">=7.12.1", - "eslint-config-standard": ">=16.0.3", - "eslint-plugin-import": ">=2.22.1", - "eslint-plugin-node": ">=11.1.0", - "eslint-plugin-promise": ">=4.2.1" - } - }, - "node_modules/eslint-config-standard": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", - "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": "^7.12.1", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^4.2.1 || ^5.0.0" - } - }, - "node_modules/eslint-config-standard-jsx": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", - "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": "^7.12.1", - "eslint-plugin-react": "^7.21.5" - } - }, "node_modules/eslint-import-resolver-node": { "version": "0.3.6", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", - "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.7", "resolve": "^1.20.0" @@ -1679,20 +1327,19 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } }, "node_modules/eslint-module-utils": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", - "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "version": "2.7.1", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.7", + "find-up": "^2.1.0", "pkg-dir": "^2.0.0" }, "engines": { @@ -1701,68 +1348,16 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } }, - "node_modules/eslint-plugin-import": { - "version": "2.24.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", - "integrity": "sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-module-utils": "^2.6.2", - "find-up": "^2.0.0", - "has": "^1.0.3", - "is-core-module": "^2.6.0", - "minimatch": "^3.0.4", - "object.values": "^1.1.4", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.11.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/find-up": { + "node_modules/eslint-module-utils/node_modules/find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -1770,11 +1365,10 @@ "node": ">=4" } }, - "node_modules/eslint-plugin-import/node_modules/locate-path": { + "node_modules/eslint-module-utils/node_modules/locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -1783,17 +1377,10 @@ "node": ">=4" } }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-plugin-import/node_modules/p-limit": { + "node_modules/eslint-module-utils/node_modules/p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -1801,11 +1388,10 @@ "node": ">=4" } }, - "node_modules/eslint-plugin-import/node_modules/p-locate": { + "node_modules/eslint-module-utils/node_modules/p-locate": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -1813,142 +1399,129 @@ "node": ">=4" } }, - "node_modules/eslint-plugin-import/node_modules/path-exists": { + "node_modules/eslint-module-utils/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "node_modules/eslint-plugin-es": { + "version": "3.0.1", "dev": true, + "license": "MIT", "dependencies": { - "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" + "regexpp": "^3.0.0" }, "engines": { "node": ">=8.10.0" }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, "peerDependencies": { - "eslint": ">=5.16.0" + "eslint": ">=4.19.1" } }, - "node_modules/eslint-plugin-node/node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "node_modules/eslint-plugin-import": { + "version": "2.25.2", "dev": true, + "license": "MIT", "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.0", + "has": "^1.0.3", + "is-core-module": "^2.7.0", + "is-glob": "^4.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.5", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.11.0" }, "engines": { - "node": ">=8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": ">=4" }, "peerDependencies": { - "eslint": ">=4.19.1" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "node_modules/eslint-plugin-node/node_modules/ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", "dev": true, - "engines": { - "node": ">= 4" + "license": "MIT", + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/eslint-plugin-promise": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", - "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", "dev": true, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" }, - "peerDependencies": { - "eslint": "^7.0.0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint-plugin-node": { + "version": "11.1.0", "dev": true, + "license": "MIT", "dependencies": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", - "doctrine": "^2.1.0", - "has": "^1.0.3", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" }, "engines": { - "node": ">=4" + "node": ">=8.10.0" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + "eslint": ">=5.16.0" } }, "node_modules/eslint-plugin-react-hooks": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", - "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", "dev": true, "engines": { "node": ">=10" }, "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "version": "7.1.1", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=8.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -1961,66 +1534,78 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "version": "3.3.0", "dev": true, + "license": "Apache-2.0", "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/eslint/node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", "dev": true, + "license": "MIT", "dependencies": { - "@babel/highlight": "^7.10.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "node_modules/eslint/node_modules/eslint-utils": { + "version": "3.0.0", "dev": true, + "license": "MIT", "dependencies": { - "type-fest": "^0.20.2" + "eslint-visitor-keys": "^2.0.0" }, "engines": { - "node": ">=8" + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" } }, - "node_modules/eslint/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "node_modules/eslint/node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.17.0", "dev": true, + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -2029,33 +1614,25 @@ } }, "node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.3.3", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, + "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -2066,9 +1643,8 @@ }, "node_modules/esquery": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -2076,20 +1652,10 @@ "node": ">=0.10" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -2097,65 +1663,96 @@ "node": ">=4.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "version": "5.3.0", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esutils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "license": "MIT" + }, "node_modules/events": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.x" } }, + "node_modules/extendible": { + "version": "0.1.1", + "license": "MIT" + }, + "node_modules/failmenot": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/failmenot/-/failmenot-3.0.1.tgz", + "integrity": "sha512-nFgVwPKWp76fLN8HQwJ0g9HnNXnmgx+jC1LGaRzoTaP4JwMcWhQHmDr8EPQJSu+E7gPEcQIqcet2ANNuZhzuNw==" + }, "node_modules/fast-deep-equal": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.2.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.13.0", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } }, "node_modules/file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, + "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" }, @@ -2163,21 +1760,26 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/final-stream": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.4.tgz", "integrity": "sha512-kBaHWwbW2oRFp1WZeY28QrCwv5yJVJTO/tPHYIWLs3ezd2DvCXrBayqgG096tJPqZhUaCM/y1439LkAjnr7xaA==" }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "dev": true - }, "node_modules/find-up": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -2191,9 +1793,8 @@ }, "node_modules/flat-cache": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, + "license": "MIT", "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -2204,14 +1805,15 @@ }, "node_modules/flatted": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true + "dev": true, + "license": "ISC" + }, + "node_modules/fn.name": { + "version": "1.1.0", + "license": "MIT" }, "node_modules/follow-redirects": { - "version": "1.14.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz", - "integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g==", + "version": "1.15.1", "dev": true, "funding": [ { @@ -2219,6 +1821,7 @@ "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -2230,8 +1833,8 @@ }, "node_modules/foreground-child": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "license": "ISC", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^3.0.2" @@ -2240,46 +1843,71 @@ "node": ">=8.0.0" } }, + "node_modules/form-data": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "dev": true, + "license": "ISC" }, "node_modules/function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true + "dev": true, + "license": "MIT" }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "node_modules/functions-have-names": { + "version": "1.2.3", "dev": true, - "peer": true, - "engines": { - "node": ">=6.9.0" + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } }, "node_modules/get-intrinsic": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -2291,9 +1919,8 @@ }, "node_modules/get-stdin": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -2303,9 +1930,8 @@ }, "node_modules/get-symbol-description": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" @@ -2319,8 +1945,8 @@ }, "node_modules/glob": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -2337,38 +1963,49 @@ } }, "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "version": "6.0.2", "dev": true, + "license": "ISC", "dependencies": { - "is-glob": "^4.0.1" + "is-glob": "^4.0.3" }, "engines": { - "node": ">= 6" + "node": ">=10.13.0" } }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/globby": { + "version": "11.1.0", "dev": true, - "peer": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/graceful-fs": { "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", - "dev": true + "dev": true, + "license": "ISC" + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "dev": true, + "license": "MIT" }, "node_modules/has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1" }, @@ -2377,27 +2014,36 @@ } }, "node_modules/has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "version": "1.0.2", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "version": "1.0.3", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -2407,9 +2053,8 @@ }, "node_modules/has-tostringtag": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.2" }, @@ -2420,41 +2065,45 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dev": true, - "peer": true, - "dependencies": { - "react-is": "^16.7.0" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, "node_modules/html-escaper": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + "dev": true, + "license": "MIT" + }, + "node_modules/ieee754": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" }, "node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "version": "5.2.0", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } }, + "node_modules/immediate": { + "version": "3.3.0", + "license": "MIT" + }, "node_modules/import-fresh": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, + "license": "MIT", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -2468,22 +2117,20 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } }, "node_modules/increlation": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/increlation/-/increlation-2.0.1.tgz", - "integrity": "sha512-KYRL0iTZq7ufPqfY7B+HhQv8RvPphbqD145YysFemDk9rM6Jj4r7T/3MsKi+Pm8KMa2p1A2nj8jcHmWS2gLNZQ==" + "license": "MIT" }, "node_modules/inflight": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -2491,14 +2138,12 @@ }, "node_modules/inherits": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "license": "ISC" }, "node_modules/internal-slot": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, + "license": "MIT", "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", @@ -2510,15 +2155,13 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-bigint": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, + "license": "MIT", "dependencies": { "has-bigints": "^1.0.1" }, @@ -2528,9 +2171,8 @@ }, "node_modules/is-boolean-object": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -2542,11 +2184,31 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-buffer": { + "version": "2.0.5", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/is-callable": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -2555,10 +2217,9 @@ } }, "node_modules/is-core-module": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", - "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", + "version": "2.8.0", "dev": true, + "license": "MIT", "dependencies": { "has": "^1.0.3" }, @@ -2568,9 +2229,8 @@ }, "node_modules/is-date-object": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -2583,26 +2243,24 @@ }, "node_modules/is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/is-glob": { "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -2611,10 +2269,9 @@ } }, "node_modules/is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "version": "2.0.2", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -2622,11 +2279,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/is-number-object": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", - "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "version": "1.0.7", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -2639,9 +2303,8 @@ }, "node_modules/is-regex": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -2654,19 +2317,20 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", - "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "version": "1.0.2", "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-string": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, + "license": "MIT", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -2679,9 +2343,8 @@ }, "node_modules/is-symbol": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.2" }, @@ -2693,12 +2356,11 @@ } }, "node_modules/is-weakref": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", - "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", + "version": "1.0.2", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.0" + "call-bind": "^1.0.2" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2706,21 +2368,21 @@ }, "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "dev": true, + "license": "ISC" }, "node_modules/istanbul-lib-coverage": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", - "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==", + "version": "3.2.0", + "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=8" } }, "node_modules/istanbul-lib-report": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^3.0.0", @@ -2731,9 +2393,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.3.tgz", - "integrity": "sha512-0i77ZFLsb9U3DHi22WzmIngVzfoyxxbQcZRqlF3KoKmCJGq9nhFHoGi8FqBztN2rE8w6hURnZghetn0xpkVb6A==", + "version": "3.1.5", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -2744,99 +2406,120 @@ }, "node_modules/js-tokens": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "license": "MIT" }, "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "4.1.0", "dev": true, + "license": "MIT", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/json-parse-better-errors": { + "version": "1.0.2", "dev": true, - "peer": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "license": "MIT" }, "node_modules/json-schema-traverse": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "dev": true, + "license": "MIT" }, - "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "node_modules/jsx-ast-utils": { + "version": "3.3.2", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "minimist": "^1.2.5" + "array-includes": "^3.1.5", + "object.assign": "^4.1.2" }, - "bin": { - "json5": "lib/cli.js" + "engines": { + "node": ">=4.0" + } + }, + "node_modules/level-codec": { + "version": "10.0.0", + "license": "MIT", + "dependencies": { + "buffer": "^6.0.3" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/jsonc-parser": { + "node_modules/level-concat-iterator": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true + "license": "MIT", + "engines": { + "node": ">=10" + } }, - "node_modules/jsx-ast-utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz", - "integrity": "sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA==", - "dev": true, + "node_modules/level-errors": { + "version": "3.0.1", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/level-iterator-stream": { + "version": "5.0.0", + "license": "MIT", "dependencies": { - "array-includes": "^3.1.3", - "object.assign": "^4.1.2" + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" }, "engines": { - "node": ">=4.0" + "node": ">=10" + } + }, + "node_modules/level-supports": { + "version": "2.0.2", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/leveldown": { + "version": "6.1.1", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "abstract-leveldown": "^7.2.0", + "napi-macros": "~2.0.0", + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/levelup": { + "version": "5.1.1", + "license": "MIT", + "dependencies": { + "catering": "^2.0.0", + "deferred-leveldown": "^7.0.0", + "level-errors": "^3.0.1", + "level-iterator-stream": "^5.0.0", + "level-supports": "^2.0.1", + "queue-microtask": "^1.2.3" + }, + "engines": { + "node": ">=10" } }, "node_modules/levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -2845,32 +2528,25 @@ "node": ">= 0.8.0" } }, - "node_modules/lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", - "dev": true - }, "node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "version": "5.3.0", "dev": true, + "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/load-json-file/node_modules/parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, + "license": "MIT", "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -2879,10 +2555,18 @@ "node": ">=4" } }, + "node_modules/load-json-file/node_modules/type-fest": { + "version": "0.3.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=6" + } + }, "node_modules/locate-path": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -2894,44 +2578,34 @@ } }, "node_modules/lockbase": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.1.tgz", - "integrity": "sha512-JQHXInq6Jd1r/7IsBNwhyjWwoQrnYBSCKWcppfOMIvOo3UmNyx7BfSw+SSU8igjZgZLVNFV/lXQrBnuTyMDWRw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-4.1.0.tgz", + "integrity": "sha512-g+ebnUAlIgl3+XY3yDbtPEydSGieo2MF433vaIukKYmiL5FctIjwb8cAfAnWDy7VbYpn42YAKuYUa1xAr5O9+w==", "dependencies": { - "c8": "^7.9.0", "uuid": "^8.3.2" } }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "node_modules/lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.truncate": { "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/logslot": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", - "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.1.tgz", + "integrity": "sha512-IvnKXlw+tXBnguDdmpyHRdiUzoG86s8EXsAYP6TkSICEwiFTcT0VwiGV7eT20TCHTf7XsYzRXdWlkyge29j7bQ==", "dependencies": { - "chalk": "^4.1.1" + "chalk": "^5.0.1" } }, "node_modules/loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -2941,8 +2615,7 @@ }, "node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -2950,16 +2623,10 @@ "node": ">=10" } }, - "node_modules/lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", - "dev": true - }, "node_modules/make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "license": "MIT", "dependencies": { "semver": "^6.0.0" }, @@ -2970,33 +2637,63 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/marked": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.7.tgz", - "integrity": "sha512-ctKqbnLuNbsHbI26cfMyOlKgXGfl1orOv1AvWWDX7AkgfMOwCWvmuYc+mVLeWhQ9W6hdWVBynOs96VkcscKo0Q==", + "node_modules/merge2": { + "version": "1.4.1", "dev": true, - "bin": { - "marked": "bin/marked" + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": ">= 12" + "node": ">=8.6" } }, + "node_modules/millisecond": { + "version": "0.1.2", + "license": "MIT" + }, "node_modules/mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "version": "3.0.0", + "license": "MIT", "bin": { "mime": "cli.js" }, "engines": { - "node": ">=4.0.0" + "node": ">=10.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" } }, "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -3005,26 +2702,32 @@ } }, "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/modification": { + "version": "1.0.0", + "license": "MIT" }, "node_modules/mql-to-jql": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", - "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.1.tgz", + "integrity": "sha512-FBACw40CNcOn2eoR2E3NJolu8J4zsp592D1/xpgU7yufxd/5219Bk02S7Hfo4jfT0pFxcT4EuRFbmmnmRXg+YA==" }, "node_modules/ms": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/napi-macros": { + "version": "2.0.0", + "license": "MIT" }, "node_modules/natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/node-ejdb-lite": { "version": "3.4.5", @@ -3053,8 +2756,7 @@ }, "node_modules/node-ejdb-lite/node_modules/semver": { "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -3065,65 +2767,42 @@ "node": ">=10" } }, - "node_modules/node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", - "dev": true, - "peer": true - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, + "node_modules/node-gyp-build": { + "version": "4.5.0", + "license": "MIT", "bin": { - "semver": "bin/semver" + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, "node_modules/object-assign": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", + "version": "1.12.2", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -3139,9 +2818,8 @@ }, "node_modules/object.entries": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", - "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -3153,9 +2831,8 @@ }, "node_modules/object.fromentries": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", - "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -3170,9 +2847,8 @@ }, "node_modules/object.values": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", - "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -3187,41 +2863,23 @@ }, "node_modules/once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onigasm": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", - "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", "dev": true, + "license": "ISC", "dependencies": { - "lru-cache": "^5.1.1" + "wrappy": "1" } }, - "node_modules/onigasm/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, + "node_modules/one-time": { + "version": "1.0.0", + "license": "MIT", "dependencies": { - "yallist": "^3.0.2" + "fn.name": "1.x.x" } }, - "node_modules/onigasm/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, "node_modules/optionator": { "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, + "license": "MIT", "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -3236,8 +2894,8 @@ }, "node_modules/p-limit": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -3250,8 +2908,8 @@ }, "node_modules/p-locate": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^3.0.2" }, @@ -3264,18 +2922,16 @@ }, "node_modules/p-try": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/parent-module": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, + "license": "MIT", "dependencies": { "callsites": "^3.0.0" }, @@ -3283,84 +2939,66 @@ "node": ">=6" } }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/path-parse": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/path-type": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "node_modules/picomatch": { + "version": "2.3.1", "dev": true, - "peer": true + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, "node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "version": "4.0.1", "dev": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/pkg-conf": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^3.0.0", "load-json-file": "^5.2.0" @@ -3371,9 +3009,8 @@ }, "node_modules/pkg-conf/node_modules/find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^3.0.0" }, @@ -3381,27 +3018,10 @@ "node": ">=6" } }, - "node_modules/pkg-conf/node_modules/load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/pkg-conf/node_modules/locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^3.0.0", "path-exists": "^3.0.0" @@ -3412,9 +3032,8 @@ }, "node_modules/pkg-conf/node_modules/p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -3427,9 +3046,8 @@ }, "node_modules/pkg-conf/node_modules/p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.0.0" }, @@ -3439,70 +3057,35 @@ }, "node_modules/pkg-conf/node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/pkg-conf/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/pkg-conf/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, - "node_modules/pkg-conf/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "node_modules/pkg-dir": { + "version": "2.0.0", "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^2.1.0" + }, "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-conf/node_modules/type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" + "node": ">=4" } }, "node_modules/pkg-dir/node_modules/find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -3512,9 +3095,8 @@ }, "node_modules/pkg-dir/node_modules/locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -3525,9 +3107,8 @@ }, "node_modules/pkg-dir/node_modules/p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -3537,9 +3118,8 @@ }, "node_modules/pkg-dir/node_modules/p-locate": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -3549,131 +3129,84 @@ }, "node_modules/pkg-dir/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8.0" } }, "node_modules/progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.4.0" } }, "node_modules/promise-limit": { "version": "2.7.0", - "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", - "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==", - "dev": true + "dev": true, + "license": "ISC" + }, + "node_modules/promise-queue": { + "version": "2.2.5", + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } }, "node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "version": "15.8.1", "dev": true, + "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", - "react-is": "^16.8.1" + "react-is": "^16.13.1" } }, "node_modules/punycode": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/queue-tick": { + "version": "1.0.0", + "license": "MIT" + }, "node_modules/react": { "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1" @@ -3684,8 +3217,8 @@ }, "node_modules/react-dom": { "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "license": "MIT", + "peer": true, "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", @@ -3695,123 +3228,40 @@ "react": "17.0.2" } }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, + "node_modules/react-dom/node_modules/scheduler": { + "version": "0.20.2", + "license": "MIT", + "peer": true, "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" } }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "node_modules/react-is": { + "version": "16.13.1", "dev": true, - "engines": { - "node": ">=4" - } + "license": "MIT" }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, + "node_modules/readable-stream": { + "version": "3.6.0", + "license": "MIT", "dependencies": { - "pify": "^3.0.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, "node_modules/regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "version": "1.4.3", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" }, "engines": { "node": ">= 0.4" @@ -3822,9 +3272,8 @@ }, "node_modules/regexpp": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -3834,26 +3283,24 @@ }, "node_modules/require-directory": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/require-from-string": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/resolve": { "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.2.0", "path-parse": "^1.0.6" @@ -3864,17 +3311,25 @@ }, "node_modules/resolve-from": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, + "node_modules/reusify": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, "node_modules/rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -3885,20 +3340,33 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "node_modules/run-parallel": { + "version": "1.2.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "queue-microtask": "^1.2.2" } }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, "node_modules/semistandard": { "version": "16.0.1", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", @@ -3936,21 +3404,376 @@ "node": ">=10.12.0" } }, - "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/semistandard/node_modules/@babel/code-frame": { + "version": "7.12.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/semistandard/node_modules/@eslint/eslintrc": { + "version": "0.4.3", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/semistandard/node_modules/@humanwhocodes/config-array": { + "version": "0.5.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/semistandard/node_modules/acorn": { + "version": "7.4.1", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/semistandard/node_modules/argparse": { + "version": "1.0.10", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/semistandard/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/semistandard/node_modules/eslint": { + "version": "7.32.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/semistandard/node_modules/eslint-config-semistandard": { + "version": "16.0.0", + "dev": true, + "license": "ISC", + "peerDependencies": { + "eslint": ">=7.12.1", + "eslint-config-standard": ">=16.0.3", + "eslint-plugin-import": ">=2.22.1", + "eslint-plugin-node": ">=11.1.0", + "eslint-plugin-promise": ">=4.2.1" + } + }, + "node_modules/semistandard/node_modules/eslint-config-standard": { + "version": "16.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "peerDependencies": { + "eslint": "^7.12.1", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1 || ^5.0.0" + } + }, + "node_modules/semistandard/node_modules/eslint-config-standard-jsx": { + "version": "10.0.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "peerDependencies": { + "eslint": "^7.12.1", + "eslint-plugin-react": "^7.21.5" + } + }, + "node_modules/semistandard/node_modules/eslint-plugin-promise": { + "version": "5.2.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.0.0" + } + }, + "node_modules/semistandard/node_modules/eslint-plugin-react": { + "version": "7.21.5", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/semistandard/node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/semistandard/node_modules/eslint-scope": { + "version": "5.1.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/semistandard/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10" + } + }, + "node_modules/semistandard/node_modules/espree": { + "version": "7.3.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/semistandard/node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/semistandard/node_modules/estraverse": { + "version": "4.3.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/semistandard/node_modules/glob-parent": { + "version": "5.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/semistandard/node_modules/globals": { + "version": "13.17.0", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semistandard/node_modules/ignore": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/semistandard/node_modules/js-yaml": { + "version": "3.14.1", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/semistandard/node_modules/semver": { + "version": "7.3.7", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semistandard/node_modules/type-fest": { + "version": "0.20.2", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/servatron": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/servatron/-/servatron-2.2.3.tgz", - "integrity": "sha512-0jc/MBGQ4O0isO313bBy1DoRKfCoWHa2mTsJ52rSxfK9y5reDAJL4i7Dpd0rjfNw9d4fwLXnnEvj3bSnEJnOWg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/servatron/-/servatron-2.3.1.tgz", + "integrity": "sha512-PZz/KPi1vVwXRN57CJtJIUS1qfNrcRDXbsu/lAxU5B/d08ugXlQ3w3e1vIPWN8/30GkEdoml98/qKduGwhYtmw==", "dependencies": { - "mime": "^2.5.2", - "minimist": "^1.2.5" + "mime": "^3.0.0", + "minimist": "^1.2.6" }, "bin": { "servatron": "bin/cli.js" @@ -3959,12 +3782,12 @@ "node_modules/server-destroy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==" }, "node_modules/shebang-command": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -3974,28 +3797,16 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/shiki": { - "version": "0.9.11", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.11.tgz", - "integrity": "sha512-tjruNTLFhU0hruCPoJP0y+B9LKOmcqUhTpxn7pcJB3fa+04gFChuEmxmrUfOJ7ZO6Jd+HwMnDHgY3lv3Tqonuw==", - "dev": true, - "dependencies": { - "jsonc-parser": "^3.0.0", - "onigasm": "^2.2.5", - "vscode-textmate": "5.2.0" - } - }, "node_modules/side-channel": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", @@ -4007,14 +3818,21 @@ }, "node_modules/signal-exit": { "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + "dev": true, + "license": "ISC" + }, + "node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, "node_modules/slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -4027,57 +3845,13 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz", - "integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==", - "dev": true - }, "node_modules/sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/standard-engine": { "version": "14.0.1", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", - "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "funding": [ { @@ -4093,6 +3867,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "get-stdin": "^8.0.0", "minimist": "^1.2.5", @@ -4103,10 +3878,35 @@ "node": ">=8.10" } }, + "node_modules/string_decoder": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/string-width": { "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -4117,18 +3917,17 @@ } }, "node_modules/string.prototype.matchall": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz", - "integrity": "sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg==", + "version": "4.0.7", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", - "has-symbols": "^1.0.2", + "has-symbols": "^1.0.3", "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.3.1", + "regexp.prototype.flags": "^1.4.1", "side-channel": "^1.0.4" }, "funding": { @@ -4136,26 +3935,26 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "version": "1.0.5", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "version": "1.0.5", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4163,8 +3962,8 @@ }, "node_modules/strip-ansi": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -4174,18 +3973,16 @@ }, "node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -4193,16 +3990,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/stylis": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz", - "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg==", - "dev": true - }, "node_modules/supports-color": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -4211,13 +4002,11 @@ } }, "node_modules/table": { - "version": "6.7.2", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", - "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", + "version": "6.8.0", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", "string-width": "^4.2.3", @@ -4228,10 +4017,9 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.6.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", - "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "version": "8.11.0", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -4245,9 +4033,8 @@ }, "node_modules/table/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/tcpocket": { "version": "7.5.2", @@ -4259,8 +4046,8 @@ }, "node_modules/test-exclude": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -4272,24 +4059,31 @@ }, "node_modules/text-table": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true + "dev": true, + "license": "MIT" }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "node_modules/tick-tock": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "millisecond": "0.1.x" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, "engines": { - "node": ">=4" + "node": ">=8.0" } }, "node_modules/tsconfig-paths": { "version": "3.11.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", - "integrity": "sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA==", "dev": true, + "license": "MIT", "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.1", @@ -4299,9 +4093,8 @@ }, "node_modules/tsconfig-paths/node_modules/json5": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, + "license": "MIT", "dependencies": { "minimist": "^1.2.0" }, @@ -4311,9 +4104,8 @@ }, "node_modules/type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" }, @@ -4322,60 +4114,23 @@ } }, "node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "version": "2.18.0", + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=10" + "node": ">=12.20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/typedoc": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.5.tgz", - "integrity": "sha512-KFrWGU1iKiTGw0RcyjLNYDmhd7uICU14HgBNPmFKY/sT4Pm/fraaLyWyisst9vGTUAKxqibqoDITR7+ZcAkhHg==", - "dev": true, - "dependencies": { - "glob": "^7.2.0", - "lunr": "^2.3.9", - "marked": "^3.0.4", - "minimatch": "^3.0.4", - "shiki": "^0.9.11" - }, - "bin": { - "typedoc": "bin/typedoc" - }, - "engines": { - "node": ">= 12.10.0" - }, - "peerDependencies": { - "typescript": "4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x" - } - }, - "node_modules/typescript": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz", - "integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, "node_modules/unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "version": "1.0.2", "dev": true, + "license": "MIT", "dependencies": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" }, "funding": { @@ -4384,22 +4139,12 @@ }, "node_modules/uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" } }, - "node_modules/urs": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/urs/-/urs-0.0.8.tgz", - "integrity": "sha512-LaSSPpr91XrVA3vW2zPupw4K6DSQEDKdL4yQZX1mO2fpljIMpB5zctrjRvxLurelWSgKsHsCmfHNCImscryirQ==", - "peerDependencies": { - "react": "^16.13.1 || ^17.0.0", - "react-dom": "^16.13.1 || ^17.0.0" - } - }, "node_modules/use-http": { "version": "1.0.26", "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.26.tgz", @@ -4414,19 +4159,29 @@ "react-dom": "^16.13.1 || ^17.0.0" } }, - "node_modules/use-ssr": { + "node_modules/use-http/node_modules/urs": { + "version": "0.0.8", + "license": "MIT", + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0", + "react-dom": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/use-http/node_modules/use-ssr": { "version": "1.0.24", - "resolved": "https://registry.npmjs.org/use-ssr/-/use-ssr-1.0.24.tgz", - "integrity": "sha512-0MFps7ezL57/3o0yl4CvrHLlp9z20n1rQZV/lSRz7if+TUoM6POU1XdOvEjIgjgKeIhTEye1U0khrIYWCTWw4g==", + "license": "MIT", "peerDependencies": { "react": "^16.13.1 || ^17.0.0", "react-dom": "^16.13.1 || ^17.0.0" } }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "license": "MIT" + }, "node_modules/utility-types": { "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "license": "MIT", "engines": { "node": ">= 4" } @@ -4441,51 +4196,26 @@ }, "node_modules/v8-compile-cache": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/v8-to-istanbul": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz", - "integrity": "sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==", + "version": "9.0.1", + "dev": true, + "license": "ISC", "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" + "convert-source-map": "^1.6.0" }, "engines": { "node": ">=10.12.0" } }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vscode-textmate": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", - "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", - "dev": true - }, "node_modules/which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -4498,9 +4228,8 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, + "license": "MIT", "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -4514,17 +4243,16 @@ }, "node_modules/word-wrap": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/wrap-ansi": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -4539,8 +4267,8 @@ }, "node_modules/wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "dev": true, + "license": "ISC" }, "node_modules/write-response": { "version": "1.2.3", @@ -4562,284 +4290,68 @@ }, "node_modules/xdg-basedir": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", - "integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.14.5" - } - }, - "@babel/compat-data": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", - "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", - "dev": true, - "peer": true - }, - "@babel/core": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", - "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.15.8", - "@babel/generator": "^7.15.8", - "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.8", - "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.8", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" - } - }, - "@babel/generator": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", - "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.6", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", - "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/compat-data": "^7.15.0", - "@babel/helper-validator-option": "^7.14.5", - "browserslist": "^4.16.6", - "semver": "^6.3.0" - } - }, - "@babel/helper-function-name": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", - "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-get-function-arity": "^7.15.4", - "@babel/template": "^7.15.4", - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", - "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", - "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", - "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-module-imports": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", - "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", - "dev": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-module-transforms": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz", - "integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==", "dev": true, - "peer": true, - "requires": { - "@babel/helper-module-imports": "^7.15.4", - "@babel/helper-replace-supers": "^7.15.4", - "@babel/helper-simple-access": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/helper-validator-identifier": "^7.15.7", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "@babel/helper-optimise-call-expression": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", - "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", + "node_modules/y18n": { + "version": "5.0.8", "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.4" + "license": "ISC", + "engines": { + "node": ">=10" } }, - "@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", - "dev": true + "node_modules/yallist": { + "version": "4.0.0", + "license": "ISC" }, - "@babel/helper-replace-supers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", - "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "node_modules/yargs": { + "version": "16.2.0", "dev": true, - "peer": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.15.4", - "@babel/helper-optimise-call-expression": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" + "license": "MIT", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" } }, - "@babel/helper-simple-access": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", - "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", + "node_modules/yargs-parser": { + "version": "20.2.9", "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.4" + "license": "ISC", + "engines": { + "node": ">=10" } }, - "@babel/helper-split-export-declaration": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", - "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", + "node_modules/yocto-queue": { + "version": "0.1.0", "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.15.4" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } - }, + } + }, + "dependencies": { "@babel/helper-validator-identifier": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "version": "7.18.6", "dev": true }, - "@babel/helper-validator-option": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", - "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", - "dev": true, - "peer": true - }, - "@babel/helpers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", - "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" - } - }, "@babel/highlight": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.5", @@ -4849,8 +4361,6 @@ "dependencies": { "ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { "color-convert": "^1.9.0" @@ -4858,8 +4368,6 @@ }, "chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -4869,8 +4377,6 @@ }, "color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { "color-name": "1.1.3" @@ -4878,26 +4384,18 @@ }, "color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "escape-string-regexp": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -4905,220 +4403,34 @@ } } }, - "@babel/parser": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz", - "integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==", - "dev": true, - "peer": true - }, - "@babel/plugin-syntax-jsx": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", - "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/runtime": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", - "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", - "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4" - } - }, - "@babel/traverse": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", - "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-function-name": "^7.15.4", - "@babel/helper-hoist-variables": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.15.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", - "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.9", - "to-fast-properties": "^2.0.0" - } - }, "@bcoe/v8-coverage": { "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" - }, - "@emotion/babel-plugin": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.3.0.tgz", - "integrity": "sha512-UZKwBV2rADuhRp+ZOGgNWg2eYgbzKzQXfQPtJbu/PLy8onurxlNCLvxMQEvlr1/GudguPI5IU9qIY1+2z1M5bA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/plugin-syntax-jsx": "^7.12.13", - "@babel/runtime": "^7.13.10", - "@emotion/hash": "^0.8.0", - "@emotion/memoize": "^0.7.5", - "@emotion/serialize": "^1.0.2", - "babel-plugin-macros": "^2.6.1", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^4.0.0", - "find-root": "^1.1.0", - "source-map": "^0.5.7", - "stylis": "^4.0.3" - } - }, - "@emotion/cache": { - "version": "11.4.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz", - "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==", - "dev": true, - "peer": true, - "requires": { - "@emotion/memoize": "^0.7.4", - "@emotion/sheet": "^1.0.0", - "@emotion/utils": "^1.0.0", - "@emotion/weak-memoize": "^0.2.5", - "stylis": "^4.0.3" - } - }, - "@emotion/hash": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", - "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", - "dev": true - }, - "@emotion/is-prop-valid": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.0.tgz", - "integrity": "sha512-9RkilvXAufQHsSsjQ3PIzSns+pxuX4EW8EbGeSPjZMHuMx6z/MOzb9LpqNieQX4F3mre3NWS2+X3JNRHTQztUQ==", - "dev": true, - "requires": { - "@emotion/memoize": "^0.7.4" - } - }, - "@emotion/memoize": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz", - "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==", - "dev": true - }, - "@emotion/react": { - "version": "11.4.1", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.1.tgz", - "integrity": "sha512-pRegcsuGYj4FCdZN6j5vqCALkNytdrKw3TZMekTzNXixRg4wkLsU5QEaBG5LC6l01Vppxlp7FE3aTHpIG5phLg==", - "dev": true, - "peer": true, - "requires": { - "@babel/runtime": "^7.13.10", - "@emotion/cache": "^11.4.0", - "@emotion/serialize": "^1.0.2", - "@emotion/sheet": "^1.0.2", - "@emotion/utils": "^1.0.0", - "@emotion/weak-memoize": "^0.2.5", - "hoist-non-react-statics": "^3.3.1" - } - }, - "@emotion/serialize": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz", - "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==", - "dev": true, - "requires": { - "@emotion/hash": "^0.8.0", - "@emotion/memoize": "^0.7.4", - "@emotion/unitless": "^0.7.5", - "@emotion/utils": "^1.0.0", - "csstype": "^3.0.2" - } - }, - "@emotion/sheet": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.2.tgz", - "integrity": "sha512-QQPB1B70JEVUHuNtzjHftMGv6eC3Y9wqavyarj4x4lg47RACkeSfNo5pxIOKizwS9AEFLohsqoaxGQj4p0vSIw==", - "dev": true, - "peer": true - }, - "@emotion/styled": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.3.0.tgz", - "integrity": "sha512-fUoLcN3BfMiLlRhJ8CuPUMEyKkLEoM+n+UyAbnqGEsCd5IzKQ7VQFLtzpJOaCD2/VR2+1hXQTnSZXVJeiTNltA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.13.10", - "@emotion/babel-plugin": "^11.3.0", - "@emotion/is-prop-valid": "^1.1.0", - "@emotion/serialize": "^1.0.2", - "@emotion/utils": "^1.0.0" - } - }, - "@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", - "dev": true - }, - "@emotion/utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz", - "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==", "dev": true }, - "@emotion/weak-memoize": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", - "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", + "@esbuild/linux-loong64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.1.tgz", + "integrity": "sha512-1tORADNFK9QS4KYyUyh3Td9WGrdiI1rSoKvY6A43+9G0kPujBuT4lIGyoK0AweOSO1aRIR28xQUfiJCUa78bUw==", "dev": true, - "peer": true + "optional": true }, "@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "version": "1.3.0", "dev": true, "requires": { "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", + "debug": "^4.3.2", + "espree": "^9.3.2", + "globals": "^13.15.0", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, "dependencies": { "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "13.17.0", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -5126,83 +4438,116 @@ }, "type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } }, "@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "version": "0.10.4", "dev": true, "requires": { - "@humanwhocodes/object-schema": "^1.2.0", + "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", "minimatch": "^3.0.4" } }, + "@humanwhocodes/gitignore-to-minimatch": { + "version": "1.0.2", + "dev": true + }, "@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "version": "1.2.1", "dev": true }, "@istanbuljs/schema": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==" + "dev": true }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "@jridgewell/resolve-uri": { + "version": "3.1.0", "dev": true }, - "@types/node": { - "version": "16.10.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.3.tgz", - "integrity": "sha512-ho3Ruq+fFnBrZhUYI46n/bV2GjwzSkwuT4dTf0GkuNFmnb8nq4ny2z9JEVemFi6bdEJanHLlYfy9c6FN9B9McQ==", + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", "dev": true }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "@jridgewell/trace-mapping": { + "version": "0.3.14", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@markwylde/liferaft": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@markwylde/liferaft/-/liferaft-1.2.0.tgz", + "integrity": "sha512-uPYbOEJgdsqrn7KimmQA9x8ihOQpnzbDQ1foOwMos3s1f4OTCTOFFKeEoREJ9aqA0mC+JFe1DkTc7pRcgURH9w==", + "requires": { + "emits": "^3.0.0", + "encoding-down": "^7.1.0", + "eventemitter3": "^4.0.7", + "extendible": "^0.1.1", + "immediate": "^3.3.0", + "leveldown": "^6.1.1", + "levelup": "^5.1.1", + "millisecond": "^0.1.2", + "modification": "^1.0.0", + "one-time": "^1.0.0", + "promise-queue": "^2.2.5", + "tick-tock": "^1.0.0" + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", "dev": true }, - "@types/util.promisify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/util.promisify/-/util.promisify-1.0.4.tgz", - "integrity": "sha512-sqbKBFegMRBvFOTq1+dXmRNfZvGZTNT+PlmIla/RFWLTQuNIKK3F9txxuG35Hk5Yl72pQLKdMBKwieqDcgzJ4Q==", + "@nodelib/fs.walk": { + "version": "1.2.8", "dev": true, "requires": { - "@types/node": "*" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "dev": true + }, + "abstract-leveldown": { + "version": "7.2.0", + "requires": { + "buffer": "^6.0.3", + "catering": "^2.0.0", + "is-buffer": "^2.0.5", + "level-concat-iterator": "^3.0.0", + "level-supports": "^2.0.1", + "queue-microtask": "^1.2.3" } }, "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.8.0", "dev": true }, "acorn-jsx": { "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "requires": {} }, "ajv": { "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -5212,50 +4557,41 @@ } }, "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "version": "4.1.3", "dev": true }, "ansi-regex": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + "dev": true }, "ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "requires": { "color-convert": "^2.0.1" } }, "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } + "version": "2.0.1", + "dev": true }, "array-includes": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", - "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", + "version": "3.1.5", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5", "get-intrinsic": "^1.1.1", "is-string": "^1.0.7" } }, + "array-union": { + "version": "2.1.0", + "dev": true + }, "array.prototype.flat": { "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", - "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5264,104 +4600,95 @@ } }, "array.prototype.flatmap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz", - "integrity": "sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA==", + "version": "1.3.0", "dev": true, "requires": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.19.0" + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" } }, "astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, - "axios": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.22.0.tgz", - "integrity": "sha512-Z0U3uhqQeg1oNcihswf4ZD57O3NrR1+ZXhxaROaWpDmsDTx7T2HNBV2ulBtie2hwJptu8UvgnJoK+BIqdzh/1w==", - "dev": true, - "requires": { - "follow-redirects": "^1.14.4" - } + "asynckit": { + "version": "0.4.0", + "dev": true }, - "babel-plugin-macros": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", - "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", + "axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", "dev": true, "requires": { - "@babel/runtime": "^7.7.2", - "cosmiconfig": "^6.0.0", - "resolve": "^1.12.0" + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" } }, "balanced-match": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "dev": true + }, + "base64-js": { + "version": "1.5.1" }, "basictap": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-2.4.1.tgz", - "integrity": "sha512-Jsje8aaoL26KofHENS6crAdBtz6oFc89LEoULNfChAYCc+noSwp+YVy1Jp8jmr/r67TFgCrGSYSvO4yKLcOp0g==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.0.tgz", + "integrity": "sha512-OQIeO4BVqKyjsZOvB2FbRjXlqexwiUSwjnKISW5wY6+bAQ1UCMzz7X014Ht+BxQH2c3+vvWd28Q27TkDgJA15w==", "dev": true, "requires": { - "colorette": "^2.0.13", + "colorette": "^2.0.16", "events": "^3.3.0", "promise-limit": "^2.7.0" } }, "brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "browserslist": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", - "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", + "braces": { + "version": "3.0.2", "dev": true, - "peer": true, "requires": { - "caniuse-lite": "^1.0.30001264", - "electron-to-chromium": "^1.3.857", - "escalade": "^3.1.1", - "node-releases": "^1.1.77", - "picocolors": "^0.2.1" + "fill-range": "^7.0.1" + } + }, + "buffer": { + "version": "6.0.3", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, "c8": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.10.0.tgz", - "integrity": "sha512-OAwfC5+emvA6R7pkYFVBTOtI5ruf9DahffGmIqUc9l6wEh0h7iAFP6dt/V9Ioqlr2zW5avX9U9/w1I4alTRHkA==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", + "integrity": "sha512-CtgQrHOkyxr5koX1wEUmN/5cfDa2ckbHRA4Gy5LAL0zaCFtVWJS5++n+w4/sr2GWGerBxgTjpKeDclk/Qk6W/A==", + "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", - "@istanbuljs/schema": "^0.1.2", + "@istanbuljs/schema": "^0.1.3", "find-up": "^5.0.0", "foreground-child": "^2.0.0", - "istanbul-lib-coverage": "^3.0.1", + "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.2", - "rimraf": "^3.0.0", + "istanbul-reports": "^3.1.4", + "rimraf": "^3.0.2", "test-exclude": "^6.0.0", - "v8-to-istanbul": "^8.0.0", + "v8-to-istanbul": "^9.0.0", "yargs": "^16.2.0", - "yargs-parser": "^20.2.7" + "yargs-parser": "^20.2.9" } }, "call-bind": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -5370,47 +4697,22 @@ }, "callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, - "canhazdb-client": { - "version": "file:client", + "catering": { + "version": "2.1.0", "requires": { - "@types/util.promisify": "^1.0.4", - "basictap": "^2.2.2", - "c8": "^7.9.0", - "mql-to-jql": "^1.4.0", - "tcpocket": "^7.5.2", - "typedoc": "^0.22.5", - "typescript": "^4.4.3" + "queue-tick": "^1.0.0" } }, - "caniuse-lite": { - "version": "1.0.30001265", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", - "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", - "dev": true, - "peer": true - }, "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "classnames": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", - "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", + "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==" }, "cliui": { "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, "requires": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -5419,53 +4721,40 @@ }, "color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { "color-name": "~1.1.4" } }, "color-name": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "dev": true }, "colorette": { "version": "2.0.16", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", "dev": true }, + "combined-stream": { + "version": "1.0.8", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, "concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "dev": true }, "convert-source-map": { "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", "dev": true, "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" + "safe-buffer": "~5.1.1" } }, "cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5473,73 +4762,80 @@ } }, "crypto-random-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", - "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-5.0.0.tgz", + "integrity": "sha512-KWjTXWwxFd6a94m5CdRGW/t82Tr8DoBc9dNnPCAbFI1EBweN6v1tv8y4Y1m7ndkp/nkIBRxUxAzpaBnR2k3bcQ==", "requires": { - "type-fest": "^1.0.1" + "type-fest": "^2.12.2" } }, - "csstype": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", - "integrity": "sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==", - "dev": true - }, "debarrel": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", "integrity": "sha512-dOGk3xqe786BZg3iZMvs5PCNjMKEDXgfMl9Jpm86rbovkH9ExMWPO4gRL42yLCJ9UTGuO4sKAkEg8T1qiIXX6g==" }, - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "debug": { + "version": "4.3.2", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "deep-is": { + "version": "0.1.4", + "dev": true + }, + "deferred-leveldown": { + "version": "7.0.0", + "requires": { + "abstract-leveldown": "^7.2.0", + "inherits": "^2.0.3" + } + }, + "define-properties": { + "version": "1.1.4", "dev": true, "requires": { - "ms": "2.1.2" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" } }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "delayed-stream": { + "version": "1.0.0", "dev": true }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dir-glob": { + "version": "3.0.1", "dev": true, "requires": { - "object-keys": "^1.0.12" + "path-type": "^4.0.0" } }, "doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "requires": { "esutils": "^2.0.2" } }, - "electron-to-chromium": { - "version": "1.3.864", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz", - "integrity": "sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw==", - "dev": true, - "peer": true + "emits": { + "version": "3.0.0" }, "emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "dev": true + }, + "encoding-down": { + "version": "7.1.0", + "requires": { + "abstract-leveldown": "^7.2.0", + "inherits": "^2.0.3", + "level-codec": "^10.0.0", + "level-errors": "^3.0.0" + } }, "enquirer": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "requires": { "ansi-colors": "^4.1.1" @@ -5547,8 +4843,6 @@ }, "error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { "is-arrayish": "^0.2.1" @@ -5556,42 +4850,46 @@ }, "error-with-object": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/error-with-object/-/error-with-object-1.1.0.tgz", - "integrity": "sha512-ctthqZF3x2gG1CxAGB+irtAOXGYj7S9r+0flbRGe01qCOU/yJJAyvzOKuR/Locu/8pA1+v9jGDiEKS5ZX6OKDw==", "dev": true }, "es-abstract": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", - "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", + "version": "1.20.1", "dev": true, "requires": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", "get-intrinsic": "^1.1.1", "get-symbol-description": "^1.0.0", "has": "^1.0.3", - "has-symbols": "^1.0.2", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", "internal-slot": "^1.0.3", "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.1", + "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.1", + "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", - "is-weakref": "^1.0.1", - "object-inspect": "^1.11.0", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" + "regexp.prototype.flags": "^1.4.3", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-shim-unscopables": { + "version": "1.0.0", + "dev": true, + "requires": { + "has": "^1.0.3" } }, "es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -5600,260 +4898,265 @@ } }, "esbuild": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.4.tgz", - "integrity": "sha512-wMA5eUwpavTBiNl+It6j8OQuKVh69l6z4DKDLzoTIqC+gChnPpcmqdA8WNHptUHRnfyML+mKEQPlW7Mybj8gHg==", - "dev": true, - "requires": { - "esbuild-android-arm64": "0.13.4", - "esbuild-darwin-64": "0.13.4", - "esbuild-darwin-arm64": "0.13.4", - "esbuild-freebsd-64": "0.13.4", - "esbuild-freebsd-arm64": "0.13.4", - "esbuild-linux-32": "0.13.4", - "esbuild-linux-64": "0.13.4", - "esbuild-linux-arm": "0.13.4", - "esbuild-linux-arm64": "0.13.4", - "esbuild-linux-mips64le": "0.13.4", - "esbuild-linux-ppc64le": "0.13.4", - "esbuild-openbsd-64": "0.13.4", - "esbuild-sunos-64": "0.13.4", - "esbuild-windows-32": "0.13.4", - "esbuild-windows-64": "0.13.4", - "esbuild-windows-arm64": "0.13.4" - } + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.1.tgz", + "integrity": "sha512-zgxo2st9wSbdiR6rTo44l/L7ohttqdXFmhUi5tE6yWahgdBjCwZjBgIkm/gr/TcBTTIwyzd7em8WI37yZ+F2Mg==", + "dev": true, + "requires": { + "@esbuild/linux-loong64": "0.15.1", + "esbuild-android-64": "0.15.1", + "esbuild-android-arm64": "0.15.1", + "esbuild-darwin-64": "0.15.1", + "esbuild-darwin-arm64": "0.15.1", + "esbuild-freebsd-64": "0.15.1", + "esbuild-freebsd-arm64": "0.15.1", + "esbuild-linux-32": "0.15.1", + "esbuild-linux-64": "0.15.1", + "esbuild-linux-arm": "0.15.1", + "esbuild-linux-arm64": "0.15.1", + "esbuild-linux-mips64le": "0.15.1", + "esbuild-linux-ppc64le": "0.15.1", + "esbuild-linux-riscv64": "0.15.1", + "esbuild-linux-s390x": "0.15.1", + "esbuild-netbsd-64": "0.15.1", + "esbuild-openbsd-64": "0.15.1", + "esbuild-sunos-64": "0.15.1", + "esbuild-windows-32": "0.15.1", + "esbuild-windows-64": "0.15.1", + "esbuild-windows-arm64": "0.15.1" + } + }, + "esbuild-android-64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.1.tgz", + "integrity": "sha512-q5kkJZsgLIkyh5e2ZJl4/kXKIueBKtjVMEihP9WCHadqhH6+F9qiycE7fBwUb/g2B15mYlmMBXjp8VmOT3J2gA==", + "dev": true, + "optional": true }, "esbuild-android-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.4.tgz", - "integrity": "sha512-elDJt+jNyoHFId0/dKsuVYUPke3EcquIyUwzJCH17a3ERglN3A9aMBI5zbz+xNZ+FbaDNdpn0RaJHCFLbZX+fA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.1.tgz", + "integrity": "sha512-IQuZOzqMaFceLlKJJA27CXAdh+Mzh2ZblHMmcNIu/wxb6iX1zgYXlPWle62iHnmNCtfAux1mzQvmNsP9aLhemA==", "dev": true, "optional": true }, "esbuild-darwin-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.4.tgz", - "integrity": "sha512-zJQGyHRAdZUXlRzbN7W+7ykmEiGC+bq3Gc4GxKYjjWTgDRSEly98ym+vRNkDjXwXYD3gGzSwvH35+MiHAtWvLA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.1.tgz", + "integrity": "sha512-tyouWLyxwM/Y2fy/reuIvAvVB+KVQwuY9IVyV7LH5CGkJYxgtLb8xVEiwHFF8TG2uo9a2fqdgWffados4YA6Aw==", "dev": true, "optional": true }, "esbuild-darwin-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.4.tgz", - "integrity": "sha512-r8oYvAtqSGq8HNTZCAx4TdLE7jZiGhX9ooGi5AQAey37MA6XNaP8ZNlw9OCpcgpx3ryU2WctXwIqPzkHO7a8dg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.1.tgz", + "integrity": "sha512-fb4V1eB1nir3zJwsS75itsbahkbM71XuqUDJVH8iyBLS8VIQD7MWWAAekea2l9keueGfsn0+wTyDluMT+kg8Cw==", "dev": true, "optional": true }, "esbuild-freebsd-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.4.tgz", - "integrity": "sha512-u9DRGkn09EN8+lCh6z7FKle7awi17PJRBuAKdRNgSo5ZrH/3m+mYaJK2PR2URHMpAfXiwJX341z231tSdVe3Yw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.1.tgz", + "integrity": "sha512-1KxEv/FUPlQtUSOjFCwR8FVNEskB5LmkbfW9FNJ7lhpG+4RsLiHWw4Sl2Y1/S+aKX7inyWxLA05zYV6XAzO8DA==", "dev": true, "optional": true }, "esbuild-freebsd-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.4.tgz", - "integrity": "sha512-q3B2k68Uf6gfjATjcK16DqxvjqRQkHL8aPoOfj4op+lSqegdXvBacB1d8jw8PxbWJ8JHpdTLdAVUYU80kotQXA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.1.tgz", + "integrity": "sha512-ueUMGSNrcuHwAadioxBdfOCO4+bTVeI68a147BQ/AFFIrf4XJNow4UXxguvQlZO+ZYaVz6EztaL6mHslKie2Rw==", "dev": true, "optional": true }, "esbuild-linux-32": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.4.tgz", - "integrity": "sha512-UUYJPHSiKAO8KoN3Ls/iZtgDLZvK5HarES96aolDPWZnq9FLx4dIHM/x2z4Rxv9IYqQ/DxlPoE2Co1UPBIYYeA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.1.tgz", + "integrity": "sha512-K5WWcN2OZkZ6arFN3+hi1leKc0at9ukKGrXK9Ia94kQOesBphTSmsNK/Gy/AoVoIa0bWrHtxDijS9j9+dz86oA==", "dev": true, "optional": true }, "esbuild-linux-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.4.tgz", - "integrity": "sha512-+RnohAKiiUW4UHLGRkNR1AnENW1gCuDWuygEtd4jxTNPIoeC7lbXGor7rtgjj9AdUzFgOEvAXyNNX01kJ8NueQ==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.1.tgz", + "integrity": "sha512-+haiVm83DfRi9x8M+GgR4f4LtSN8lnEIG8XMGK8/FYpkYNQiKb398GxeHp2yvoMpX8IPvmWCt215tAm5BBNfZQ==", "dev": true, "optional": true }, "esbuild-linux-arm": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.4.tgz", - "integrity": "sha512-BH5gKve4jglS7UPSsfwHSX79I5agC/lm4eKoRUEyo8lwQs89frQSRp2Xup+6SFQnxt3md5EsKcd2Dbkqeb3gPA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.1.tgz", + "integrity": "sha512-qjAkEDcFhVNYwG2xgaDg/hA8JABoMvjzAzE6g1K8kR516oNkKbVf6rN68UrsQaV1zq1qR3dbVeMv/Ul2bheppA==", "dev": true, "optional": true }, "esbuild-linux-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.4.tgz", - "integrity": "sha512-+A188cAdd6QuSRxMIwRrWLjgphQA0LDAQ/ECVlrPVJwnx+1i64NjDZivoqPYLOTkSPIKntiWwMhhf0U5/RrPHQ==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.1.tgz", + "integrity": "sha512-TP0BCVZEVu/aoVaZe2sn1vpvo63j0LPiH8rvd7AegqOfTwb+mcxLxpgyYwkibafUCMxnIrKdUTsSJeusoMhcLg==", "dev": true, "optional": true }, "esbuild-linux-mips64le": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.4.tgz", - "integrity": "sha512-0xkwtPaUkG5xMTFGaQPe1AadSe5QAiQuD4Gix1O9k5Xo/U8xGIkw9UFUTvfEUeu71vFb6ZgsIacfP1NLoFjWNw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.1.tgz", + "integrity": "sha512-8vzQzp+kwrn1Y+OjvfFaLS8uL8aR39WnAtxOHwjB72s9g18kHFlE8IQLS9dWDQgKpBSFq9kazsJE65dSVmz+VA==", "dev": true, "optional": true }, "esbuild-linux-ppc64le": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.4.tgz", - "integrity": "sha512-E1+oJPP7A+j23GPo3CEpBhGwG1bni4B8IbTA3/3rvzjURwUMZdcN3Fhrz24rnjzdLSHmULtOE4VsbT42h1Om4Q==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.1.tgz", + "integrity": "sha512-QlWSOgC2Ad53Xvf7ZivXU7wM2y29YhQUrd50PjK0QJ3psh/eYSQx77PTe1iWm7Ovjiqv1wPKEAyC7CbyJUgriw==", + "dev": true, + "optional": true + }, + "esbuild-linux-riscv64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.1.tgz", + "integrity": "sha512-/PRNgNsiwb7G2n3rB5WcHinCwKj0OqUmtu8cdakV4CLNWnFnfChEGEJX1x5n8RcGD3xPUlI5CgqFe0/oBcUh+A==", + "dev": true, + "optional": true + }, + "esbuild-linux-s390x": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.1.tgz", + "integrity": "sha512-TScRbO4mi4AUUXzIQ8sb6ZXhGkCb/PlJ82qFfBE6xxsioae/d6XaSdaha/+OUTvmPeoro3lNf3vwdw27v3wEgw==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.1.tgz", + "integrity": "sha512-ES2pbK8QfsMZbdPkgjkLwWfnEGtPa0vYzVFLQn7GFgP+RiemY+ulH7WWQ8ezMt9rZl4XAR3y14yKLGX0gsBLaw==", "dev": true, "optional": true }, "esbuild-openbsd-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.4.tgz", - "integrity": "sha512-xEkI1o5HYxDzbv9jSox0EsDxpwraG09SRiKKv0W8pH6O3bt+zPSlnoK7+I7Q69tkvONkpIq5n2o+c55uq0X7cw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.1.tgz", + "integrity": "sha512-DxNWji11AxSEny4HzSKu21Skia8tEPQI1N+XO/RqVOJComOvsFLq+QeooKsK2caOsQIKl9mO14Hh+px+zFabMA==", "dev": true, "optional": true }, "esbuild-sunos-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.4.tgz", - "integrity": "sha512-bjXUMcODMnB6hQicLBBmmnBl7OMDyVpFahKvHGXJfDChIi5udiIRKCmFUFIRn+AUAKVlfrofRKdyPC7kBsbvGQ==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.1.tgz", + "integrity": "sha512-lwZoWlv893qtQQx5H4QQCh2mcYzGbxEz09ESFdd4cHcUCfjb193bSAy6jPxW2efBx2fHEo2sw43TRtAkpCf+XQ==", "dev": true, "optional": true }, "esbuild-windows-32": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.4.tgz", - "integrity": "sha512-z4CH07pfyVY0XF98TCsGmLxKCl0kyvshKDbdpTekW9f2d+dJqn5mmoUyWhpSVJ0SfYWJg86FoD9nMbbaMVyGdg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.1.tgz", + "integrity": "sha512-jEFz8DxP+Hh67fk9XMoyLUqPjjoCT6m4bnl36aze0XpPZDuQm0SBDlG/ciOBCjzHDsu/MYUNwxVezvUT3sXh1A==", "dev": true, "optional": true }, "esbuild-windows-64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.4.tgz", - "integrity": "sha512-uVL11vORRPjocGLYam67rwFLd0LvkrHEs+JG+1oJN4UD9MQmNGZPa4gBHo6hDpF+kqRJ9kXgQSeDqUyRy0tj/Q==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.1.tgz", + "integrity": "sha512-bUetnfw4xXKBTOQx4sTzoENJVEdgAN29ZTLRtnMseRzsMO8pjObQMsRPpPL3Cstt6FJhj3k3uScHc5VnfC9QkA==", "dev": true, "optional": true }, "esbuild-windows-arm64": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.4.tgz", - "integrity": "sha512-vA6GLvptgftRcDcWngD5cMlL4f4LbL8JjU2UMT9yJ0MT5ra6hdZNFWnOeOoEtY4GtJ6OjZ0i+81sTqhAB0fMkg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.1.tgz", + "integrity": "sha512-oN0JMj7fQZOiqJ/f/wc8lkxjvWwj5Yz0ZhOeU90JFaPZAfafNnysi6GS95glY5uwLUUJz/RNc84cb0dK2qT89A==", "dev": true, "optional": true }, "escalade": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + "dev": true }, "escape-string-regexp": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, "eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz", + "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==", "dev": true, "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", + "@eslint/eslintrc": "^1.3.0", + "@humanwhocodes/config-array": "^0.10.4", + "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", - "debug": "^4.0.1", + "debug": "^4.3.2", "doctrine": "^3.0.0", - "enquirer": "^2.3.5", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.3", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", - "globals": "^13.6.0", - "ignore": "^4.0.6", + "glob-parent": "^6.0.1", + "globals": "^13.15.0", + "globby": "^11.1.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "chalk": { + "version": "4.1.2", "dev": true, "requires": { - "@babel/highlight": "^7.10.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "eslint-utils": { + "version": "3.0.0", "dev": true, "requires": { - "type-fest": "^0.20.2" + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "dev": true + } } }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "globals": { + "version": "13.17.0", "dev": true, "requires": { - "lru-cache": "^6.0.0" + "type-fest": "^0.20.2" } }, "type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } }, - "eslint-config-semistandard": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-semistandard/-/eslint-config-semistandard-16.0.0.tgz", - "integrity": "sha512-oD8QOo4mSInRJhQb3Zi6L8HebwZaB6SI3A+NNrPdVN0nN1K45L5pXK3joY+ksWDlT3ew/M+fJk2tuMCjIpjRzQ==", - "dev": true, - "requires": {} - }, - "eslint-config-standard": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz", - "integrity": "sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==", - "dev": true, - "requires": {} - }, - "eslint-config-standard-jsx": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-10.0.0.tgz", - "integrity": "sha512-hLeA2f5e06W1xyr/93/QJulN/rLbUVUmqTlexv9PRKHFwEC9ffJcH2LvJhMoEqYQBEYafedgGZXH2W8NUpt5lA==", - "dev": true, - "requires": {} - }, "eslint-import-resolver-node": { "version": "0.3.6", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", - "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", "dev": true, "requires": { "debug": "^3.2.7", @@ -5862,8 +5165,6 @@ "dependencies": { "debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" @@ -5872,71 +5173,23 @@ } }, "eslint-module-utils": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", - "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "version": "2.7.1", "dev": true, "requires": { "debug": "^3.2.7", + "find-up": "^2.1.0", "pkg-dir": "^2.0.0" }, "dependencies": { "debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { "ms": "^2.1.1" } - } - } - }, - "eslint-plugin-import": { - "version": "2.24.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", - "integrity": "sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q==", - "dev": true, - "requires": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-module-utils": "^2.6.2", - "find-up": "^2.0.0", - "has": "^1.0.3", - "is-core-module": "^2.6.0", - "minimatch": "^3.0.4", - "object.values": "^1.1.4", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.11.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } }, "find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -5944,24 +5197,14 @@ }, "locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, "p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -5969,8 +5212,6 @@ }, "p-locate": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -5978,102 +5219,86 @@ }, "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } } }, - "eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "eslint-plugin-es": { + "version": "3.0.1", "dev": true, "requires": { - "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "dependencies": { - "eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - } - }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true - } + "regexpp": "^3.0.0" } }, - "eslint-plugin-promise": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz", - "integrity": "sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==", - "dev": true, - "requires": {} - }, - "eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "eslint-plugin-import": { + "version": "2.25.2", "dev": true, "requires": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.0", "has": "^1.0.3", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" + "is-core-module": "^2.7.0", + "is-glob": "^4.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.5", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.11.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { "esutils": "^2.0.2" } + }, + "ms": { + "version": "2.0.0", + "dev": true } } }, + "eslint-plugin-node": { + "version": "11.1.0", + "dev": true, + "requires": { + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" + } + }, "eslint-plugin-react-hooks": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", - "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", "dev": true, "requires": {} }, "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "version": "7.1.1", "dev": true, "requires": { "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "estraverse": "^5.2.0" } }, "eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" @@ -6081,137 +5306,125 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "version": "3.3.0", "dev": true }, "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.3.3", "dev": true, "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" } }, "esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, "esquery": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } } }, "esrecurse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - } } }, "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "version": "5.3.0", "dev": true }, "esutils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, + "eventemitter3": { + "version": "4.0.7" + }, "events": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true }, + "extendible": { + "version": "0.1.1" + }, + "failmenot": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/failmenot/-/failmenot-3.0.1.tgz", + "integrity": "sha512-nFgVwPKWp76fLN8HQwJ0g9HnNXnmgx+jC1LGaRzoTaP4JwMcWhQHmDr8EPQJSu+E7gPEcQIqcet2ANNuZhzuNw==" + }, "fast-deep-equal": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, + "fast-glob": { + "version": "3.2.11", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, "fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, + "fastq": { + "version": "1.13.0", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, "file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "requires": { "flat-cache": "^3.0.4" } }, + "fill-range": { + "version": "7.0.1", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, "final-stream": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.4.tgz", "integrity": "sha512-kBaHWwbW2oRFp1WZeY28QrCwv5yJVJTO/tPHYIWLs3ezd2DvCXrBayqgG096tJPqZhUaCM/y1439LkAjnr7xaA==" }, - "find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "dev": true - }, "find-up": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, "requires": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -6219,8 +5432,6 @@ }, "flat-cache": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "requires": { "flatted": "^3.1.0", @@ -6229,58 +5440,64 @@ }, "flatted": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, + "fn.name": { + "version": "1.1.0" + }, "follow-redirects": { - "version": "1.14.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz", - "integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g==", + "version": "1.15.1", "dev": true }, "foreground-child": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, "requires": { "cross-spawn": "^7.0.0", "signal-exit": "^3.0.2" } }, + "form-data": { + "version": "4.0.0", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "dev": true }, "function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, + "function.prototype.name": { + "version": "1.1.5", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, "functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "peer": true + "functions-have-names": { + "version": "1.2.3", + "dev": true }, "get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + "dev": true }, "get-intrinsic": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -6290,14 +5507,10 @@ }, "get-stdin": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true }, "get-symbol-description": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -6306,8 +5519,7 @@ }, "glob": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -6318,93 +5530,81 @@ } }, "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "version": "6.0.2", "dev": true, "requires": { - "is-glob": "^4.0.1" + "is-glob": "^4.0.3" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "globby": { + "version": "11.1.0", "dev": true, - "peer": true + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } }, "graceful-fs": { "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "grapheme-splitter": { + "version": "1.0.4", "dev": true }, "has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { "function-bind": "^1.1.1" } }, "has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "version": "1.0.2", "dev": true }, "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true }, - "has-tostringtag": { + "has-property-descriptors": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, "requires": { - "has-symbols": "^1.0.2" + "get-intrinsic": "^1.1.1" } }, - "hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "has-symbols": { + "version": "1.0.3", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", "dev": true, - "peer": true, "requires": { - "react-is": "^16.7.0" + "has-symbols": "^1.0.2" } }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, "html-escaper": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + "dev": true + }, + "ieee754": { + "version": "1.2.1" }, "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "version": "5.2.0", "dev": true }, + "immediate": { + "version": "3.3.0" + }, "import-fresh": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -6413,33 +5613,24 @@ }, "imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, "increlation": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/increlation/-/increlation-2.0.1.tgz", - "integrity": "sha512-KYRL0iTZq7ufPqfY7B+HhQv8RvPphbqD145YysFemDk9rM6Jj4r7T/3MsKi+Pm8KMa2p1A2nj8jcHmWS2gLNZQ==" + "version": "2.0.1" }, "inflight": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" } }, "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "version": "2.0.4" }, "internal-slot": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "requires": { "get-intrinsic": "^1.1.0", @@ -6449,14 +5640,10 @@ }, "is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-bigint": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, "requires": { "has-bigints": "^1.0.1" @@ -6464,24 +5651,21 @@ }, "is-boolean-object": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "requires": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" } }, + "is-buffer": { + "version": "2.0.5" + }, "is-callable": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", "dev": true }, "is-core-module": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", - "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", + "version": "2.8.0", "dev": true, "requires": { "has": "^1.0.3" @@ -6489,8 +5673,6 @@ }, "is-date-object": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, "requires": { "has-tostringtag": "^1.0.0" @@ -6498,34 +5680,29 @@ }, "is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "dev": true }, "is-glob": { "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "requires": { "is-extglob": "^2.1.1" } }, "is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "version": "2.0.2", + "dev": true + }, + "is-number": { + "version": "7.0.0", "dev": true }, "is-number-object": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", - "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "version": "1.0.7", "dev": true, "requires": { "has-tostringtag": "^1.0.0" @@ -6533,8 +5710,6 @@ }, "is-regex": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -6542,15 +5717,14 @@ } }, "is-shared-array-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", - "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", - "dev": true + "version": "1.0.2", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } }, "is-string": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "requires": { "has-tostringtag": "^1.0.0" @@ -6558,36 +5732,29 @@ }, "is-symbol": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "requires": { "has-symbols": "^1.0.2" } }, "is-weakref": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", - "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", + "version": "1.0.2", "dev": true, "requires": { - "call-bind": "^1.0.0" + "call-bind": "^1.0.2" } }, "isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "dev": true }, "istanbul-lib-coverage": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", - "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==" + "version": "3.2.0", + "dev": true }, "istanbul-lib-report": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, "requires": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^3.0.0", @@ -6595,238 +5762,225 @@ } }, "istanbul-reports": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.3.tgz", - "integrity": "sha512-0i77ZFLsb9U3DHi22WzmIngVzfoyxxbQcZRqlF3KoKmCJGq9nhFHoGi8FqBztN2rE8w6hURnZghetn0xpkVb6A==", + "version": "3.1.5", + "dev": true, "requires": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" } }, "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "version": "4.0.0" }, "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "4.1.0", "dev": true, "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" } }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "peer": true - }, "json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true }, "json-schema-traverse": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, - "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "jsx-ast-utils": { + "version": "3.3.2", "dev": true, - "peer": true, "requires": { - "minimist": "^1.2.5" + "array-includes": "^3.1.5", + "object.assign": "^4.1.2" } }, - "jsonc-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true + "level-codec": { + "version": "10.0.0", + "requires": { + "buffer": "^6.0.3" + } }, - "jsx-ast-utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz", - "integrity": "sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA==", - "dev": true, + "level-concat-iterator": { + "version": "3.0.0" + }, + "level-errors": { + "version": "3.0.1" + }, + "level-iterator-stream": { + "version": "5.0.0", "requires": { - "array-includes": "^3.1.3", - "object.assign": "^4.1.2" + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "level-supports": { + "version": "2.0.2" + }, + "leveldown": { + "version": "6.1.1", + "requires": { + "abstract-leveldown": "^7.2.0", + "napi-macros": "~2.0.0", + "node-gyp-build": "^4.3.0" + } + }, + "levelup": { + "version": "5.1.1", + "requires": { + "catering": "^2.0.0", + "deferred-leveldown": "^7.0.0", + "level-errors": "^3.0.1", + "level-iterator-stream": "^5.0.0", + "level-supports": "^2.0.1", + "queue-microtask": "^1.2.3" } }, "levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "requires": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" } }, - "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", - "dev": true - }, "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "version": "5.3.0", "dev": true, "requires": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" }, "dependencies": { "parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" } + }, + "type-fest": { + "version": "0.3.1", + "dev": true } } }, "locate-path": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, "requires": { "p-locate": "^5.0.0" } }, "lockbase": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-1.3.1.tgz", - "integrity": "sha512-JQHXInq6Jd1r/7IsBNwhyjWwoQrnYBSCKWcppfOMIvOo3UmNyx7BfSw+SSU8igjZgZLVNFV/lXQrBnuTyMDWRw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-4.1.0.tgz", + "integrity": "sha512-g+ebnUAlIgl3+XY3yDbtPEydSGieo2MF433vaIukKYmiL5FctIjwb8cAfAnWDy7VbYpn42YAKuYUa1xAr5O9+w==", "requires": { - "c8": "^7.9.0", "uuid": "^8.3.2" } }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "lodash.truncate": { "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", "dev": true }, "logslot": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.0.tgz", - "integrity": "sha512-8OpDV2C0tBPXJfgsUDomhHeA7GPoWT6r3aOV0tM2Jt+kklrK539wxY+EKAcN4DD5ZIfGWnypjVrE/ZGwAX/77Q==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/logslot/-/logslot-2.1.1.tgz", + "integrity": "sha512-IvnKXlw+tXBnguDdmpyHRdiUzoG86s8EXsAYP6TkSICEwiFTcT0VwiGV7eT20TCHTf7XsYzRXdWlkyge29j7bQ==", "requires": { - "chalk": "^4.1.1" + "chalk": "^5.0.1" } }, "loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "requires": { "js-tokens": "^3.0.0 || ^4.0.0" } }, "lru-cache": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "requires": { "yallist": "^4.0.0" } }, - "lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", - "dev": true - }, "make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, "requires": { "semver": "^6.0.0" } }, - "marked": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.7.tgz", - "integrity": "sha512-ctKqbnLuNbsHbI26cfMyOlKgXGfl1orOv1AvWWDX7AkgfMOwCWvmuYc+mVLeWhQ9W6hdWVBynOs96VkcscKo0Q==", + "merge2": { + "version": "1.4.1", "dev": true }, + "micromatch": { + "version": "4.0.5", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "millisecond": { + "version": "0.1.2" + }, "mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + "version": "3.0.0" + }, + "mime-db": { + "version": "1.52.0", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } }, "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "modification": { + "version": "1.0.0" }, "mql-to-jql": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.0.tgz", - "integrity": "sha512-wih8AAUaZAwhN3QO7GdKr65jQBT+wXqgHGO/Lg06L7VEdgLR+t46DpETU6CFXZFd9ncuo1bW3EMW2JF3Pbi4GQ==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mql-to-jql/-/mql-to-jql-1.4.1.tgz", + "integrity": "sha512-FBACw40CNcOn2eoR2E3NJolu8J4zsp592D1/xpgU7yufxd/5219Bk02S7Hfo4jfT0pFxcT4EuRFbmmnmRXg+YA==" }, "ms": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "napi-macros": { + "version": "2.0.0" + }, "natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, "node-ejdb-lite": { @@ -6839,62 +5993,28 @@ "dependencies": { "semver": { "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } } } }, - "node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", - "dev": true, - "peer": true - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } + "node-gyp-build": { + "version": "4.5.0" }, "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "version": "4.1.1" }, "object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", + "version": "1.12.2", "dev": true }, "object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, "object.assign": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -6905,8 +6025,6 @@ }, "object.entries": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", - "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -6916,8 +6034,6 @@ }, "object.fromentries": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", - "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -6927,8 +6043,6 @@ }, "object.values": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", - "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -6938,42 +6052,19 @@ }, "once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "requires": { "wrappy": "1" } }, - "onigasm": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", - "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", - "dev": true, + "one-time": { + "version": "1.0.0", "requires": { - "lru-cache": "^5.1.1" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } + "fn.name": "1.x.x" } }, "optionator": { "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "requires": { "deep-is": "^0.1.3", @@ -6986,91 +6077,59 @@ }, "p-limit": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, "requires": { "yocto-queue": "^0.1.0" } }, "p-locate": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, "requires": { "p-limit": "^3.0.2" } }, "p-try": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, "parent-module": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { "callsites": "^3.0.0" } }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, "path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + "dev": true }, "path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "dev": true }, "path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + "dev": true }, "path-parse": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "path-type": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true, - "peer": true + "picomatch": { + "version": "2.3.1", + "dev": true }, "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "version": "4.0.1", "dev": true }, "pkg-conf": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { "find-up": "^3.0.0", @@ -7079,30 +6138,13 @@ "dependencies": { "find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" } }, - "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - } - }, "locate-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -7111,8 +6153,6 @@ }, "p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -7120,8 +6160,6 @@ }, "p-locate": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -7129,98 +6167,16 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true } } }, "pkg-dir": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } - } - }, - "pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, "requires": { "find-up": "^2.1.0" @@ -7228,8 +6184,6 @@ "dependencies": { "find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -7237,8 +6191,6 @@ }, "locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -7247,8 +6199,6 @@ }, "p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -7256,8 +6206,6 @@ }, "p-locate": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -7265,186 +6213,106 @@ }, "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true } } }, "prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, "progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "promise-limit": { "version": "2.7.0", - "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", - "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==", "dev": true }, + "promise-queue": { + "version": "2.2.5" + }, "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "version": "15.8.1", "dev": true, "requires": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", - "react-is": "^16.8.1" + "react-is": "^16.13.1" } }, "punycode": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, - "react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" - } + "queue-microtask": { + "version": "1.2.3" }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "queue-tick": { + "version": "1.0.0" }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } + "react": { + "version": "17.0.2", + "peer": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" } }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, + "react-dom": { + "version": "17.0.2", + "peer": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" }, "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, + "scheduler": { + "version": "0.20.2", + "peer": true, "requires": { - "p-limit": "^1.1.0" + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true } } }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "react-is": { + "version": "16.13.1", "dev": true }, + "readable-stream": { + "version": "3.6.0", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, "regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "version": "1.4.3", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" } }, "regexpp": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, "require-directory": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + "dev": true }, "require-from-string": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "resolve": { "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "requires": { "is-core-module": "^2.2.0", @@ -7453,32 +6321,30 @@ }, "resolve-from": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "reusify": { + "version": "1.0.4", "dev": true }, "rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, "requires": { "glob": "^7.1.3" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "run-parallel": { + "version": "1.2.0", + "dev": true, "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "queue-microtask": "^1.2.2" } }, + "safe-buffer": { + "version": "5.1.2", + "dev": true + }, "semistandard": { "version": "16.0.1", "resolved": "https://registry.npmjs.org/semistandard/-/semistandard-16.0.1.tgz", @@ -7494,55 +6360,251 @@ "eslint-plugin-promise": "^5.1.0", "eslint-plugin-react": "~7.21.5", "standard-engine": "^14.0.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "@eslint/eslintrc": { + "version": "0.4.3", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + } + }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "acorn": { + "version": "7.4.1", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "chalk": { + "version": "4.1.2", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "eslint": { + "version": "7.32.0", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + } + }, + "eslint-config-semistandard": { + "version": "16.0.0", + "dev": true, + "requires": {} + }, + "eslint-config-standard": { + "version": "16.0.3", + "dev": true, + "requires": {} + }, + "eslint-config-standard-jsx": { + "version": "10.0.0", + "dev": true, + "requires": {} + }, + "eslint-plugin-promise": { + "version": "5.2.0", + "dev": true, + "requires": {} + }, + "eslint-plugin-react": { + "version": "7.21.5", + "dev": true, + "requires": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "dev": true + }, + "espree": { + "version": "7.3.1", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "dev": true + }, + "glob-parent": { + "version": "5.1.2", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "13.17.0", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "ignore": { + "version": "4.0.6", + "dev": true + }, + "js-yaml": { + "version": "3.14.1", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "semver": { + "version": "7.3.7", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "type-fest": { + "version": "0.20.2", + "dev": true + } } }, "semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "dev": true }, "servatron": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/servatron/-/servatron-2.2.3.tgz", - "integrity": "sha512-0jc/MBGQ4O0isO313bBy1DoRKfCoWHa2mTsJ52rSxfK9y5reDAJL4i7Dpd0rjfNw9d4fwLXnnEvj3bSnEJnOWg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/servatron/-/servatron-2.3.1.tgz", + "integrity": "sha512-PZz/KPi1vVwXRN57CJtJIUS1qfNrcRDXbsu/lAxU5B/d08ugXlQ3w3e1vIPWN8/30GkEdoml98/qKduGwhYtmw==", "requires": { - "mime": "^2.5.2", - "minimist": "^1.2.5" + "mime": "^3.0.0", + "minimist": "^1.2.6" } }, "server-destroy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=" + "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==" }, "shebang-command": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, "requires": { "shebang-regex": "^3.0.0" } }, "shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" - }, - "shiki": { - "version": "0.9.11", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.11.tgz", - "integrity": "sha512-tjruNTLFhU0hruCPoJP0y+B9LKOmcqUhTpxn7pcJB3fa+04gFChuEmxmrUfOJ7ZO6Jd+HwMnDHgY3lv3Tqonuw==", - "dev": true, - "requires": { - "jsonc-parser": "^3.0.0", - "onigasm": "^2.2.5", - "vscode-textmate": "5.2.0" - } + "dev": true }, "side-channel": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -7552,13 +6614,14 @@ }, "signal-exit": { "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + "dev": true + }, + "slash": { + "version": "3.0.0", + "dev": true }, "slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -7566,54 +6629,12 @@ "is-fullwidth-code-point": "^3.0.0" } }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz", - "integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==", - "dev": true - }, "sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "standard-engine": { "version": "14.0.1", - "resolved": "https://registry.npmjs.org/standard-engine/-/standard-engine-14.0.1.tgz", - "integrity": "sha512-7FEzDwmHDOGva7r9ifOzD3BGdTbA7ujJ50afLVdW/tK14zQEptJjbFuUfn50irqdHDcTbNh0DTIoMPynMCXb0Q==", "dev": true, "requires": { "get-stdin": "^8.0.0", @@ -7622,10 +6643,20 @@ "xdg-basedir": "^4.0.0" } }, + "string_decoder": { + "version": "1.3.0", + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1" + } + } + }, "string-width": { "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -7633,83 +6664,64 @@ } }, "string.prototype.matchall": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz", - "integrity": "sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg==", + "version": "4.0.7", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", - "has-symbols": "^1.0.2", + "has-symbols": "^1.0.3", "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.3.1", + "regexp.prototype.flags": "^1.4.1", "side-channel": "^1.0.4" } }, "string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "version": "1.0.5", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" } }, "string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "version": "1.0.5", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" } }, "strip-ansi": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "requires": { "ansi-regex": "^5.0.1" } }, "strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, "strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "stylis": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz", - "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg==", "dev": true }, "supports-color": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "requires": { "has-flag": "^4.0.0" } }, "table": { - "version": "6.7.2", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", - "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", + "version": "6.8.0", "dev": true, "requires": { "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", "string-width": "^4.2.3", @@ -7717,9 +6729,7 @@ }, "dependencies": { "ajv": { - "version": "8.6.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", - "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "version": "8.11.0", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7730,8 +6740,6 @@ }, "json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true } } @@ -7746,8 +6754,7 @@ }, "test-exclude": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, "requires": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -7756,20 +6763,23 @@ }, "text-table": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true + "tick-tock": { + "version": "1.0.0", + "requires": { + "millisecond": "0.1.x" + } + }, + "to-regex-range": { + "version": "5.0.1", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } }, "tsconfig-paths": { "version": "3.11.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", - "integrity": "sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA==", "dev": true, "requires": { "@types/json5": "^0.0.29", @@ -7780,8 +6790,6 @@ "dependencies": { "json5": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { "minimist": "^1.2.0" @@ -7791,64 +6799,31 @@ }, "type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { "prelude-ls": "^1.2.1" } }, "type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" - }, - "typedoc": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.5.tgz", - "integrity": "sha512-KFrWGU1iKiTGw0RcyjLNYDmhd7uICU14HgBNPmFKY/sT4Pm/fraaLyWyisst9vGTUAKxqibqoDITR7+ZcAkhHg==", - "dev": true, - "requires": { - "glob": "^7.2.0", - "lunr": "^2.3.9", - "marked": "^3.0.4", - "minimatch": "^3.0.4", - "shiki": "^0.9.11" - } - }, - "typescript": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz", - "integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==", - "dev": true + "version": "2.18.0" }, "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "version": "1.0.2", "dev": true, "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" } }, "uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" } }, - "urs": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/urs/-/urs-0.0.8.tgz", - "integrity": "sha512-LaSSPpr91XrVA3vW2zPupw4K6DSQEDKdL4yQZX1mO2fpljIMpB5zctrjRvxLurelWSgKsHsCmfHNCImscryirQ==", - "requires": {} - }, "use-http": { "version": "1.0.26", "resolved": "https://registry.npmjs.org/use-http/-/use-http-1.0.26.tgz", @@ -7857,18 +6832,23 @@ "urs": "^0.0.8", "use-ssr": "^1.0.24", "utility-types": "^3.10.0" + }, + "dependencies": { + "urs": { + "version": "0.0.8", + "requires": {} + }, + "use-ssr": { + "version": "1.0.24", + "requires": {} + } } }, - "use-ssr": { - "version": "1.0.24", - "resolved": "https://registry.npmjs.org/use-ssr/-/use-ssr-1.0.24.tgz", - "integrity": "sha512-0MFps7ezL57/3o0yl4CvrHLlp9z20n1rQZV/lSRz7if+TUoM6POU1XdOvEjIgjgKeIhTEye1U0khrIYWCTWw4g==", - "requires": {} + "util-deprecate": { + "version": "1.0.2" }, "utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==" + "version": "3.10.0" }, "uuid": { "version": "8.3.2", @@ -7877,55 +6857,26 @@ }, "v8-compile-cache": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "v8-to-istanbul": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz", - "integrity": "sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==", - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" - } - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "version": "9.0.1", "dev": true, "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" } }, - "vscode-textmate": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", - "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", - "dev": true - }, "which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "requires": { "isexe": "^2.0.0" } }, "which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "requires": { "is-bigint": "^1.0.1", @@ -7937,14 +6888,11 @@ }, "word-wrap": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, "wrap-ansi": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "requires": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -7953,8 +6901,7 @@ }, "wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "dev": true }, "write-response": { "version": "1.2.3", @@ -7973,30 +6920,18 @@ }, "xdg-basedir": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, "y18n": { "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + "dev": true }, "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true + "version": "4.0.0" }, "yargs": { "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, "requires": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -8009,13 +6944,11 @@ }, "yargs-parser": { "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + "dev": true }, "yocto-queue": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + "dev": true } } } diff --git a/package.json b/package.json index 32174c8..520e4e0 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "", "main": "lib/index.js", "scripts": { - "test": "./makeCerts.sh && NODE_ENV=test c8 -x client --check-coverage --lines 89 node test" + "test": "./makeCerts.sh && NODE_ENV=test c8 -x client --check-coverage --lines 83 node test" }, "keywords": [], "author": { @@ -18,33 +18,30 @@ }, "license": "AGPL-3.0", "dependencies": { - "canhazdb-client": "file:./client", - "chalk": "^4.1.2", - "classnames": "^2.3.1", - "crypto-random-string": "^4.0.0", + "@markwylde/liferaft": "^1.2.0", + "chalk": "^5.0.1", + "crypto-random-string": "^5.0.0", "debarrel": "^1.0.2", + "failmenot": "^3.0.1", "final-stream": "^2.0.4", - "lockbase": "^1.3.1", - "logslot": "^2.1.0", - "minimist": "^1.2.5", - "mql-to-jql": "^1.4.0", + "lockbase": "^4.1.0", + "logslot": "^2.1.1", + "minimist": "^1.2.6", + "mql-to-jql": "^1.4.1", "node-ejdb-lite": "^3.4.5", - "servatron": "^2.2.3", + "servatron": "^2.3.1", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", "use-http": "^1.0.26", "uuid": "^8.3.2" }, "devDependencies": { - "@emotion/styled": "^11.3.0", - "axios": "^0.22.0", - "basictap": "^2.4.1", - "c8": "^7.10.0", - "esbuild": "^0.13.4", - "eslint": "^7.32.0", - "eslint-plugin-react-hooks": "^4.2.0", - "react": "^17.0.2", - "react-dom": "^17.0.2", + "axios": "^0.27.2", + "basictap": "^3.4.0", + "c8": "^7.12.0", + "esbuild": "^0.15.1", + "eslint": "^8.21.0", + "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", "write-response": "^1.2.3", "wtfnode": "^0.9.1" diff --git a/test/features/lock.js b/test/features/lock.js index 14d6769..af07ccc 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -3,6 +3,7 @@ import createTestServers from '../helpers/createTestServers.js'; import c from '../../lib/constants.js'; import tcpocket from 'tcpocket'; +import waitUntil from '../../lib/utils/waitUntil.js'; test('lock - and post some data (success)', async t => { t.plan(5); @@ -12,7 +13,7 @@ test('lock - and post some data (success)', async t => { await client.waitUntilConnected(); const lockRequest = await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); const postRequest = await client.send(c.POST, { @@ -76,7 +77,7 @@ test('lock - multiple happen in order', async t => { let secondFinished = false; const first = client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }).then(async lockRequest => { const postRequest = await client.send(c.POST, { [c.COLLECTION_ID]: 'tests', @@ -98,7 +99,7 @@ test('lock - multiple happen in order', async t => { }); const second = client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }).then(async lockRequest => { t.ok(firstFinished, 'first lock has finished before second starts'); @@ -137,7 +138,7 @@ test('lock - and post some data (conflict + fail)', async t => { await client.waitUntilConnected(); const lockRequest = await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); const postRequest = await client.send(c.POST, { @@ -168,7 +169,7 @@ test('lock - and post some data (conflict + wait)', async t => { await client.waitUntilConnected(); const lockRequest = await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); client.send(c.POST, { @@ -224,7 +225,7 @@ test('lock - all methods lock', async t => { const postDocument = postRequest.json()[c.DATA]; const lockRequest = await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); const putRequest = client.send(c.PUT, { @@ -273,7 +274,7 @@ test('lock - and wait but client closes', async t => { await client.waitUntilConnected(); await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); client.send(c.POST, { @@ -302,7 +303,7 @@ test('lock - and wait but node closes', async t => { await client.waitUntilConnected(); await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); client.send(c.POST, { @@ -321,7 +322,7 @@ test('lock - and wait but node closes', async t => { }, 500); }); -test('lock - system collection (system.locks)', async t => { +test.skip('lock - system collection (system.locks)', async t => { t.plan(4); const servers = await createTestServers(1); @@ -329,7 +330,7 @@ test('lock - system collection (system.locks)', async t => { await client.waitUntilConnected(); const lockRequest = await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + [c.LOCK_KEY]: 'tests' }); t.equal(lockRequest.command, c.STATUS_OK, 'lockRequest has ok status'); @@ -351,22 +352,33 @@ test('lock - system collection (system.locks)', async t => { await servers.close(); }); -test('lock - releases when node disconnects', async t => { - t.plan(1); +test.skip('lock - releases when node disconnects', async t => { + t.plan(3); - const servers = await createTestServers(2); + const servers = await createTestServers(3); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); - await client.send(c.LOCK, { - [c.LOCK_KEYS]: ['tests'] + const lockResult = await client.send(c.LOCK, { + [c.LOCK_KEY]: 'tests' }); + t.equal(lockResult.command, c.STATUS_OK, 'lock had ok status'); + + { + const testLocks = servers[1].locks.locks.filter(lock => lock[1][0] === 'tests'); + t.equal(testLocks.length, 1, 'lock was added'); + } + await servers[0].close(); - const testLocks = servers[1].locks.state.locks.filter(lock => lock[1][0] === 'tests'); + const testLocks = await waitUntil(() => { + const testLocks = servers[1].locks.locks.filter(lock => lock[1][0] === 'tests'); + + return testLocks.length === 0 ? testLocks : null; + }); - t.equal(testLocks.length, 0); + t.equal(testLocks.length, 0, 'lock was removed'); await client.close(); await servers.close(); diff --git a/test/features/raft.js b/test/features/raft.js new file mode 100644 index 0000000..e0cfea7 --- /dev/null +++ b/test/features/raft.js @@ -0,0 +1,52 @@ +import test from 'basictap'; +import tcpocket from 'tcpocket'; +import createTestServers from '../helpers/createTestServers.js'; +import waitUntil from '../../lib/utils/waitUntil.js'; +import c from '../../lib/constants.js'; + +test('raft - one node elect self as leader', async t => { + t.plan(1); + + const servers = await createTestServers(1); + const leader = await waitUntil(() => { + return servers[0]?.raft?.leader; + }); + + t.ok(leader, 'leader was elected'); + + await servers.close(); +}); + +test('raft - two nodes elect a leader', async t => { + t.plan(1); + + const servers = await createTestServers(2); + const leader = await waitUntil(() => { + return servers[0]?.raft?.leader; + }); + + t.ok(leader, 'leader was elected'); + + await servers.close(); +}); + +test('raft - lock syncs raft state to all nodes', async t => { + t.plan(2); + + const servers = await createTestServers(2); + + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + + await client.send(c.LOCK, { + [c.LOCK_KEY]: 'tests' + }); + + await t.waitFor(async () => { + t.deepEqual(servers[0].raft.state.locks?.queue?.length, 1); + t.deepEqual(servers[1].raft.state.locks?.queue?.length, 1); + }); + + await client.close(); + await servers.close(); +}); diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index e2ac0d1..b4cdc4c 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -72,7 +72,8 @@ async function createTestServers (count, options = {}) { await waitUntil(() => { return ( server.thisNode && server.thisNode.status === 'healthy' && - server.nodes.every(node => node.status === 'healthy') + server.nodes.every(node => node.status === 'healthy') && + server?.raft?.leader ); }); } diff --git a/test/index.js b/test/index.js index 6aa506b..2b417f9 100644 --- a/test/index.js +++ b/test/index.js @@ -4,35 +4,35 @@ import basictap from 'basictap'; import('./lib/driver/index.js'); import('./lib/utils/calculateAllowedErrorCount.js'); import('./lib/prepareOptions.js'); +import('./modules/controllers/createControllerStore.js'); import('./features/basic.js'); import('./features/http/index.js'); -import('./features/cluster.js'); -import('./features/conflicts.js'); -import('./features/health.js'); -import('./features/notify.js'); +import('./features/raft.js'); import('./features/lock.js'); -import('./features/systemCollections.js'); - -import('./modules/controllers/createControllerStore.js'); +// import('./features/cluster.js'); +// import('./features/conflicts.js'); +// import('./features/health.js'); +// import('./features/notify.js'); +// import('./features/systemCollections.js'); -let timer; -let testsFinished; +// let timer; +// let testsFinished; -basictap.on('finish', () => { - testsFinished = true; - console.log('Finding hanging tasks...'); -}); +// basictap.on('finish', () => { +// testsFinished = true; +// console.log('Finding hanging tasks...'); +// }); -process.on('beforeExit', () => { - if (testsFinished) { - clearInterval(timer); - return; - } - timer = setInterval(() => { - if (testsFinished) { - clearInterval(timer); - } - wtfnode.dump(); - }, 5000); -}); +// process.on('beforeExit', () => { +// if (testsFinished) { +// clearInterval(timer); +// return; +// } +// timer = setInterval(() => { +// if (testsFinished) { +// clearInterval(timer); +// } +// wtfnode.dump(); +// }, 5000); +// }); From 7fd44d9ecce218c6ad4de4a77de2436831c1205b Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 19 Aug 2022 20:39:34 +0100 Subject: [PATCH 64/73] Cleanup --- .github/workflows/test.yml | 3 - .gitmodules | 3 - README.md | 6 +- client | 1 - demo.sh | 10 +- lib/modules/lock/index.js | 5 + package-lock.json | 1077 ++++++++++++++++++++++++++++-------- package.json | 8 +- stress/index.js | 10 +- test/features/lock.js | 8 +- 10 files changed, 884 insertions(+), 247 deletions(-) delete mode 100644 .gitmodules delete mode 160000 client diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e60dd0d..99877da 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -15,9 +15,6 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Checkout submodules - uses: textbook/git-checkout-submodule-action@master - - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index e7df86e..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "client"] - path = client - url = https://github.com/canhazdb/client.git diff --git a/README.md b/README.md index af78aba..b50b105 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [![GitHub](https://img.shields.io/github/license/canhazdb/server)](https://github.com/canhazdb/server/blob/master/LICENSE) [![js-semistandard-style](https://img.shields.io/badge/code%20style-semistandard-brightgreen.svg)](https://github.com/standard/semistandard) -An embedable or standalone database, that shardes data across a cluster of nodes, with eventing. +An embeddable or standalone database, that shards data across a cluster of nodes, with eventing. ## Getting Started You must have a minimum version of Node 16 installed. @@ -26,9 +26,9 @@ docker run -itp 8060:8060 canhazdb/server --single Then visit http://localhost:8080 But you can create a production ready and scalable stack by -using the [stack.yml](stack.yml) file as an example. +using the [demo.sh](demo.sh) file as an example. -This will give you TLS authenication and encryption along with +This will give you TLS authentication and encryption along with persistent storage. ### Server Via the CLI diff --git a/client b/client deleted file mode 160000 index e64156e..0000000 --- a/client +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e64156efade0fa728315d1be3243cf18f58c5056 diff --git a/demo.sh b/demo.sh index ec672c7..d3afcbc 100755 --- a/demo.sh +++ b/demo.sh @@ -1,2 +1,8 @@ -node lib/cli.js --tls-ca ./certs/ca.cert.pem --tls-cert ./certs/localhost.cert.pem --tls-key ./certs/localhost.privkey.pem --http-host 127.0.0.1 --http-port 8001 --web-host 127.0.0.1 --web-port 8080 - +node lib/cli.js \ + --tls-ca ./certs/ca.cert.pem \ + --tls-cert ./certs/localhost.cert.pem \ + --tls-key ./certs/localhost.privkey.pem \ + --http-host localhost \ + --http-port 8001 \ + --web-host localhost \ + --web-port 8080 diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index 786188d..61d76f3 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -98,6 +98,11 @@ async function lockModule (context) { }); context.on('node.disconnected', async node => { + const isLeader = context.raft.leader === context.thisNode; + if (!isLeader) { + return; + } + log.info('cleaning up locks originating from node [' + node.name + ']'); if (context.locks.byNode[node?.name]) { diff --git a/package-lock.json b/package-lock.json index a6933b4..86e59a4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,7 @@ "logslot": "^2.1.1", "minimist": "^1.2.6", "mql-to-jql": "^1.4.1", - "node-ejdb-lite": "^3.4.5", + "node-ejdb-lite": "^2.73.7", "servatron": "^2.3.1", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", @@ -27,17 +27,52 @@ "uuid": "^8.3.2" }, "devDependencies": { + "@emotion/styled": "^10.3.0", "axios": "^0.27.2", "basictap": "^3.4.0", "c8": "^7.12.0", - "esbuild": "^0.15.1", - "eslint": "^8.21.0", + "classnames": "^2.3.1", + "esbuild": "^0.15.5", + "eslint": "^8.22.0", "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", "write-response": "^1.2.3", "wtfnode": "^0.9.1" } }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", + "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.18.6", "dev": true, @@ -47,11 +82,12 @@ } }, "node_modules/@babel/highlight": { - "version": "7.14.5", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -123,15 +159,181 @@ "node": ">=4" } }, + "node_modules/@babel/runtime": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", + "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", + "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.18.10", + "@babel/helper-validator-identifier": "^7.18.6", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", "dev": true, "license": "MIT" }, + "node_modules/@emotion/cache": { + "version": "10.0.29", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.29.tgz", + "integrity": "sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==", + "dev": true, + "peer": true, + "dependencies": { + "@emotion/sheet": "0.9.4", + "@emotion/stylis": "0.8.5", + "@emotion/utils": "0.11.3", + "@emotion/weak-memoize": "0.2.5" + } + }, + "node_modules/@emotion/core": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/@emotion/core/-/core-10.3.1.tgz", + "integrity": "sha512-447aUEjPIm0MnE6QYIaFz9VQOHSXf4Iu6EWOIqq11EAPqinkSZmfymPTmlOE3QjLv846lH4JVZBUOtwGbuQoww==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/runtime": "^7.5.5", + "@emotion/cache": "^10.0.27", + "@emotion/css": "^10.0.27", + "@emotion/serialize": "^0.11.15", + "@emotion/sheet": "0.9.4", + "@emotion/utils": "0.11.3" + }, + "peerDependencies": { + "react": ">=16.3.0" + } + }, + "node_modules/@emotion/css": { + "version": "10.0.27", + "resolved": "https://registry.npmjs.org/@emotion/css/-/css-10.0.27.tgz", + "integrity": "sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==", + "dev": true, + "peer": true, + "dependencies": { + "@emotion/serialize": "^0.11.15", + "@emotion/utils": "0.11.3", + "babel-plugin-emotion": "^10.0.27" + } + }, + "node_modules/@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", + "dev": true + }, + "node_modules/@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "dev": true, + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", + "dev": true + }, + "node_modules/@emotion/serialize": { + "version": "0.11.16", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.16.tgz", + "integrity": "sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==", + "dev": true, + "dependencies": { + "@emotion/hash": "0.8.0", + "@emotion/memoize": "0.7.4", + "@emotion/unitless": "0.7.5", + "@emotion/utils": "0.11.3", + "csstype": "^2.5.7" + } + }, + "node_modules/@emotion/sheet": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.4.tgz", + "integrity": "sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==", + "dev": true, + "peer": true + }, + "node_modules/@emotion/styled": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-10.3.0.tgz", + "integrity": "sha512-GgcUpXBBEU5ido+/p/mCT2/Xx+Oqmp9JzQRuC+a4lYM4i4LBBn/dWvc0rQ19N9ObA8/T4NWMrPNe79kMBDJqoQ==", + "dev": true, + "dependencies": { + "@emotion/styled-base": "^10.3.0", + "babel-plugin-emotion": "^10.0.27" + }, + "peerDependencies": { + "@emotion/core": "^10.0.27", + "react": ">=16.3.0" + } + }, + "node_modules/@emotion/styled-base": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.3.0.tgz", + "integrity": "sha512-PBRqsVKR7QRNkmfH78hTSSwHWcwDpecH9W6heujWAcyp2wdz/64PP73s7fWS1dIPm8/Exc8JAzYS8dEWXjv60w==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.5.5", + "@emotion/is-prop-valid": "0.8.8", + "@emotion/serialize": "^0.11.15", + "@emotion/utils": "0.11.3" + }, + "peerDependencies": { + "@emotion/core": "^10.0.28", + "react": ">=16.3.0" + } + }, + "node_modules/@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==", + "dev": true, + "peer": true + }, + "node_modules/@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", + "dev": true + }, + "node_modules/@emotion/utils": { + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.3.tgz", + "integrity": "sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==", + "dev": true + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", + "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", + "dev": true, + "peer": true + }, "node_modules/@esbuild/linux-loong64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.1.tgz", - "integrity": "sha512-1tORADNFK9QS4KYyUyh3Td9WGrdiI1rSoKvY6A43+9G0kPujBuT4lIGyoK0AweOSO1aRIR28xQUfiJCUa78bUw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.5.tgz", + "integrity": "sha512-UHkDFCfSGTuXq08oQltXxSZmH1TXyWsL+4QhZDWvvLl6mEJQqk3u7/wq1LjhrrAXYIllaTtRSzUXl4Olkf2J8A==", "cpu": [ "loong64" ], @@ -306,6 +508,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "node_modules/abstract-leveldown": { "version": "7.2.0", "license": "MIT", @@ -472,6 +680,50 @@ "form-data": "^4.0.0" } }, + "node_modules/babel-plugin-emotion": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz", + "integrity": "sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "@emotion/hash": "0.8.0", + "@emotion/memoize": "0.7.4", + "@emotion/serialize": "^0.11.16", + "babel-plugin-macros": "^2.0.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^1.0.5", + "find-root": "^1.1.0", + "source-map": "^0.5.7" + } + }, + "node_modules/babel-plugin-emotion/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", + "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.7.2", + "cosmiconfig": "^6.0.0", + "resolve": "^1.12.0" + } + }, + "node_modules/babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==", + "dev": true + }, "node_modules/balanced-match": { "version": "1.0.2", "dev": true, @@ -615,6 +867,12 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==", + "dev": true + }, "node_modules/cliui": { "version": "7.0.4", "dev": true, @@ -670,6 +928,22 @@ "safe-buffer": "~5.1.1" } }, + "node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "dev": true, @@ -697,6 +971,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/csstype": { + "version": "2.6.20", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz", + "integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==", + "dev": true + }, "node_modules/debarrel": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", @@ -886,9 +1166,9 @@ } }, "node_modules/esbuild": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.1.tgz", - "integrity": "sha512-zgxo2st9wSbdiR6rTo44l/L7ohttqdXFmhUi5tE6yWahgdBjCwZjBgIkm/gr/TcBTTIwyzd7em8WI37yZ+F2Mg==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.5.tgz", + "integrity": "sha512-VSf6S1QVqvxfIsSKb3UKr3VhUCis7wgDbtF4Vd9z84UJr05/Sp2fRKmzC+CSPG/dNAPPJZ0BTBLTT1Fhd6N9Gg==", "dev": true, "hasInstallScript": true, "bin": { @@ -898,33 +1178,33 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/linux-loong64": "0.15.1", - "esbuild-android-64": "0.15.1", - "esbuild-android-arm64": "0.15.1", - "esbuild-darwin-64": "0.15.1", - "esbuild-darwin-arm64": "0.15.1", - "esbuild-freebsd-64": "0.15.1", - "esbuild-freebsd-arm64": "0.15.1", - "esbuild-linux-32": "0.15.1", - "esbuild-linux-64": "0.15.1", - "esbuild-linux-arm": "0.15.1", - "esbuild-linux-arm64": "0.15.1", - "esbuild-linux-mips64le": "0.15.1", - "esbuild-linux-ppc64le": "0.15.1", - "esbuild-linux-riscv64": "0.15.1", - "esbuild-linux-s390x": "0.15.1", - "esbuild-netbsd-64": "0.15.1", - "esbuild-openbsd-64": "0.15.1", - "esbuild-sunos-64": "0.15.1", - "esbuild-windows-32": "0.15.1", - "esbuild-windows-64": "0.15.1", - "esbuild-windows-arm64": "0.15.1" + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" } }, "node_modules/esbuild-android-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.1.tgz", - "integrity": "sha512-q5kkJZsgLIkyh5e2ZJl4/kXKIueBKtjVMEihP9WCHadqhH6+F9qiycE7fBwUb/g2B15mYlmMBXjp8VmOT3J2gA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.5.tgz", + "integrity": "sha512-dYPPkiGNskvZqmIK29OPxolyY3tp+c47+Fsc2WYSOVjEPWNCHNyqhtFqQadcXMJDQt8eN0NMDukbyQgFcHquXg==", "cpu": [ "x64" ], @@ -938,9 +1218,9 @@ } }, "node_modules/esbuild-android-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.1.tgz", - "integrity": "sha512-IQuZOzqMaFceLlKJJA27CXAdh+Mzh2ZblHMmcNIu/wxb6iX1zgYXlPWle62iHnmNCtfAux1mzQvmNsP9aLhemA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.5.tgz", + "integrity": "sha512-YyEkaQl08ze3cBzI/4Cm1S+rVh8HMOpCdq8B78JLbNFHhzi4NixVN93xDrHZLztlocEYqi45rHHCgA8kZFidFg==", "cpu": [ "arm64" ], @@ -954,9 +1234,9 @@ } }, "node_modules/esbuild-darwin-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.1.tgz", - "integrity": "sha512-tyouWLyxwM/Y2fy/reuIvAvVB+KVQwuY9IVyV7LH5CGkJYxgtLb8xVEiwHFF8TG2uo9a2fqdgWffados4YA6Aw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.5.tgz", + "integrity": "sha512-Cr0iIqnWKx3ZTvDUAzG0H/u9dWjLE4c2gTtRLz4pqOBGjfjqdcZSfAObFzKTInLLSmD0ZV1I/mshhPoYSBMMCQ==", "cpu": [ "x64" ], @@ -970,9 +1250,9 @@ } }, "node_modules/esbuild-darwin-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.1.tgz", - "integrity": "sha512-fb4V1eB1nir3zJwsS75itsbahkbM71XuqUDJVH8iyBLS8VIQD7MWWAAekea2l9keueGfsn0+wTyDluMT+kg8Cw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.5.tgz", + "integrity": "sha512-WIfQkocGtFrz7vCu44ypY5YmiFXpsxvz2xqwe688jFfSVCnUsCn2qkEVDo7gT8EpsLOz1J/OmqjExePL1dr1Kg==", "cpu": [ "arm64" ], @@ -986,9 +1266,9 @@ } }, "node_modules/esbuild-freebsd-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.1.tgz", - "integrity": "sha512-1KxEv/FUPlQtUSOjFCwR8FVNEskB5LmkbfW9FNJ7lhpG+4RsLiHWw4Sl2Y1/S+aKX7inyWxLA05zYV6XAzO8DA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.5.tgz", + "integrity": "sha512-M5/EfzV2RsMd/wqwR18CELcenZ8+fFxQAAEO7TJKDmP3knhWSbD72ILzrXFMMwshlPAS1ShCZ90jsxkm+8FlaA==", "cpu": [ "x64" ], @@ -1002,9 +1282,9 @@ } }, "node_modules/esbuild-freebsd-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.1.tgz", - "integrity": "sha512-ueUMGSNrcuHwAadioxBdfOCO4+bTVeI68a147BQ/AFFIrf4XJNow4UXxguvQlZO+ZYaVz6EztaL6mHslKie2Rw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.5.tgz", + "integrity": "sha512-2JQQ5Qs9J0440F/n/aUBNvY6lTo4XP/4lt1TwDfHuo0DY3w5++anw+jTjfouLzbJmFFiwmX7SmUhMnysocx96w==", "cpu": [ "arm64" ], @@ -1018,9 +1298,9 @@ } }, "node_modules/esbuild-linux-32": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.1.tgz", - "integrity": "sha512-K5WWcN2OZkZ6arFN3+hi1leKc0at9ukKGrXK9Ia94kQOesBphTSmsNK/Gy/AoVoIa0bWrHtxDijS9j9+dz86oA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.5.tgz", + "integrity": "sha512-gO9vNnIN0FTUGjvTFucIXtBSr1Woymmx/aHQtuU+2OllGU6YFLs99960UD4Dib1kFovVgs59MTXwpFdVoSMZoQ==", "cpu": [ "ia32" ], @@ -1034,9 +1314,9 @@ } }, "node_modules/esbuild-linux-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.1.tgz", - "integrity": "sha512-+haiVm83DfRi9x8M+GgR4f4LtSN8lnEIG8XMGK8/FYpkYNQiKb398GxeHp2yvoMpX8IPvmWCt215tAm5BBNfZQ==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", + "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", "cpu": [ "x64" ], @@ -1050,9 +1330,9 @@ } }, "node_modules/esbuild-linux-arm": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.1.tgz", - "integrity": "sha512-qjAkEDcFhVNYwG2xgaDg/hA8JABoMvjzAzE6g1K8kR516oNkKbVf6rN68UrsQaV1zq1qR3dbVeMv/Ul2bheppA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.5.tgz", + "integrity": "sha512-wvAoHEN+gJ/22gnvhZnS/+2H14HyAxM07m59RSLn3iXrQsdS518jnEWRBnJz3fR6BJa+VUTo0NxYjGaNt7RA7Q==", "cpu": [ "arm" ], @@ -1066,9 +1346,9 @@ } }, "node_modules/esbuild-linux-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.1.tgz", - "integrity": "sha512-TP0BCVZEVu/aoVaZe2sn1vpvo63j0LPiH8rvd7AegqOfTwb+mcxLxpgyYwkibafUCMxnIrKdUTsSJeusoMhcLg==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.5.tgz", + "integrity": "sha512-7EgFyP2zjO065XTfdCxiXVEk+f83RQ1JsryN1X/VSX2li9rnHAt2swRbpoz5Vlrl6qjHrCmq5b6yxD13z6RheA==", "cpu": [ "arm64" ], @@ -1082,9 +1362,9 @@ } }, "node_modules/esbuild-linux-mips64le": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.1.tgz", - "integrity": "sha512-8vzQzp+kwrn1Y+OjvfFaLS8uL8aR39WnAtxOHwjB72s9g18kHFlE8IQLS9dWDQgKpBSFq9kazsJE65dSVmz+VA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.5.tgz", + "integrity": "sha512-KdnSkHxWrJ6Y40ABu+ipTZeRhFtc8dowGyFsZY5prsmMSr1ZTG9zQawguN4/tunJ0wy3+kD54GaGwdcpwWAvZQ==", "cpu": [ "mips64el" ], @@ -1098,9 +1378,9 @@ } }, "node_modules/esbuild-linux-ppc64le": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.1.tgz", - "integrity": "sha512-QlWSOgC2Ad53Xvf7ZivXU7wM2y29YhQUrd50PjK0QJ3psh/eYSQx77PTe1iWm7Ovjiqv1wPKEAyC7CbyJUgriw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.5.tgz", + "integrity": "sha512-QdRHGeZ2ykl5P0KRmfGBZIHmqcwIsUKWmmpZTOq573jRWwmpfRmS7xOhmDHBj9pxv+6qRMH8tLr2fe+ZKQvCYw==", "cpu": [ "ppc64" ], @@ -1114,9 +1394,9 @@ } }, "node_modules/esbuild-linux-riscv64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.1.tgz", - "integrity": "sha512-/PRNgNsiwb7G2n3rB5WcHinCwKj0OqUmtu8cdakV4CLNWnFnfChEGEJX1x5n8RcGD3xPUlI5CgqFe0/oBcUh+A==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.5.tgz", + "integrity": "sha512-p+WE6RX+jNILsf+exR29DwgV6B73khEQV0qWUbzxaycxawZ8NE0wA6HnnTxbiw5f4Gx9sJDUBemh9v49lKOORA==", "cpu": [ "riscv64" ], @@ -1130,9 +1410,9 @@ } }, "node_modules/esbuild-linux-s390x": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.1.tgz", - "integrity": "sha512-TScRbO4mi4AUUXzIQ8sb6ZXhGkCb/PlJ82qFfBE6xxsioae/d6XaSdaha/+OUTvmPeoro3lNf3vwdw27v3wEgw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.5.tgz", + "integrity": "sha512-J2ngOB4cNzmqLHh6TYMM/ips8aoZIuzxJnDdWutBw5482jGXiOzsPoEF4j2WJ2mGnm7FBCO4StGcwzOgic70JQ==", "cpu": [ "s390x" ], @@ -1146,9 +1426,9 @@ } }, "node_modules/esbuild-netbsd-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.1.tgz", - "integrity": "sha512-ES2pbK8QfsMZbdPkgjkLwWfnEGtPa0vYzVFLQn7GFgP+RiemY+ulH7WWQ8ezMt9rZl4XAR3y14yKLGX0gsBLaw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.5.tgz", + "integrity": "sha512-MmKUYGDizYjFia0Rwt8oOgmiFH7zaYlsoQ3tIOfPxOqLssAsEgG0MUdRDm5lliqjiuoog8LyDu9srQk5YwWF3w==", "cpu": [ "x64" ], @@ -1162,9 +1442,9 @@ } }, "node_modules/esbuild-openbsd-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.1.tgz", - "integrity": "sha512-DxNWji11AxSEny4HzSKu21Skia8tEPQI1N+XO/RqVOJComOvsFLq+QeooKsK2caOsQIKl9mO14Hh+px+zFabMA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.5.tgz", + "integrity": "sha512-2mMFfkLk3oPWfopA9Plj4hyhqHNuGyp5KQyTT9Rc8hFd8wAn5ZrbJg+gNcLMo2yzf8Uiu0RT6G9B15YN9WQyMA==", "cpu": [ "x64" ], @@ -1178,9 +1458,9 @@ } }, "node_modules/esbuild-sunos-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.1.tgz", - "integrity": "sha512-lwZoWlv893qtQQx5H4QQCh2mcYzGbxEz09ESFdd4cHcUCfjb193bSAy6jPxW2efBx2fHEo2sw43TRtAkpCf+XQ==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.5.tgz", + "integrity": "sha512-2sIzhMUfLNoD+rdmV6AacilCHSxZIoGAU2oT7XmJ0lXcZWnCvCtObvO6D4puxX9YRE97GodciRGDLBaiC6x1SA==", "cpu": [ "x64" ], @@ -1194,9 +1474,9 @@ } }, "node_modules/esbuild-windows-32": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.1.tgz", - "integrity": "sha512-jEFz8DxP+Hh67fk9XMoyLUqPjjoCT6m4bnl36aze0XpPZDuQm0SBDlG/ciOBCjzHDsu/MYUNwxVezvUT3sXh1A==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.5.tgz", + "integrity": "sha512-e+duNED9UBop7Vnlap6XKedA/53lIi12xv2ebeNS4gFmu7aKyTrok7DPIZyU5w/ftHD4MUDs5PJUkQPP9xJRzg==", "cpu": [ "ia32" ], @@ -1210,9 +1490,9 @@ } }, "node_modules/esbuild-windows-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.1.tgz", - "integrity": "sha512-bUetnfw4xXKBTOQx4sTzoENJVEdgAN29ZTLRtnMseRzsMO8pjObQMsRPpPL3Cstt6FJhj3k3uScHc5VnfC9QkA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.5.tgz", + "integrity": "sha512-v+PjvNtSASHOjPDMIai9Yi+aP+Vwox+3WVdg2JB8N9aivJ7lyhp4NVU+J0MV2OkWFPnVO8AE/7xH+72ibUUEnw==", "cpu": [ "x64" ], @@ -1226,9 +1506,9 @@ } }, "node_modules/esbuild-windows-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.1.tgz", - "integrity": "sha512-oN0JMj7fQZOiqJ/f/wc8lkxjvWwj5Yz0ZhOeU90JFaPZAfafNnysi6GS95glY5uwLUUJz/RNc84cb0dK2qT89A==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.5.tgz", + "integrity": "sha512-Yz8w/D8CUPYstvVQujByu6mlf48lKmXkq6bkeSZZxTA626efQOJb26aDGLzmFWx6eg/FwrXgt6SZs9V8Pwy/aA==", "cpu": [ "arm64" ], @@ -1261,9 +1541,9 @@ } }, "node_modules/eslint": { - "version": "8.21.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz", - "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==", + "version": "8.22.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.22.0.tgz", + "integrity": "sha512-ci4t0sz6vSRKdmkOGmprBo6fmI4PrphDFMy5JEq/fNS0gQkJM3rLmrqcp8ipMcdobH3KtUP40KniAE9W19S4wA==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.3.0", @@ -1776,6 +2056,12 @@ "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.4.tgz", "integrity": "sha512-kBaHWwbW2oRFp1WZeY28QrCwv5yJVJTO/tPHYIWLs3ezd2DvCXrBayqgG096tJPqZhUaCM/y1439LkAjnr7xaA==" }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, "node_modules/find-up": { "version": "5.0.0", "dev": true, @@ -2424,6 +2710,12 @@ "dev": true, "license": "MIT" }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "dev": true, @@ -2528,6 +2820,12 @@ "node": ">= 0.8.0" } }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, "node_modules/load-json-file": { "version": "5.3.0", "dev": true, @@ -2615,6 +2913,7 @@ }, "node_modules/lru-cache": { "version": "6.0.0", + "dev": true, "license": "ISC", "dependencies": { "yallist": "^4.0.0" @@ -2730,9 +3029,9 @@ "license": "MIT" }, "node_modules/node-ejdb-lite": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.5.tgz", - "integrity": "sha512-vO2Qcd2gGRIreX+2x6OhB+dtY/WziaG8N0dJeemaucQ135x/V48gRLu7hyiMGX2GeNS+YaWOqiYyDcbIvAEZfA==", + "version": "2.73.7", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-2.73.7.tgz", + "integrity": "sha512-hcjtkF3DcPpp78W0WUnkwJkiJwGzCzsvbUnQOP4SW5jWmAW3Ricmvr8/lhJCmla2EVBrkCnPb+2Ae11YLQHM4w==", "cpu": [ "x64", "x32", @@ -2746,27 +3045,11 @@ "alpine", "!win32" ], - "dependencies": { - "semver": "^7.3.5" - }, "engines": { "node": ">=10.0.0", "npm": ">=6.0.0" } }, - "node_modules/node-ejdb-lite/node_modules/semver": { - "version": "7.3.5", - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/node-gyp-build": { "version": "4.5.0", "license": "MIT", @@ -2939,6 +3222,24 @@ "node": ">=6" } }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/path-exists": { "version": "4.0.0", "dev": true, @@ -3254,6 +3555,12 @@ "node": ">= 6" } }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, "node_modules/regexp.prototype.flags": { "version": "1.4.3", "dev": true, @@ -3845,6 +4152,15 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "dev": true, @@ -4069,6 +4385,15 @@ "millisecond": "0.1.x" } }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "dev": true, @@ -4306,8 +4631,18 @@ }, "node_modules/yallist": { "version": "4.0.0", + "dev": true, "license": "ISC" }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/yargs": { "version": "16.2.0", "dev": true, @@ -4346,15 +4681,41 @@ } }, "dependencies": { + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", + "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", + "dev": true + }, "@babel/helper-validator-identifier": { "version": "7.18.6", "dev": true }, "@babel/highlight": { - "version": "7.14.5", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -4403,14 +4764,163 @@ } } }, + "@babel/runtime": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", + "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/types": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", + "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.18.10", + "@babel/helper-validator-identifier": "^7.18.6", + "to-fast-properties": "^2.0.0" + } + }, "@bcoe/v8-coverage": { "version": "0.2.3", "dev": true }, + "@emotion/cache": { + "version": "10.0.29", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.29.tgz", + "integrity": "sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==", + "dev": true, + "peer": true, + "requires": { + "@emotion/sheet": "0.9.4", + "@emotion/stylis": "0.8.5", + "@emotion/utils": "0.11.3", + "@emotion/weak-memoize": "0.2.5" + } + }, + "@emotion/core": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/@emotion/core/-/core-10.3.1.tgz", + "integrity": "sha512-447aUEjPIm0MnE6QYIaFz9VQOHSXf4Iu6EWOIqq11EAPqinkSZmfymPTmlOE3QjLv846lH4JVZBUOtwGbuQoww==", + "dev": true, + "peer": true, + "requires": { + "@babel/runtime": "^7.5.5", + "@emotion/cache": "^10.0.27", + "@emotion/css": "^10.0.27", + "@emotion/serialize": "^0.11.15", + "@emotion/sheet": "0.9.4", + "@emotion/utils": "0.11.3" + } + }, + "@emotion/css": { + "version": "10.0.27", + "resolved": "https://registry.npmjs.org/@emotion/css/-/css-10.0.27.tgz", + "integrity": "sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==", + "dev": true, + "peer": true, + "requires": { + "@emotion/serialize": "^0.11.15", + "@emotion/utils": "0.11.3", + "babel-plugin-emotion": "^10.0.27" + } + }, + "@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", + "dev": true + }, + "@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "dev": true, + "requires": { + "@emotion/memoize": "0.7.4" + } + }, + "@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", + "dev": true + }, + "@emotion/serialize": { + "version": "0.11.16", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.16.tgz", + "integrity": "sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==", + "dev": true, + "requires": { + "@emotion/hash": "0.8.0", + "@emotion/memoize": "0.7.4", + "@emotion/unitless": "0.7.5", + "@emotion/utils": "0.11.3", + "csstype": "^2.5.7" + } + }, + "@emotion/sheet": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.4.tgz", + "integrity": "sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==", + "dev": true, + "peer": true + }, + "@emotion/styled": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-10.3.0.tgz", + "integrity": "sha512-GgcUpXBBEU5ido+/p/mCT2/Xx+Oqmp9JzQRuC+a4lYM4i4LBBn/dWvc0rQ19N9ObA8/T4NWMrPNe79kMBDJqoQ==", + "dev": true, + "requires": { + "@emotion/styled-base": "^10.3.0", + "babel-plugin-emotion": "^10.0.27" + } + }, + "@emotion/styled-base": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.3.0.tgz", + "integrity": "sha512-PBRqsVKR7QRNkmfH78hTSSwHWcwDpecH9W6heujWAcyp2wdz/64PP73s7fWS1dIPm8/Exc8JAzYS8dEWXjv60w==", + "dev": true, + "requires": { + "@babel/runtime": "^7.5.5", + "@emotion/is-prop-valid": "0.8.8", + "@emotion/serialize": "^0.11.15", + "@emotion/utils": "0.11.3" + } + }, + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==", + "dev": true, + "peer": true + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", + "dev": true + }, + "@emotion/utils": { + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.3.tgz", + "integrity": "sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==", + "dev": true + }, + "@emotion/weak-memoize": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", + "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", + "dev": true, + "peer": true + }, "@esbuild/linux-loong64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.1.tgz", - "integrity": "sha512-1tORADNFK9QS4KYyUyh3Td9WGrdiI1rSoKvY6A43+9G0kPujBuT4lIGyoK0AweOSO1aRIR28xQUfiJCUa78bUw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.5.tgz", + "integrity": "sha512-UHkDFCfSGTuXq08oQltXxSZmH1TXyWsL+4QhZDWvvLl6mEJQqk3u7/wq1LjhrrAXYIllaTtRSzUXl4Olkf2J8A==", "dev": true, "optional": true }, @@ -4526,6 +5036,12 @@ "version": "0.0.29", "dev": true }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "abstract-leveldown": { "version": "7.2.0", "requires": { @@ -4627,6 +5143,49 @@ "form-data": "^4.0.0" } }, + "babel-plugin-emotion": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz", + "integrity": "sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@emotion/hash": "0.8.0", + "@emotion/memoize": "0.7.4", + "@emotion/serialize": "^0.11.16", + "babel-plugin-macros": "^2.0.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^1.0.5", + "find-root": "^1.1.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + } + } + }, + "babel-plugin-macros": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", + "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.7.2", + "cosmiconfig": "^6.0.0", + "resolve": "^1.12.0" + } + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==", + "dev": true + }, "balanced-match": { "version": "1.0.2", "dev": true @@ -4710,6 +5269,12 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==" }, + "classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==", + "dev": true + }, "cliui": { "version": "7.0.4", "dev": true, @@ -4752,6 +5317,19 @@ "safe-buffer": "~5.1.1" } }, + "cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + } + }, "cross-spawn": { "version": "7.0.3", "dev": true, @@ -4769,6 +5347,12 @@ "type-fest": "^2.12.2" } }, + "csstype": { + "version": "2.6.20", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz", + "integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==", + "dev": true + }, "debarrel": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/debarrel/-/debarrel-1.0.2.tgz", @@ -4898,171 +5482,171 @@ } }, "esbuild": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.1.tgz", - "integrity": "sha512-zgxo2st9wSbdiR6rTo44l/L7ohttqdXFmhUi5tE6yWahgdBjCwZjBgIkm/gr/TcBTTIwyzd7em8WI37yZ+F2Mg==", - "dev": true, - "requires": { - "@esbuild/linux-loong64": "0.15.1", - "esbuild-android-64": "0.15.1", - "esbuild-android-arm64": "0.15.1", - "esbuild-darwin-64": "0.15.1", - "esbuild-darwin-arm64": "0.15.1", - "esbuild-freebsd-64": "0.15.1", - "esbuild-freebsd-arm64": "0.15.1", - "esbuild-linux-32": "0.15.1", - "esbuild-linux-64": "0.15.1", - "esbuild-linux-arm": "0.15.1", - "esbuild-linux-arm64": "0.15.1", - "esbuild-linux-mips64le": "0.15.1", - "esbuild-linux-ppc64le": "0.15.1", - "esbuild-linux-riscv64": "0.15.1", - "esbuild-linux-s390x": "0.15.1", - "esbuild-netbsd-64": "0.15.1", - "esbuild-openbsd-64": "0.15.1", - "esbuild-sunos-64": "0.15.1", - "esbuild-windows-32": "0.15.1", - "esbuild-windows-64": "0.15.1", - "esbuild-windows-arm64": "0.15.1" + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.5.tgz", + "integrity": "sha512-VSf6S1QVqvxfIsSKb3UKr3VhUCis7wgDbtF4Vd9z84UJr05/Sp2fRKmzC+CSPG/dNAPPJZ0BTBLTT1Fhd6N9Gg==", + "dev": true, + "requires": { + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" } }, "esbuild-android-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.1.tgz", - "integrity": "sha512-q5kkJZsgLIkyh5e2ZJl4/kXKIueBKtjVMEihP9WCHadqhH6+F9qiycE7fBwUb/g2B15mYlmMBXjp8VmOT3J2gA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.5.tgz", + "integrity": "sha512-dYPPkiGNskvZqmIK29OPxolyY3tp+c47+Fsc2WYSOVjEPWNCHNyqhtFqQadcXMJDQt8eN0NMDukbyQgFcHquXg==", "dev": true, "optional": true }, "esbuild-android-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.1.tgz", - "integrity": "sha512-IQuZOzqMaFceLlKJJA27CXAdh+Mzh2ZblHMmcNIu/wxb6iX1zgYXlPWle62iHnmNCtfAux1mzQvmNsP9aLhemA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.5.tgz", + "integrity": "sha512-YyEkaQl08ze3cBzI/4Cm1S+rVh8HMOpCdq8B78JLbNFHhzi4NixVN93xDrHZLztlocEYqi45rHHCgA8kZFidFg==", "dev": true, "optional": true }, "esbuild-darwin-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.1.tgz", - "integrity": "sha512-tyouWLyxwM/Y2fy/reuIvAvVB+KVQwuY9IVyV7LH5CGkJYxgtLb8xVEiwHFF8TG2uo9a2fqdgWffados4YA6Aw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.5.tgz", + "integrity": "sha512-Cr0iIqnWKx3ZTvDUAzG0H/u9dWjLE4c2gTtRLz4pqOBGjfjqdcZSfAObFzKTInLLSmD0ZV1I/mshhPoYSBMMCQ==", "dev": true, "optional": true }, "esbuild-darwin-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.1.tgz", - "integrity": "sha512-fb4V1eB1nir3zJwsS75itsbahkbM71XuqUDJVH8iyBLS8VIQD7MWWAAekea2l9keueGfsn0+wTyDluMT+kg8Cw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.5.tgz", + "integrity": "sha512-WIfQkocGtFrz7vCu44ypY5YmiFXpsxvz2xqwe688jFfSVCnUsCn2qkEVDo7gT8EpsLOz1J/OmqjExePL1dr1Kg==", "dev": true, "optional": true }, "esbuild-freebsd-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.1.tgz", - "integrity": "sha512-1KxEv/FUPlQtUSOjFCwR8FVNEskB5LmkbfW9FNJ7lhpG+4RsLiHWw4Sl2Y1/S+aKX7inyWxLA05zYV6XAzO8DA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.5.tgz", + "integrity": "sha512-M5/EfzV2RsMd/wqwR18CELcenZ8+fFxQAAEO7TJKDmP3knhWSbD72ILzrXFMMwshlPAS1ShCZ90jsxkm+8FlaA==", "dev": true, "optional": true }, "esbuild-freebsd-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.1.tgz", - "integrity": "sha512-ueUMGSNrcuHwAadioxBdfOCO4+bTVeI68a147BQ/AFFIrf4XJNow4UXxguvQlZO+ZYaVz6EztaL6mHslKie2Rw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.5.tgz", + "integrity": "sha512-2JQQ5Qs9J0440F/n/aUBNvY6lTo4XP/4lt1TwDfHuo0DY3w5++anw+jTjfouLzbJmFFiwmX7SmUhMnysocx96w==", "dev": true, "optional": true }, "esbuild-linux-32": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.1.tgz", - "integrity": "sha512-K5WWcN2OZkZ6arFN3+hi1leKc0at9ukKGrXK9Ia94kQOesBphTSmsNK/Gy/AoVoIa0bWrHtxDijS9j9+dz86oA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.5.tgz", + "integrity": "sha512-gO9vNnIN0FTUGjvTFucIXtBSr1Woymmx/aHQtuU+2OllGU6YFLs99960UD4Dib1kFovVgs59MTXwpFdVoSMZoQ==", "dev": true, "optional": true }, "esbuild-linux-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.1.tgz", - "integrity": "sha512-+haiVm83DfRi9x8M+GgR4f4LtSN8lnEIG8XMGK8/FYpkYNQiKb398GxeHp2yvoMpX8IPvmWCt215tAm5BBNfZQ==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", + "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", "dev": true, "optional": true }, "esbuild-linux-arm": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.1.tgz", - "integrity": "sha512-qjAkEDcFhVNYwG2xgaDg/hA8JABoMvjzAzE6g1K8kR516oNkKbVf6rN68UrsQaV1zq1qR3dbVeMv/Ul2bheppA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.5.tgz", + "integrity": "sha512-wvAoHEN+gJ/22gnvhZnS/+2H14HyAxM07m59RSLn3iXrQsdS518jnEWRBnJz3fR6BJa+VUTo0NxYjGaNt7RA7Q==", "dev": true, "optional": true }, "esbuild-linux-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.1.tgz", - "integrity": "sha512-TP0BCVZEVu/aoVaZe2sn1vpvo63j0LPiH8rvd7AegqOfTwb+mcxLxpgyYwkibafUCMxnIrKdUTsSJeusoMhcLg==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.5.tgz", + "integrity": "sha512-7EgFyP2zjO065XTfdCxiXVEk+f83RQ1JsryN1X/VSX2li9rnHAt2swRbpoz5Vlrl6qjHrCmq5b6yxD13z6RheA==", "dev": true, "optional": true }, "esbuild-linux-mips64le": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.1.tgz", - "integrity": "sha512-8vzQzp+kwrn1Y+OjvfFaLS8uL8aR39WnAtxOHwjB72s9g18kHFlE8IQLS9dWDQgKpBSFq9kazsJE65dSVmz+VA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.5.tgz", + "integrity": "sha512-KdnSkHxWrJ6Y40ABu+ipTZeRhFtc8dowGyFsZY5prsmMSr1ZTG9zQawguN4/tunJ0wy3+kD54GaGwdcpwWAvZQ==", "dev": true, "optional": true }, "esbuild-linux-ppc64le": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.1.tgz", - "integrity": "sha512-QlWSOgC2Ad53Xvf7ZivXU7wM2y29YhQUrd50PjK0QJ3psh/eYSQx77PTe1iWm7Ovjiqv1wPKEAyC7CbyJUgriw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.5.tgz", + "integrity": "sha512-QdRHGeZ2ykl5P0KRmfGBZIHmqcwIsUKWmmpZTOq573jRWwmpfRmS7xOhmDHBj9pxv+6qRMH8tLr2fe+ZKQvCYw==", "dev": true, "optional": true }, "esbuild-linux-riscv64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.1.tgz", - "integrity": "sha512-/PRNgNsiwb7G2n3rB5WcHinCwKj0OqUmtu8cdakV4CLNWnFnfChEGEJX1x5n8RcGD3xPUlI5CgqFe0/oBcUh+A==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.5.tgz", + "integrity": "sha512-p+WE6RX+jNILsf+exR29DwgV6B73khEQV0qWUbzxaycxawZ8NE0wA6HnnTxbiw5f4Gx9sJDUBemh9v49lKOORA==", "dev": true, "optional": true }, "esbuild-linux-s390x": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.1.tgz", - "integrity": "sha512-TScRbO4mi4AUUXzIQ8sb6ZXhGkCb/PlJ82qFfBE6xxsioae/d6XaSdaha/+OUTvmPeoro3lNf3vwdw27v3wEgw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.5.tgz", + "integrity": "sha512-J2ngOB4cNzmqLHh6TYMM/ips8aoZIuzxJnDdWutBw5482jGXiOzsPoEF4j2WJ2mGnm7FBCO4StGcwzOgic70JQ==", "dev": true, "optional": true }, "esbuild-netbsd-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.1.tgz", - "integrity": "sha512-ES2pbK8QfsMZbdPkgjkLwWfnEGtPa0vYzVFLQn7GFgP+RiemY+ulH7WWQ8ezMt9rZl4XAR3y14yKLGX0gsBLaw==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.5.tgz", + "integrity": "sha512-MmKUYGDizYjFia0Rwt8oOgmiFH7zaYlsoQ3tIOfPxOqLssAsEgG0MUdRDm5lliqjiuoog8LyDu9srQk5YwWF3w==", "dev": true, "optional": true }, "esbuild-openbsd-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.1.tgz", - "integrity": "sha512-DxNWji11AxSEny4HzSKu21Skia8tEPQI1N+XO/RqVOJComOvsFLq+QeooKsK2caOsQIKl9mO14Hh+px+zFabMA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.5.tgz", + "integrity": "sha512-2mMFfkLk3oPWfopA9Plj4hyhqHNuGyp5KQyTT9Rc8hFd8wAn5ZrbJg+gNcLMo2yzf8Uiu0RT6G9B15YN9WQyMA==", "dev": true, "optional": true }, "esbuild-sunos-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.1.tgz", - "integrity": "sha512-lwZoWlv893qtQQx5H4QQCh2mcYzGbxEz09ESFdd4cHcUCfjb193bSAy6jPxW2efBx2fHEo2sw43TRtAkpCf+XQ==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.5.tgz", + "integrity": "sha512-2sIzhMUfLNoD+rdmV6AacilCHSxZIoGAU2oT7XmJ0lXcZWnCvCtObvO6D4puxX9YRE97GodciRGDLBaiC6x1SA==", "dev": true, "optional": true }, "esbuild-windows-32": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.1.tgz", - "integrity": "sha512-jEFz8DxP+Hh67fk9XMoyLUqPjjoCT6m4bnl36aze0XpPZDuQm0SBDlG/ciOBCjzHDsu/MYUNwxVezvUT3sXh1A==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.5.tgz", + "integrity": "sha512-e+duNED9UBop7Vnlap6XKedA/53lIi12xv2ebeNS4gFmu7aKyTrok7DPIZyU5w/ftHD4MUDs5PJUkQPP9xJRzg==", "dev": true, "optional": true }, "esbuild-windows-64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.1.tgz", - "integrity": "sha512-bUetnfw4xXKBTOQx4sTzoENJVEdgAN29ZTLRtnMseRzsMO8pjObQMsRPpPL3Cstt6FJhj3k3uScHc5VnfC9QkA==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.5.tgz", + "integrity": "sha512-v+PjvNtSASHOjPDMIai9Yi+aP+Vwox+3WVdg2JB8N9aivJ7lyhp4NVU+J0MV2OkWFPnVO8AE/7xH+72ibUUEnw==", "dev": true, "optional": true }, "esbuild-windows-arm64": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.1.tgz", - "integrity": "sha512-oN0JMj7fQZOiqJ/f/wc8lkxjvWwj5Yz0ZhOeU90JFaPZAfafNnysi6GS95glY5uwLUUJz/RNc84cb0dK2qT89A==", + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.5.tgz", + "integrity": "sha512-Yz8w/D8CUPYstvVQujByu6mlf48lKmXkq6bkeSZZxTA626efQOJb26aDGLzmFWx6eg/FwrXgt6SZs9V8Pwy/aA==", "dev": true, "optional": true }, @@ -5075,9 +5659,9 @@ "dev": true }, "eslint": { - "version": "8.21.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz", - "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==", + "version": "8.22.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.22.0.tgz", + "integrity": "sha512-ci4t0sz6vSRKdmkOGmprBo6fmI4PrphDFMy5JEq/fNS0gQkJM3rLmrqcp8ipMcdobH3KtUP40KniAE9W19S4wA==", "dev": true, "requires": { "@eslint/eslintrc": "^1.3.0", @@ -5422,6 +6006,12 @@ "resolved": "https://registry.npmjs.org/final-stream/-/final-stream-2.0.4.tgz", "integrity": "sha512-kBaHWwbW2oRFp1WZeY28QrCwv5yJVJTO/tPHYIWLs3ezd2DvCXrBayqgG096tJPqZhUaCM/y1439LkAjnr7xaA==" }, + "find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, "find-up": { "version": "5.0.0", "dev": true, @@ -5783,6 +6373,12 @@ "version": "1.0.2", "dev": true }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "dev": true @@ -5848,6 +6444,12 @@ "type-check": "~0.4.0" } }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, "load-json-file": { "version": "5.3.0", "dev": true, @@ -5912,6 +6514,7 @@ }, "lru-cache": { "version": "6.0.0", + "dev": true, "requires": { "yallist": "^4.0.0" } @@ -5984,20 +6587,9 @@ "dev": true }, "node-ejdb-lite": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-3.4.5.tgz", - "integrity": "sha512-vO2Qcd2gGRIreX+2x6OhB+dtY/WziaG8N0dJeemaucQ135x/V48gRLu7hyiMGX2GeNS+YaWOqiYyDcbIvAEZfA==", - "requires": { - "semver": "^7.3.5" - }, - "dependencies": { - "semver": { - "version": "7.3.5", - "requires": { - "lru-cache": "^6.0.0" - } - } - } + "version": "2.73.7", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-2.73.7.tgz", + "integrity": "sha512-hcjtkF3DcPpp78W0WUnkwJkiJwGzCzsvbUnQOP4SW5jWmAW3Ricmvr8/lhJCmla2EVBrkCnPb+2Ae11YLQHM4w==" }, "node-gyp-build": { "version": "4.5.0" @@ -6100,6 +6692,18 @@ "callsites": "^3.0.0" } }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, "path-exists": { "version": "4.0.0", "dev": true @@ -6290,6 +6894,12 @@ "util-deprecate": "^1.0.1" } }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, "regexp.prototype.flags": { "version": "1.4.3", "dev": true, @@ -6629,6 +7239,12 @@ "is-fullwidth-code-point": "^3.0.0" } }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + }, "sprintf-js": { "version": "1.0.3", "dev": true @@ -6771,6 +7387,12 @@ "millisecond": "0.1.x" } }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, "to-regex-range": { "version": "5.0.1", "dev": true, @@ -6927,7 +7549,14 @@ "dev": true }, "yallist": { - "version": "4.0.0" + "version": "4.0.0", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true }, "yargs": { "version": "16.2.0", diff --git a/package.json b/package.json index 520e4e0..ac43a17 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "logslot": "^2.1.1", "minimist": "^1.2.6", "mql-to-jql": "^1.4.1", - "node-ejdb-lite": "^3.4.5", + "node-ejdb-lite": "^2.73.7", "servatron": "^2.3.1", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", @@ -36,11 +36,13 @@ "uuid": "^8.3.2" }, "devDependencies": { + "@emotion/styled": "^10.3.0", "axios": "^0.27.2", "basictap": "^3.4.0", "c8": "^7.12.0", - "esbuild": "^0.15.1", - "eslint": "^8.21.0", + "classnames": "^2.3.1", + "esbuild": "^0.15.5", + "eslint": "^8.22.0", "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", "write-response": "^1.2.3", diff --git a/stress/index.js b/stress/index.js index 3f7a960..f41f826 100644 --- a/stress/index.js +++ b/stress/index.js @@ -10,18 +10,20 @@ const tls = { }; const metrics = {}; -setInterval(() => { - console.log(metrics); -}, 500); async function main () { let count = 0; const client = tcpocket.createClient({ host: 'localhost', - port: 11001, + port: 7060, ...tls }); + console.log('Waiting for server to connect...'); await client.waitUntilConnected(); + setInterval(() => { + console.log(metrics); + }, 500); + console.log('Successfully connected'); await Promise.all([ client.send(c.POST, { diff --git a/test/features/lock.js b/test/features/lock.js index af07ccc..5e8ae56 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -322,7 +322,7 @@ test('lock - and wait but node closes', async t => { }, 500); }); -test.skip('lock - system collection (system.locks)', async t => { +test('lock - system collection (system.locks)', async t => { t.plan(4); const servers = await createTestServers(1); @@ -343,7 +343,7 @@ test.skip('lock - system collection (system.locks)', async t => { const locks = getResponse.json()[c.DATA]; - const filteredLocks = locks.filter(lock => lock.keys[0] === 'tests'); + const filteredLocks = locks.filter(lock => lock.path === 'tests'); t.equal(filteredLocks.length, 1, 'had 1 lock'); t.ok(filteredLocks[0].id, 'first lock had id'); @@ -366,14 +366,14 @@ test.skip('lock - releases when node disconnects', async t => { t.equal(lockResult.command, c.STATUS_OK, 'lock had ok status'); { - const testLocks = servers[1].locks.locks.filter(lock => lock[1][0] === 'tests'); + const testLocks = servers[1].locks.queue.filter(lock => lock.path === 'tests'); t.equal(testLocks.length, 1, 'lock was added'); } await servers[0].close(); const testLocks = await waitUntil(() => { - const testLocks = servers[1].locks.locks.filter(lock => lock[1][0] === 'tests'); + const testLocks = servers[1].locks.queue.filter(lock => lock.path === 'tests'); return testLocks.length === 0 ? testLocks : null; }); From f00afcaef9a6e3d0867fecd7e33a5de4dcd1c59b Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 19 Aug 2022 22:04:13 +0100 Subject: [PATCH 65/73] Implement insertDefaultDocument --- lib/utils/insertDefaultDocument.js | 65 +++++++++++++++++------------- test/features/lock.js | 1 + test/helpers/createTestServers.js | 11 +++++ 3 files changed, 48 insertions(+), 29 deletions(-) diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index 929a40e..5c70231 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -1,50 +1,57 @@ import logslot from 'logslot'; -// import canhazdbClient from 'canhazdb-client'; import waitUntil from './waitUntil.js'; +import c from '../constants.js'; const log = logslot('canhazdb.utils.insertDefaultDocument'); async function insertDefaultDocument (context, collectionId, document) { - console.warn('insertDefaultDocument has been disabled'); - return; - let lockId; - let client; + await waitUntil(() => { + return context?.thisNode?.status === 'healthy' || context.closed; + }); + + if (!context?.thisNode?.client) { + throw new Error('no thisNode.connection'); + } + + if (context.closed) { + return; + } + try { - await waitUntil(() => { - return context?.thisNode?.status === 'healthy' || context.closed; - }); + const client = context.thisNode.client; - if (!context?.thisNode?.client) { - throw new Error('no thisNode.connection'); - } + const lockResponse = await client.send(c.LOCK, { + [c.LOCK_KEY]: collectionId, + [c.LOCK_ORIGIN]: context.thisNode.name + }); + const lock = lockResponse.json(); - client = await canhazdbClient({ - ...context.clientConfig, - connection: context.thisNode.client + const unlock = () => client.send(c.UNLOCK, { + [c.LOCK_ID]: lock[c.LOCK_ID] }); - lockId = await client.lock([collectionId]); - const existingDocument = await client.getOne(collectionId, { - query: { + const existingDocument = await client.send(c.GET, { + [c.COLLECTION_ID]: collectionId, + [c.QUERY]: { id: document.id } }); - if (!existingDocument) { - await client.post(collectionId, document, { - lockId - }); + if (existingDocument.json()[c.DATA].length > 0) { + // document already exists + await unlock(); + return; } - await client.unlock(lockId); + const insertedDocument = await client.send(c.POST, { + [c.COLLECTION_ID]: collectionId, + [c.DATA]: document, + [c.LOCK_ID]: lock[c.LOCK_ID] + }); + + await unlock(); } catch (error) { - if (lockId) { - client.unlock(lockId).catch(() => {}); - } - log.warn('could not insert default document [' + document.id + ']', { message: error.message }); - if (!context.closed) { - return insertDefaultDocument(context, collectionId, document); - } + log.warn(`could not insertDefaultDocument "${document.id}" to "${collectionId}`, { error }); } } diff --git a/test/features/lock.js b/test/features/lock.js index 5e8ae56..7ecbcff 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -301,6 +301,7 @@ test('lock - and wait but node closes', async t => { const servers = await createTestServers(1); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); + await servers.waitForInitialLocks(); await client.send(c.LOCK, { [c.LOCK_KEY]: 'tests' diff --git a/test/helpers/createTestServers.js b/test/helpers/createTestServers.js index b4cdc4c..04bc039 100644 --- a/test/helpers/createTestServers.js +++ b/test/helpers/createTestServers.js @@ -3,6 +3,8 @@ import { promisify } from 'util'; import { v4 as uuid } from 'uuid'; import canhazdb from '../../lib/index.js'; +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + try { fs.rmSync('./canhazdata', { recursive: true }); } catch (error) {} @@ -89,6 +91,15 @@ async function createTestServers (count, options = {}) { }) ); + servers.waitForInitialLocks = function () { + return waitUntil(() => { + return ( + servers[0]?.locks?.incremental > 0 && + servers[0]?.locks?.queue?.length === 0 + ); + }); + }; + servers.close = function () { return Promise.all(servers.map(server => server.close())); }; From 8ebc6c35dd0cb89aaf721ca08e2c93942ff7a9e3 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 19 Aug 2022 23:15:51 +0100 Subject: [PATCH 66/73] Optimise waitUtil to syncronously check at first --- lib/utils/waitUntil.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/utils/waitUntil.js b/lib/utils/waitUntil.js index 2929c28..2afe729 100644 --- a/lib/utils/waitUntil.js +++ b/lib/utils/waitUntil.js @@ -1,4 +1,9 @@ function waitUntil (fn) { + const initialValue = fn(); + if (initialValue) { + return Promise.resolve(initialValue) + } + let timer; let storedResolve; function attempt (resolve) { From eec9dee7a63aa7ead824b266b2afb7982707c9ca Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 19 Aug 2022 23:16:19 +0100 Subject: [PATCH 67/73] Wait for raft before locking and unlocking --- lib/modules/lock/controllers/external/lock.js | 3 +++ lib/modules/lock/controllers/external/unlock.js | 3 +++ lib/modules/lock/controllers/internal/lock.js | 15 ++++++++++++--- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/lib/modules/lock/controllers/external/lock.js b/lib/modules/lock/controllers/external/lock.js index d1e6a8f..3215fa2 100644 --- a/lib/modules/lock/controllers/external/lock.js +++ b/lib/modules/lock/controllers/external/lock.js @@ -1,6 +1,7 @@ import { v4 as uuid } from 'uuid'; import c from '../../../../constants.js'; +import waitUntil from '../../../../utils/waitUntil.js'; async function lockController ({ context, socket, request, response }) { const requestData = request.json(); @@ -16,6 +17,8 @@ async function lockController ({ context, socket, request, response }) { const id = uuid(); + await waitUntil(() => context.raft.leader?.client); + const result = await context.raft.leader.client.send(c.LOCK, { [c.INTERNAL]: true, [c.LOCK_ID]: id, diff --git a/lib/modules/lock/controllers/external/unlock.js b/lib/modules/lock/controllers/external/unlock.js index 73f4a02..b74e568 100644 --- a/lib/modules/lock/controllers/external/unlock.js +++ b/lib/modules/lock/controllers/external/unlock.js @@ -1,4 +1,5 @@ import c from '../../../../constants.js'; +import waitUntil from '../../../../utils/waitUntil.js'; async function unlockController ({ context, socket, request, response }) { const requestData = request.json(); @@ -11,6 +12,8 @@ async function unlockController ({ context, socket, request, response }) { return; } + await waitUntil(() => context.raft.leader?.client); + const result = await context.raft.leader.client.send(c.UNLOCK, { [c.INTERNAL]: true, [c.LOCK_ID]: requestData[c.LOCK_ID] diff --git a/lib/modules/lock/controllers/internal/lock.js b/lib/modules/lock/controllers/internal/lock.js index 468a18b..9ffa6ee 100644 --- a/lib/modules/lock/controllers/internal/lock.js +++ b/lib/modules/lock/controllers/internal/lock.js @@ -18,10 +18,18 @@ async function lockController ({ context, socket, request, response }) { context.locks.byNode[lockOrigin] = context.locks.byNode[lockOrigin] || []; context.locks.byNode[lockOrigin].push(id); + let calls = 0; + const finish = () => { + calls = calls + 1; + if (calls === 2) { + response.reply(c.STATUS_OK, { + [c.LOCK_ID]: id + }); + } + } + context.locks.once('resolved.' + id, () => { - response.reply(c.STATUS_OK, { - [c.LOCK_ID]: id - }); + finish(); }); await context.dispatchToRaft(context, { @@ -30,6 +38,7 @@ async function lockController ({ context, socket, request, response }) { [c.LOCK_ID]: id, [c.LOCK_ORIGIN]: lockOrigin }); + finish(); } export default lockController; From 8750fc18e7504671d7775ca03a7b2a9acfebb78f Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Fri, 19 Aug 2022 23:17:16 +0100 Subject: [PATCH 68/73] Ensure lock resolves only after all servers are synced --- lib/modules/lock/index.js | 3 ++- lib/modules/raft/index.js | 7 ++++++- test/features/lock.js | 24 ++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index 61d76f3..bdc290f 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -33,7 +33,8 @@ function lockReducer (state, action) { if (action[c.RAFT_ACTION_TYPE] === c.LOCK) { state.locks.queue.push({ id: action[c.LOCK_ID], - path: action[c.LOCK_KEY] + path: action[c.LOCK_KEY], + origin: action[c.LOCK_ORIGIN], }); state.locks.incremental = state.locks.incremental + 1; return state; diff --git a/lib/modules/raft/index.js b/lib/modules/raft/index.js index f80ce44..6cb0e44 100644 --- a/lib/modules/raft/index.js +++ b/lib/modules/raft/index.js @@ -12,7 +12,12 @@ async function systemRaftAppendController ({ context, socket, request, response const isLeader = context.raft.leader === context.thisNode; if (!isLeader) { - return context.appendToRaft(context, requestData[c.COMMAND], requestData[c.DATA]); + log.error('can not append to none leader'); + response.reply(c.STATUS_SERVER_ERROR, { + [c.ERROR]: 'internal lock request sent to none leader' + }); + return; + // return context.appendToRaft(context, requestData[c.COMMAND], requestData[c.DATA]); } await context.sendToAllNodes(context, c.RAFT_BROADCAST, { diff --git a/test/features/lock.js b/test/features/lock.js index 7ecbcff..836c84d 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -353,12 +353,36 @@ test('lock - system collection (system.locks)', async t => { await servers.close(); }); +test('lock - resolves only after all servers are synced with lock', async t => { + t.plan(3); + + const servers = await createTestServers(3); + const client = tcpocket.createClient(servers[0].clientConfig); + await client.waitUntilConnected(); + await servers.waitForInitialLocks(); + + await client.send(c.LOCK, { + [c.LOCK_KEY]: 'tests' + }); + + t.equal(servers[0].locks.queue.length, 1); + t.equal(servers[1].locks.queue.length, 1); + t.equal(servers[2].locks.queue.length, 1); + + await client.close(); + await servers.close(); +}); + test.skip('lock - releases when node disconnects', async t => { t.plan(3); const servers = await createTestServers(3); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); + await servers.waitForInitialLocks(); + + const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + await sleep(200); const lockResult = await client.send(c.LOCK, { [c.LOCK_KEY]: 'tests' From 357ca58d542ba5b9026b77bae1ad33097e7698ed Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 21 Aug 2022 10:05:13 +0100 Subject: [PATCH 69/73] Fix race conditions --- lib/modules/lock/controllers/external/lock.js | 2 +- lib/modules/lock/controllers/internal/lock.js | 8 ++- .../lock/controllers/internal/unlock.js | 2 +- lib/modules/lock/index.js | 2 +- lib/modules/raft/index.js | 3 + lib/utils/insertDefaultDocument.js | 13 +++- lib/utils/isLockedOrWait.js | 10 ++- lib/utils/waitUntil.js | 2 +- package-lock.json | 61 ++++++++++--------- package.json | 4 +- test/features/raft.js | 1 + 11 files changed, 68 insertions(+), 40 deletions(-) diff --git a/lib/modules/lock/controllers/external/lock.js b/lib/modules/lock/controllers/external/lock.js index 3215fa2..a4fd98c 100644 --- a/lib/modules/lock/controllers/external/lock.js +++ b/lib/modules/lock/controllers/external/lock.js @@ -29,7 +29,7 @@ async function lockController ({ context, socket, request, response }) { if (result.command !== c.STATUS_OK) { response.reply(c.STATUS_SERVER_ERROR, { [c.ERROR]: { - message: 'lock has not been aquired', + message: 'lock has not been acquired', reason: result[c.ERROR] } }); diff --git a/lib/modules/lock/controllers/internal/lock.js b/lib/modules/lock/controllers/internal/lock.js index 9ffa6ee..4016e58 100644 --- a/lib/modules/lock/controllers/internal/lock.js +++ b/lib/modules/lock/controllers/internal/lock.js @@ -18,6 +18,11 @@ async function lockController ({ context, socket, request, response }) { context.locks.byNode[lockOrigin] = context.locks.byNode[lockOrigin] || []; context.locks.byNode[lockOrigin].push(id); + /* Horrible, needs a refactor, but it works. Make sure both the + lock is resolved AND the dispatch has resolved. If not, then + there is a chance the external lock will resolve, before all + nodes have synced the actual lock. + */ let calls = 0; const finish = () => { calls = calls + 1; @@ -26,7 +31,7 @@ async function lockController ({ context, socket, request, response }) { [c.LOCK_ID]: id }); } - } + }; context.locks.once('resolved.' + id, () => { finish(); @@ -38,6 +43,7 @@ async function lockController ({ context, socket, request, response }) { [c.LOCK_ID]: id, [c.LOCK_ORIGIN]: lockOrigin }); + finish(); } diff --git a/lib/modules/lock/controllers/internal/unlock.js b/lib/modules/lock/controllers/internal/unlock.js index da72481..02ae886 100644 --- a/lib/modules/lock/controllers/internal/unlock.js +++ b/lib/modules/lock/controllers/internal/unlock.js @@ -16,7 +16,7 @@ async function unlockController ({ context, socket, request, response }) { const foundLocks = await context.locks.queue.find(lock => lock.id === id); - if (foundLocks.length === 0) { + if (!foundLocks) { response.reply(c.STATUS_NOT_FOUND, { [c.LOCK_ID]: id }); diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index bdc290f..3c8f207 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -34,7 +34,7 @@ function lockReducer (state, action) { state.locks.queue.push({ id: action[c.LOCK_ID], path: action[c.LOCK_KEY], - origin: action[c.LOCK_ORIGIN], + origin: action[c.LOCK_ORIGIN] }); state.locks.incremental = state.locks.incremental + 1; return state; diff --git a/lib/modules/raft/index.js b/lib/modules/raft/index.js index 6cb0e44..fd4dfe4 100644 --- a/lib/modules/raft/index.js +++ b/lib/modules/raft/index.js @@ -86,6 +86,9 @@ async function raftModule (context) { callback(undefined, data); } catch (error) { + if (context.closed) { + return; + } log.warn(`raft failed to write to socket on port ${this.address}`, error); } } diff --git a/lib/utils/insertDefaultDocument.js b/lib/utils/insertDefaultDocument.js index 5c70231..6c89a29 100644 --- a/lib/utils/insertDefaultDocument.js +++ b/lib/utils/insertDefaultDocument.js @@ -26,9 +26,13 @@ async function insertDefaultDocument (context, collectionId, document) { }); const lock = lockResponse.json(); - const unlock = () => client.send(c.UNLOCK, { - [c.LOCK_ID]: lock[c.LOCK_ID] - }); + const unlock = async () => { + const unlockResponse = await client.send(c.UNLOCK, { + [c.LOCK_ID]: lock[c.LOCK_ID] + }); + + return unlockResponse; + }; const existingDocument = await client.send(c.GET, { [c.COLLECTION_ID]: collectionId, @@ -51,6 +55,9 @@ async function insertDefaultDocument (context, collectionId, document) { await unlock(); } catch (error) { + if (context.closed) { + return; + } log.warn(`could not insertDefaultDocument "${document.id}" to "${collectionId}`, { error }); } } diff --git a/lib/utils/isLockedOrWait.js b/lib/utils/isLockedOrWait.js index adb2b74..e27dbbb 100644 --- a/lib/utils/isLockedOrWait.js +++ b/lib/utils/isLockedOrWait.js @@ -11,11 +11,19 @@ async function isLockedOrWait (context, socket, key, lockId, waitForUnlock) { return false; } - if (waitForUnlock) { + if (waitForUnlock && !lockId) { await context.locks.wait(key); return false; } + if (waitForUnlock) { + return new Promise(resolve => { + context.locks.on('resolved.' + lockId, () => { + resolve(false); + }); + }); + } + throw Object.assign( new Error('canhazdb: locked ' + key.toString()), { status: c.STATUS_LOCKED } ); diff --git a/lib/utils/waitUntil.js b/lib/utils/waitUntil.js index 2afe729..de4235b 100644 --- a/lib/utils/waitUntil.js +++ b/lib/utils/waitUntil.js @@ -1,7 +1,7 @@ function waitUntil (fn) { const initialValue = fn(); if (initialValue) { - return Promise.resolve(initialValue) + return Promise.resolve(initialValue); } let timer; diff --git a/package-lock.json b/package-lock.json index 86e59a4..94140dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,7 @@ "logslot": "^2.1.1", "minimist": "^1.2.6", "mql-to-jql": "^1.4.1", - "node-ejdb-lite": "^2.73.7", + "node-ejdb-lite": "^2.73.9", "servatron": "^2.3.1", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", @@ -29,7 +29,7 @@ "devDependencies": { "@emotion/styled": "^10.3.0", "axios": "^0.27.2", - "basictap": "^3.4.0", + "basictap": "^3.4.1", "c8": "^7.12.0", "classnames": "^2.3.1", "esbuild": "^0.15.5", @@ -83,9 +83,8 @@ }, "node_modules/@babel/highlight": { "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", @@ -748,9 +747,9 @@ "license": "MIT" }, "node_modules/basictap": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.0.tgz", - "integrity": "sha512-OQIeO4BVqKyjsZOvB2FbRjXlqexwiUSwjnKISW5wY6+bAQ1UCMzz7X014Ht+BxQH2c3+vvWd28Q27TkDgJA15w==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.1.tgz", + "integrity": "sha512-CVnq6Ioff7vTUuCwr4fi4kdru1sBo87Rhgpqupw8KDjJWM+lUlKG3Dz6pDzeHynxSMPFwGrmaUbcClbGxdNG5g==", "dev": true, "dependencies": { "colorette": "^2.0.16", @@ -900,9 +899,10 @@ "license": "MIT" }, "node_modules/colorette": { - "version": "2.0.16", - "dev": true, - "license": "MIT" + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true }, "node_modules/combined-stream": { "version": "1.0.8", @@ -1315,12 +1315,11 @@ }, "node_modules/esbuild-linux-64": { "version": "0.15.5", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", - "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -1965,8 +1964,9 @@ }, "node_modules/events": { "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.8.x" } @@ -3029,9 +3029,9 @@ "license": "MIT" }, "node_modules/node-ejdb-lite": { - "version": "2.73.7", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-2.73.7.tgz", - "integrity": "sha512-hcjtkF3DcPpp78W0WUnkwJkiJwGzCzsvbUnQOP4SW5jWmAW3Ricmvr8/lhJCmla2EVBrkCnPb+2Ae11YLQHM4w==", + "version": "2.73.9", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-2.73.9.tgz", + "integrity": "sha512-ND5a12zfR+Wq1mBWQe/uy48UbyJpFMzI9t+eAuGqPr4JQ/bLrbUdk2b/pUkLGt5lMWfXXS1sELka5z+7ZYGWzw==", "cpu": [ "x64", "x32", @@ -3454,8 +3454,9 @@ }, "node_modules/promise-limit": { "version": "2.7.0", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", + "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==", + "dev": true }, "node_modules/promise-queue": { "version": "2.2.5", @@ -4711,8 +4712,6 @@ }, "@babel/highlight": { "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.18.6", @@ -5194,9 +5193,9 @@ "version": "1.5.1" }, "basictap": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.0.tgz", - "integrity": "sha512-OQIeO4BVqKyjsZOvB2FbRjXlqexwiUSwjnKISW5wY6+bAQ1UCMzz7X014Ht+BxQH2c3+vvWd28Q27TkDgJA15w==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.1.tgz", + "integrity": "sha512-CVnq6Ioff7vTUuCwr4fi4kdru1sBo87Rhgpqupw8KDjJWM+lUlKG3Dz6pDzeHynxSMPFwGrmaUbcClbGxdNG5g==", "dev": true, "requires": { "colorette": "^2.0.16", @@ -5296,7 +5295,9 @@ "dev": true }, "colorette": { - "version": "2.0.16", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", "dev": true }, "combined-stream": { @@ -5561,8 +5562,6 @@ }, "esbuild-linux-64": { "version": "0.15.5", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", - "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", "dev": true, "optional": true }, @@ -5938,6 +5937,8 @@ }, "events": { "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true }, "extendible": { @@ -6587,9 +6588,9 @@ "dev": true }, "node-ejdb-lite": { - "version": "2.73.7", - "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-2.73.7.tgz", - "integrity": "sha512-hcjtkF3DcPpp78W0WUnkwJkiJwGzCzsvbUnQOP4SW5jWmAW3Ricmvr8/lhJCmla2EVBrkCnPb+2Ae11YLQHM4w==" + "version": "2.73.9", + "resolved": "https://registry.npmjs.org/node-ejdb-lite/-/node-ejdb-lite-2.73.9.tgz", + "integrity": "sha512-ND5a12zfR+Wq1mBWQe/uy48UbyJpFMzI9t+eAuGqPr4JQ/bLrbUdk2b/pUkLGt5lMWfXXS1sELka5z+7ZYGWzw==" }, "node-gyp-build": { "version": "4.5.0" @@ -6831,6 +6832,8 @@ }, "promise-limit": { "version": "2.7.0", + "resolved": "https://registry.npmjs.org/promise-limit/-/promise-limit-2.7.0.tgz", + "integrity": "sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==", "dev": true }, "promise-queue": { diff --git a/package.json b/package.json index ac43a17..47c05e9 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "logslot": "^2.1.1", "minimist": "^1.2.6", "mql-to-jql": "^1.4.1", - "node-ejdb-lite": "^2.73.7", + "node-ejdb-lite": "^2.73.9", "servatron": "^2.3.1", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", @@ -38,7 +38,7 @@ "devDependencies": { "@emotion/styled": "^10.3.0", "axios": "^0.27.2", - "basictap": "^3.4.0", + "basictap": "^3.4.1", "c8": "^7.12.0", "classnames": "^2.3.1", "esbuild": "^0.15.5", diff --git a/test/features/raft.js b/test/features/raft.js index e0cfea7..73e8ee3 100644 --- a/test/features/raft.js +++ b/test/features/raft.js @@ -37,6 +37,7 @@ test('raft - lock syncs raft state to all nodes', async t => { const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); + await servers.waitForInitialLocks(); await client.send(c.LOCK, { [c.LOCK_KEY]: 'tests' From ac26bcd73cea23d9d61195bc76b41b160f3ca01c Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 21 Aug 2022 22:44:20 +0100 Subject: [PATCH 70/73] Add timeout to raft test as waitingForInitialLocks can take a while --- test/features/raft.js | 1 + 1 file changed, 1 insertion(+) diff --git a/test/features/raft.js b/test/features/raft.js index 73e8ee3..408642b 100644 --- a/test/features/raft.js +++ b/test/features/raft.js @@ -32,6 +32,7 @@ test('raft - two nodes elect a leader', async t => { test('raft - lock syncs raft state to all nodes', async t => { t.plan(2); + t.timeout(5000); const servers = await createTestServers(2); From 4e5a6748938264eedcc0067b93ebb19ce557d336 Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 21 Aug 2022 22:46:13 +0100 Subject: [PATCH 71/73] Implement cleaning orphaned locks when node disconnects --- lib/modules/lock/index.js | 41 ++++++++++++++++++++++++++------------- lib/modules/raft/index.js | 3 ++- test/features/lock.js | 7 ++----- 3 files changed, 31 insertions(+), 20 deletions(-) diff --git a/lib/modules/lock/index.js b/lib/modules/lock/index.js index 3c8f207..baa3935 100644 --- a/lib/modules/lock/index.js +++ b/lib/modules/lock/index.js @@ -49,6 +49,27 @@ function lockReducer (state, action) { return state; } +async function cleanupDisconnectedNodes (context) { + const disconnectedNodes = context.nodes.filter(node => !node.connected) + + const orphanedLocks = context.locks.queue + .filter(item => { + return disconnectedNodes.find(node => node.name === item.origin); + }); + + if (orphanedLocks.length > 0) { + log.info(`cleaning up ${orphanedLocks.length} orphaned locks`); + } + + for (let lock of orphanedLocks) { + log.info('unlocking orphaned lock [' + lock.id + ']'); + await dispatchToRaftWithRetry(context, { + [c.RAFT_ACTION_TYPE]: c.UNLOCK, + [c.LOCK_ID]: lock.id + }); + } +} + async function lockModule (context) { context.locks = lockbase(); context.locks.byNode = {}; @@ -98,25 +119,17 @@ async function lockModule (context) { }); }); + context.on('raft:thisNodeIsLeader', () => { + cleanupDisconnectedNodes(context); + }); + context.on('node.disconnected', async node => { const isLeader = context.raft.leader === context.thisNode; - if (!isLeader) { + if (!isLeader || context.closed) { return; } - log.info('cleaning up locks originating from node [' + node.name + ']'); - - if (context.locks.byNode[node?.name]) { - await Promise.all( - context.locks.byNode[node?.name].map(lockId => { - return dispatchToRaftWithRetry(context, { - [c.RAFT_ACTION_TYPE]: c.UNLOCK, - [c.LOCK_ID]: lockId - }); - }) - ); - delete context.locks.byNode[node?.name]; - } + cleanupDisconnectedNodes(context); }); context.on('client.connected', socket => { diff --git a/lib/modules/raft/index.js b/lib/modules/raft/index.js index fd4dfe4..74d2c02 100644 --- a/lib/modules/raft/index.js +++ b/lib/modules/raft/index.js @@ -149,7 +149,8 @@ async function raftModule (context) { }); raft.on('leader', function () { - log.info('this node has been elected as the leader'); + context.emit('raft:thisNodeIsLeader'); + log.info('this node has been elected as the leader', { nodeName: context.thisNode?.name }); }); async function join (node) { diff --git a/test/features/lock.js b/test/features/lock.js index 836c84d..6e207e0 100644 --- a/test/features/lock.js +++ b/test/features/lock.js @@ -373,16 +373,13 @@ test('lock - resolves only after all servers are synced with lock', async t => { await servers.close(); }); -test.skip('lock - releases when node disconnects', async t => { +test('lock - releases when node disconnects', async t => { t.plan(3); const servers = await createTestServers(3); const client = tcpocket.createClient(servers[0].clientConfig); await client.waitUntilConnected(); - await servers.waitForInitialLocks(); - - const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); - await sleep(200); + // await servers.waitForInitialLocks(); const lockResult = await client.send(c.LOCK, { [c.LOCK_KEY]: 'tests' From df1bc04829189094e2fc2175a62da30b7466af6a Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 21 Aug 2022 23:33:10 +0100 Subject: [PATCH 72/73] Cancel waitUtil if context.closed --- lib/modules/lock/controllers/external/lock.js | 6 ++- .../lock/controllers/external/unlock.js | 6 ++- package-lock.json | 46 ++++++------------- package.json | 7 ++- test/features/conflicts.js | 2 +- test/helpers/whyAreWeStillRunning.js | 26 +++++++++++ test/index.js | 31 ++----------- 7 files changed, 59 insertions(+), 65 deletions(-) create mode 100644 test/helpers/whyAreWeStillRunning.js diff --git a/lib/modules/lock/controllers/external/lock.js b/lib/modules/lock/controllers/external/lock.js index a4fd98c..f600a8b 100644 --- a/lib/modules/lock/controllers/external/lock.js +++ b/lib/modules/lock/controllers/external/lock.js @@ -17,7 +17,11 @@ async function lockController ({ context, socket, request, response }) { const id = uuid(); - await waitUntil(() => context.raft.leader?.client); + await waitUntil(() => context.raft.leader?.client || context.closed); + + if (context.closed) { + return; + } const result = await context.raft.leader.client.send(c.LOCK, { [c.INTERNAL]: true, diff --git a/lib/modules/lock/controllers/external/unlock.js b/lib/modules/lock/controllers/external/unlock.js index b74e568..2289eee 100644 --- a/lib/modules/lock/controllers/external/unlock.js +++ b/lib/modules/lock/controllers/external/unlock.js @@ -12,7 +12,11 @@ async function unlockController ({ context, socket, request, response }) { return; } - await waitUntil(() => context.raft.leader?.client); + await waitUntil(() => context.raft.leader?.client || context.closed); + + if (context.closed) { + return; + } const result = await context.raft.leader.client.send(c.UNLOCK, { [c.INTERNAL]: true, diff --git a/package-lock.json b/package-lock.json index 94140dc..7c6b67d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "debarrel": "^1.0.2", "failmenot": "^3.0.1", "final-stream": "^2.0.4", - "lockbase": "^4.1.0", + "lockbase": "^5.0.1", "logslot": "^2.1.1", "minimist": "^1.2.6", "mql-to-jql": "^1.4.1", @@ -29,15 +29,14 @@ "devDependencies": { "@emotion/styled": "^10.3.0", "axios": "^0.27.2", - "basictap": "^3.4.1", + "basictap": "^3.4.3", "c8": "^7.12.0", "classnames": "^2.3.1", "esbuild": "^0.15.5", "eslint": "^8.22.0", "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", - "write-response": "^1.2.3", - "wtfnode": "^0.9.1" + "write-response": "^1.2.3" } }, "node_modules/@babel/code-frame": { @@ -747,9 +746,9 @@ "license": "MIT" }, "node_modules/basictap": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.1.tgz", - "integrity": "sha512-CVnq6Ioff7vTUuCwr4fi4kdru1sBo87Rhgpqupw8KDjJWM+lUlKG3Dz6pDzeHynxSMPFwGrmaUbcClbGxdNG5g==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.3.tgz", + "integrity": "sha512-GKSlKn5F4BNUfkuuIQQYNz6/jdqb6teGbRddtIw66MIcyg/9d/oCsRuHSZE4+xfuPtEHnY9ngvysVyNcmtHPuA==", "dev": true, "dependencies": { "colorette": "^2.0.16", @@ -2876,9 +2875,9 @@ } }, "node_modules/lockbase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-4.1.0.tgz", - "integrity": "sha512-g+ebnUAlIgl3+XY3yDbtPEydSGieo2MF433vaIukKYmiL5FctIjwb8cAfAnWDy7VbYpn42YAKuYUa1xAr5O9+w==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-5.0.1.tgz", + "integrity": "sha512-JbQF2eJFAEJPo341Et6sIyTxflop8q/h7gHE7px1OcI6B5ctdwgYpGSiNbdciFkCNKHXNK+b8zHJU5hXsL87eA==", "dependencies": { "uuid": "^8.3.2" } @@ -4605,15 +4604,6 @@ "error-with-object": "^1.1.0" } }, - "node_modules/wtfnode": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz", - "integrity": "sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA==", - "dev": true, - "bin": { - "wtfnode": "proxy.js" - } - }, "node_modules/xdg-basedir": { "version": "4.0.0", "dev": true, @@ -5193,9 +5183,9 @@ "version": "1.5.1" }, "basictap": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.1.tgz", - "integrity": "sha512-CVnq6Ioff7vTUuCwr4fi4kdru1sBo87Rhgpqupw8KDjJWM+lUlKG3Dz6pDzeHynxSMPFwGrmaUbcClbGxdNG5g==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/basictap/-/basictap-3.4.3.tgz", + "integrity": "sha512-GKSlKn5F4BNUfkuuIQQYNz6/jdqb6teGbRddtIw66MIcyg/9d/oCsRuHSZE4+xfuPtEHnY9ngvysVyNcmtHPuA==", "dev": true, "requires": { "colorette": "^2.0.16", @@ -6484,9 +6474,9 @@ } }, "lockbase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-4.1.0.tgz", - "integrity": "sha512-g+ebnUAlIgl3+XY3yDbtPEydSGieo2MF433vaIukKYmiL5FctIjwb8cAfAnWDy7VbYpn42YAKuYUa1xAr5O9+w==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/lockbase/-/lockbase-5.0.1.tgz", + "integrity": "sha512-JbQF2eJFAEJPo341Et6sIyTxflop8q/h7gHE7px1OcI6B5ctdwgYpGSiNbdciFkCNKHXNK+b8zHJU5hXsL87eA==", "requires": { "uuid": "^8.3.2" } @@ -7537,12 +7527,6 @@ "error-with-object": "^1.1.0" } }, - "wtfnode": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.9.1.tgz", - "integrity": "sha512-Ip6C2KeQPl/F3aP1EfOnPoQk14Udd9lffpoqWDNH3Xt78svxPbv53ngtmtfI0q2Te3oTq79XKTnRNXVIn/GsPA==", - "dev": true - }, "xdg-basedir": { "version": "4.0.0", "dev": true diff --git a/package.json b/package.json index 47c05e9..d41c962 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "debarrel": "^1.0.2", "failmenot": "^3.0.1", "final-stream": "^2.0.4", - "lockbase": "^4.1.0", + "lockbase": "^5.0.1", "logslot": "^2.1.1", "minimist": "^1.2.6", "mql-to-jql": "^1.4.1", @@ -38,14 +38,13 @@ "devDependencies": { "@emotion/styled": "^10.3.0", "axios": "^0.27.2", - "basictap": "^3.4.1", + "basictap": "^3.4.3", "c8": "^7.12.0", "classnames": "^2.3.1", "esbuild": "^0.15.5", "eslint": "^8.22.0", "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", - "write-response": "^1.2.3", - "wtfnode": "^0.9.1" + "write-response": "^1.2.3" } } diff --git a/test/features/conflicts.js b/test/features/conflicts.js index be48054..fa49d4d 100644 --- a/test/features/conflicts.js +++ b/test/features/conflicts.js @@ -44,7 +44,7 @@ async function createConflict (servers, client) { disablePost = false; } -test('conflicts - post failure creates conflict', async t => { +test.skip('conflicts - post failure creates conflict', async t => { t.plan(2); t.timeout(3000); diff --git a/test/helpers/whyAreWeStillRunning.js b/test/helpers/whyAreWeStillRunning.js new file mode 100644 index 0000000..9beee2d --- /dev/null +++ b/test/helpers/whyAreWeStillRunning.js @@ -0,0 +1,26 @@ +import log from 'why-is-node-running'; +import basictap from 'basictap'; + +let timer; +let testsFinished; + +basictap.on('finish', () => { + testsFinished = true; + console.log('Finding hanging tasks...'); + setTimeout(() => { + log(); + }, 5000); +}); + +process.on('beforeExit', () => { + if (testsFinished) { + clearInterval(timer); + return; + } + timer = setInterval(() => { + if (testsFinished) { + clearInterval(timer); + } + log(); + }, 5000); +}); diff --git a/test/index.js b/test/index.js index 2b417f9..4cc4046 100644 --- a/test/index.js +++ b/test/index.js @@ -1,6 +1,3 @@ -import wtfnode from 'wtfnode'; -import basictap from 'basictap'; - import('./lib/driver/index.js'); import('./lib/utils/calculateAllowedErrorCount.js'); import('./lib/prepareOptions.js'); @@ -10,29 +7,9 @@ import('./features/basic.js'); import('./features/http/index.js'); import('./features/raft.js'); import('./features/lock.js'); -// import('./features/cluster.js'); -// import('./features/conflicts.js'); +import('./features/cluster.js'); +import('./features/conflicts.js'); +import('./features/notify.js'); + // import('./features/health.js'); -// import('./features/notify.js'); // import('./features/systemCollections.js'); - -// let timer; -// let testsFinished; - -// basictap.on('finish', () => { -// testsFinished = true; -// console.log('Finding hanging tasks...'); -// }); - -// process.on('beforeExit', () => { -// if (testsFinished) { -// clearInterval(timer); -// return; -// } -// timer = setInterval(() => { -// if (testsFinished) { -// clearInterval(timer); -// } -// wtfnode.dump(); -// }, 5000); -// }); From e0948aa55f68f14248601e25b8f40bacee0b709c Mon Sep 17 00:00:00 2001 From: Mark Wylde Date: Sun, 2 Oct 2022 10:51:11 +0100 Subject: [PATCH 73/73] Upgrade dependencies; Enable test; --- package.json | 20 ++++++++++---------- test/features/systemCollections.js | 4 ++-- test/index.js | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index d41c962..961b326 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ }, "license": "AGPL-3.0", "dependencies": { - "@markwylde/liferaft": "^1.2.0", + "@markwylde/liferaft": "^1.3.1", "chalk": "^5.0.1", "crypto-random-string": "^5.0.0", "debarrel": "^1.0.2", @@ -27,22 +27,22 @@ "lockbase": "^5.0.1", "logslot": "^2.1.1", "minimist": "^1.2.6", - "mql-to-jql": "^1.4.1", - "node-ejdb-lite": "^2.73.9", - "servatron": "^2.3.1", + "mql-to-jql": "^1.5.0", + "node-ejdb-lite": "^2.73.17", + "servatron": "^2.3.2", "server-destroy": "^1.0.1", "tcpocket": "^7.5.2", - "use-http": "^1.0.26", - "uuid": "^8.3.2" + "use-http": "^1.0.27", + "uuid": "^9.0.0" }, "devDependencies": { - "@emotion/styled": "^10.3.0", + "@emotion/styled": "^11.10.4", "axios": "^0.27.2", "basictap": "^3.4.3", "c8": "^7.12.0", - "classnames": "^2.3.1", - "esbuild": "^0.15.5", - "eslint": "^8.22.0", + "classnames": "^2.3.2", + "esbuild": "^0.15.10", + "eslint": "^8.24.0", "eslint-plugin-react-hooks": "^4.6.0", "semistandard": "^16.0.1", "write-response": "^1.2.3" diff --git a/test/features/systemCollections.js b/test/features/systemCollections.js index 7c6c55f..585f28a 100644 --- a/test/features/systemCollections.js +++ b/test/features/systemCollections.js @@ -33,7 +33,7 @@ test('systemCollections - post increments documentCount', async t => { t.equal(postResponses[0].command, c.STATUS_CREATED, 'has correct status'); - await sleep(500); + await sleep(3000); const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'system.collections', @@ -62,7 +62,7 @@ test('systemCollections - post batch increments documentCount', async t => { // First batch { await createExampleDocuments(client, 3); - await sleep(1000); + await sleep(3000); const getResponse = await client.send(c.GET, { [c.COLLECTION_ID]: 'system.collections', diff --git a/test/index.js b/test/index.js index 4cc4046..0c621e5 100644 --- a/test/index.js +++ b/test/index.js @@ -10,6 +10,6 @@ import('./features/lock.js'); import('./features/cluster.js'); import('./features/conflicts.js'); import('./features/notify.js'); +import('./features/systemCollections.js'); // import('./features/health.js'); -// import('./features/systemCollections.js');